[INFO] fetching crate evalit 0.2.0-beta.0... [INFO] testing evalit-0.2.0-beta.0 against master#cdb45c87e2cd43495379f7e867e3cc15dcee9f93 for pr-145838-1 [INFO] extracting crate evalit 0.2.0-beta.0 into /workspace/builds/worker-1-tc1/source [INFO] started tweaking crates.io crate evalit 0.2.0-beta.0 [INFO] removed 0 missing examples [INFO] removed 0 missing tests [INFO] finished tweaking crates.io crate evalit 0.2.0-beta.0 [INFO] tweaked toml for crates.io crate evalit 0.2.0-beta.0 written to /workspace/builds/worker-1-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate evalit 0.2.0-beta.0 on toolchain cdb45c87e2cd43495379f7e867e3cc15dcee9f93 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate evalit 0.2.0-beta.0 already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded petgraph v0.8.1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] d0a2516c6b3307c30aff11052fe252cec15b673822385d111779bbc7fce3efca [INFO] running `Command { std: "docker" "start" "-a" "d0a2516c6b3307c30aff11052fe252cec15b673822385d111779bbc7fce3efca", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "d0a2516c6b3307c30aff11052fe252cec15b673822385d111779bbc7fce3efca", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d0a2516c6b3307c30aff11052fe252cec15b673822385d111779bbc7fce3efca", kill_on_drop: false }` [INFO] [stdout] d0a2516c6b3307c30aff11052fe252cec15b673822385d111779bbc7fce3efca [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 851abb0cf7ef0bdb58f48a9f4eb120eee59100b9359cb9a66df13e96f931ef1f [INFO] running `Command { std: "docker" "start" "-a" "851abb0cf7ef0bdb58f48a9f4eb120eee59100b9359cb9a66df13e96f931ef1f", kill_on_drop: false }` [INFO] [stderr] Compiling memchr v2.7.4 [INFO] [stderr] Compiling thiserror v2.0.12 [INFO] [stderr] Compiling libc v0.2.172 [INFO] [stderr] Compiling ucd-trie v0.1.7 [INFO] [stderr] Compiling futures-core v0.3.31 [INFO] [stderr] Compiling futures-sink v0.3.31 [INFO] [stderr] Compiling thiserror-impl v2.0.12 [INFO] [stderr] Compiling futures-macro v0.3.31 [INFO] [stderr] Compiling futures-channel v0.3.31 [INFO] [stderr] Compiling lock_api v0.4.12 [INFO] [stderr] Compiling futures-io v0.3.31 [INFO] [stderr] Compiling futures-task v0.3.31 [INFO] [stderr] Compiling parking_lot_core v0.9.10 [INFO] [stderr] Compiling once_cell v1.21.3 [INFO] [stderr] Compiling foldhash v0.1.5 [INFO] [stderr] Compiling scopeguard v1.2.0 [INFO] [stderr] Compiling hashbrown v0.15.3 [INFO] [stderr] Compiling fixedbitset v0.5.7 [INFO] [stderr] Compiling log v0.4.27 [INFO] [stderr] Compiling indexmap v2.9.0 [INFO] [stderr] Compiling pest v2.8.0 [INFO] [stderr] Compiling futures-util v0.3.31 [INFO] [stderr] Compiling petgraph v0.8.1 [INFO] [stderr] Compiling parking_lot v0.12.3 [INFO] [stderr] Compiling pest_meta v2.8.0 [INFO] [stderr] Compiling pest_generator v2.8.0 [INFO] [stderr] Compiling futures-executor v0.3.31 [INFO] [stderr] Compiling futures v0.3.31 [INFO] [stderr] Compiling pest_derive v2.8.0 [INFO] [stderr] Compiling evalit v0.2.0-beta.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> src/compiler/typing.rs:378:14 [INFO] [stdout] | [INFO] [stdout] 378 | for (name, func) in self.type_cx.functions.iter() { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_name` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `literal` [INFO] [stdout] --> src/compiler/typing.rs:474:30 [INFO] [stdout] | [INFO] [stdout] 474 | Pattern::Literal(literal) => Ok(()), [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_literal` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `env` [INFO] [stdout] --> src/compiler/typing.rs:582:37 [INFO] [stdout] | [INFO] [stdout] 582 | Expression::Environment(env) => Ok(Type::String), [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_env` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `map` [INFO] [stdout] --> src/compiler/typing.rs:586:29 [INFO] [stdout] | [INFO] [stdout] 586 | Expression::Map(map) => Ok(Type::Any), // 暂定Map类型为Any [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_map` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `range` [INFO] [stdout] --> src/compiler/typing.rs:588:31 [INFO] [stdout] | [INFO] [stdout] 588 | Expression::Range(range) => Ok(Type::Any), // 暂定Range类型为Any [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_range` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `path` [INFO] [stdout] --> src/compiler/typing.rs:605:26 [INFO] [stdout] | [INFO] [stdout] 605 | fn check_path(&self, path: &PathExpression) -> Result { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tuple` [INFO] [stdout] --> src/compiler/typing.rs:610:31 [INFO] [stdout] | [INFO] [stdout] 610 | fn check_tuple(&mut self, tuple: &TupleExpression) -> Result { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_tuple` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `arr` [INFO] [stdout] --> src/compiler/typing.rs:615:31 [INFO] [stdout] | [INFO] [stdout] 615 | fn check_array(&mut self, arr: &ArrayExpression) -> Result { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_arr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `closure` [INFO] [stdout] --> src/compiler/typing.rs:620:33 [INFO] [stdout] | [INFO] [stdout] 620 | fn check_closure(&mut self, closure: &ClosureExpression) -> Result { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_closure` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `slice` [INFO] [stdout] --> src/compiler/typing.rs:631:31 [INFO] [stdout] | [INFO] [stdout] 631 | fn check_slice(&mut self, slice: &SliceExpression) -> Result { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_slice` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `index` [INFO] [stdout] --> src/compiler/typing.rs:641:35 [INFO] [stdout] | [INFO] [stdout] 641 | fn check_index_get(&mut self, index: &IndexGetExpression) -> Result { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `prop` [INFO] [stdout] --> src/compiler/typing.rs:651:38 [INFO] [stdout] | [INFO] [stdout] 651 | fn check_property_get(&mut self, prop: &PropertyGetExpression) -> Result { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_prop` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `call` [INFO] [stdout] --> src/compiler/typing.rs:661:37 [INFO] [stdout] | [INFO] [stdout] 661 | fn check_call_method(&mut self, call: &CallMethodExpression) -> Result { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_call` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `param_name` [INFO] [stdout] --> src/compiler/typing.rs:830:26 [INFO] [stdout] | [INFO] [stdout] 830 | for (i, (param_name, param_type)) in func_def.params.iter().enumerate() { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_param_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `args` [INFO] [stdout] --> src/runtime/object.rs:117:24 [INFO] [stdout] | [INFO] [stdout] 117 | fn call(&mut self, args: &[ValueRef]) -> Result, RuntimeError> { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_args` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `index` [INFO] [stdout] --> src/runtime/object.rs:125:25 [INFO] [stdout] | [INFO] [stdout] 125 | fn index_get(&self, index: &Value) -> Result { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `index` [INFO] [stdout] --> src/runtime/object.rs:132:29 [INFO] [stdout] | [INFO] [stdout] 132 | fn index_set(&mut self, index: &Value, value: ValueRef) -> Result<(), RuntimeError> { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/runtime/object.rs:132:44 [INFO] [stdout] | [INFO] [stdout] 132 | fn index_set(&mut self, index: &Value, value: ValueRef) -> Result<(), RuntimeError> { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `property` [INFO] [stdout] --> src/runtime/object.rs:139:28 [INFO] [stdout] | [INFO] [stdout] 139 | fn property_get(&self, property: &str) -> Result { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_property` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `property` [INFO] [stdout] --> src/runtime/object.rs:146:32 [INFO] [stdout] | [INFO] [stdout] 146 | fn property_set(&mut self, property: &str, value: ValueRef) -> Result<(), RuntimeError> { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_property` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/runtime/object.rs:146:48 [INFO] [stdout] | [INFO] [stdout] 146 | fn property_set(&mut self, property: &str, value: ValueRef) -> Result<(), RuntimeError> { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `args` [INFO] [stdout] --> src/runtime/object.rs:156:9 [INFO] [stdout] | [INFO] [stdout] 156 | args: &[ValueRef], [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_args` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `range` [INFO] [stdout] --> src/runtime/object.rs:180:26 [INFO] [stdout] | [INFO] [stdout] 180 | fn make_slice(&self, range: ValueRef) -> Result { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_range` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `args` [INFO] [stdout] --> src/runtime/object.rs:445:24 [INFO] [stdout] | [INFO] [stdout] 445 | fn call(&mut self, args: &[ValueRef]) -> Result, RuntimeError> { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_args` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `index` [INFO] [stdout] --> src/runtime/object.rs:453:25 [INFO] [stdout] | [INFO] [stdout] 453 | fn index_get(&self, index: &Value) -> Result { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `index` [INFO] [stdout] --> src/runtime/object.rs:460:29 [INFO] [stdout] | [INFO] [stdout] 460 | fn index_set(&mut self, index: &Value, value: ValueRef) -> Result<(), RuntimeError> { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/runtime/object.rs:460:44 [INFO] [stdout] | [INFO] [stdout] 460 | fn index_set(&mut self, index: &Value, value: ValueRef) -> Result<(), RuntimeError> { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `property` [INFO] [stdout] --> src/runtime/object.rs:467:28 [INFO] [stdout] | [INFO] [stdout] 467 | fn property_get(&self, property: &str) -> Result { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_property` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `property` [INFO] [stdout] --> src/runtime/object.rs:474:32 [INFO] [stdout] | [INFO] [stdout] 474 | fn property_set(&mut self, property: &str, value: ValueRef) -> Result<(), RuntimeError> { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_property` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/runtime/object.rs:474:48 [INFO] [stdout] | [INFO] [stdout] 474 | fn property_set(&mut self, property: &str, value: ValueRef) -> Result<(), RuntimeError> { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `args` [INFO] [stdout] --> src/runtime/object.rs:484:9 [INFO] [stdout] | [INFO] [stdout] 484 | args: &[ValueRef], [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_args` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `range` [INFO] [stdout] --> src/runtime/object.rs:508:26 [INFO] [stdout] | [INFO] [stdout] 508 | fn make_slice(&self, range: ValueRef) -> Result { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_range` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `line` and `col` are never read [INFO] [stdout] --> src/compiler.rs:38:5 [INFO] [stdout] | [INFO] [stdout] 37 | struct LineCol { [INFO] [stdout] | ------- fields in this struct [INFO] [stdout] 38 | line: usize, [INFO] [stdout] | ^^^^ [INFO] [stdout] 39 | col: usize, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `LineCol` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Block` is never constructed [INFO] [stdout] --> src/compiler/ast/syntax.rs:105:5 [INFO] [stdout] | [INFO] [stdout] 101 | pub enum Statement { [INFO] [stdout] | --------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 105 | Block(BlockStatement), [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Statement` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Range` is never constructed [INFO] [stdout] --> src/compiler/ast/syntax.rs:227:5 [INFO] [stdout] | [INFO] [stdout] 218 | pub enum Expression { [INFO] [stdout] | ---------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 227 | Range(RangeExpression), [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Expression` 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: enum `PostfixOp` is never used [INFO] [stdout] --> src/compiler/ast/syntax.rs:407:10 [INFO] [stdout] | [INFO] [stdout] 407 | pub enum PostfixOp { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PostfixExpression` is never constructed [INFO] [stdout] --> src/compiler/ast/syntax.rs:413:12 [INFO] [stdout] | [INFO] [stdout] 413 | pub struct PostfixExpression { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/compiler/ast/syntax.rs:422:12 [INFO] [stdout] | [INFO] [stdout] 421 | impl IdentifierExpression { [INFO] [stdout] | ------------------------- associated function in this implementation [INFO] [stdout] 422 | pub fn new(name: String, span: Span) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Crate` is never constructed [INFO] [stdout] --> src/compiler/ast/syntax.rs:461:5 [INFO] [stdout] | [INFO] [stdout] 457 | pub enum PathSeg { [INFO] [stdout] | ------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 461 | Crate, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PathSeg` 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: method `id` is never used [INFO] [stdout] --> src/compiler/ir/instruction.rs:17:20 [INFO] [stdout] | [INFO] [stdout] 12 | impl $name { [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 17 | pub fn id(&self) -> usize { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 34 | id_entity!(VariableId); [INFO] [stdout] | ---------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `id_entity` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `id` is never used [INFO] [stdout] --> src/compiler/ir/instruction.rs:17:20 [INFO] [stdout] | [INFO] [stdout] 12 | impl $name { [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 17 | pub fn id(&self) -> usize { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 36 | id_entity!(BlockId); [INFO] [stdout] | ------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `id_entity` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `as_variable`, `as_function`, and `as_constant` are never used [INFO] [stdout] --> src/compiler/ir/instruction.rs:72:12 [INFO] [stdout] | [INFO] [stdout] 67 | impl Value { [INFO] [stdout] | ---------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 72 | pub fn as_variable(&self) -> VariableId { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 86 | pub fn as_function(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 93 | pub fn as_constant(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `is_terminator` and `is_call` are never used [INFO] [stdout] --> src/compiler/ir/instruction.rs:295:12 [INFO] [stdout] | [INFO] [stdout] 294 | impl Instruction { [INFO] [stdout] | ---------------- methods in this implementation [INFO] [stdout] 295 | pub fn is_terminator(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 305 | pub fn is_call(&self) -> bool { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Instructions` is never constructed [INFO] [stdout] --> src/compiler/ir/instruction.rs:571:12 [INFO] [stdout] | [INFO] [stdout] 571 | pub struct Instructions { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `push`, and `iter` are never used [INFO] [stdout] --> src/compiler/ir/instruction.rs:576:12 [INFO] [stdout] | [INFO] [stdout] 575 | impl Instructions { [INFO] [stdout] | ----------------- associated items in this implementation [INFO] [stdout] 576 | pub fn new(insts: Vec) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 580 | pub fn push(&mut self, instruction: Instruction) { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 584 | pub fn iter(&self) -> InstructionsIterator { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `InstructionsIterator` is never constructed [INFO] [stdout] --> src/compiler/ir/instruction.rs:591:12 [INFO] [stdout] | [INFO] [stdout] 591 | pub struct InstructionsIterator<'a> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `create_block_with_instructions` and `block_remove_successor` are never used [INFO] [stdout] --> src/compiler/ir/instruction.rs:646:19 [INFO] [stdout] | [INFO] [stdout] 622 | impl ControlFlowGraph { [INFO] [stdout] | --------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 646 | pub(crate) fn create_block_with_instructions( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 723 | pub fn block_remove_successor(&mut self, block: BlockId, successors: BlockId) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_anonymous` is never used [INFO] [stdout] --> src/compiler/ir/instruction.rs:751:12 [INFO] [stdout] | [INFO] [stdout] 742 | impl Name { [INFO] [stdout] | --------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 751 | pub fn is_anonymous(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `label` is never read [INFO] [stdout] --> src/compiler/ir/instruction.rs:789:16 [INFO] [stdout] | [INFO] [stdout] 787 | pub struct Block { [INFO] [stdout] | ----- field in this struct [INFO] [stdout] 788 | pub(crate) id: BlockId, [INFO] [stdout] 789 | pub(crate) label: Name, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Block` 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: method `with_instructions` is never used [INFO] [stdout] --> src/compiler/ir/instruction.rs:806:12 [INFO] [stdout] | [INFO] [stdout] 793 | impl Block { [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 806 | pub fn with_instructions(mut self, instructions: Vec) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_function`, `get_block`, and `with_control_flow_graph` are never used [INFO] [stdout] --> src/compiler/ir/instruction.rs:871:12 [INFO] [stdout] | [INFO] [stdout] 862 | impl IrUnit { [INFO] [stdout] | ----------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 871 | pub fn get_function(&self, id: FunctionId) -> Option<&IrFunction> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 910 | pub fn get_block(&self, id: BlockId) -> Option<&Block> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 914 | pub fn with_control_flow_graph(mut self, control_flow_graph: ControlFlowGraph) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_expression_input` is never used [INFO] [stdout] --> src/compiler/parser.rs:73:15 [INFO] [stdout] | [INFO] [stdout] 73 | pub(crate) fn parse_expression_input(input: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_statement_input` is never used [INFO] [stdout] --> src/compiler/parser.rs:78:15 [INFO] [stdout] | [INFO] [stdout] 78 | pub(crate) fn parse_statement_input(input: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `type_is_defined` and `get_type_id` are never used [INFO] [stdout] --> src/compiler/typing.rs:137:12 [INFO] [stdout] | [INFO] [stdout] 123 | impl TypeContext { [INFO] [stdout] | ---------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 137 | pub fn type_is_defined(&self, name: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 141 | pub fn get_type_id(&self, name: &str) -> Option { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `ObjectBase` is never used [INFO] [stdout] --> src/runtime/object.rs:361:11 [INFO] [stdout] | [INFO] [stdout] 361 | pub trait ObjectBase: std::any::Any + std::fmt::Debug { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `name` and `properties` are never read [INFO] [stdout] --> src/runtime/object/metatable.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct MetaTable { [INFO] [stdout] | --------- fields in this struct [INFO] [stdout] 11 | pub name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 12 | pub methods: HashMap>, [INFO] [stdout] 13 | pub properties: HashMap>, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MetaTable` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `add_property`, `with_property_getter`, `with_property_setter`, `property_get`, and `property_set` are never used [INFO] [stdout] --> src/runtime/object/metatable.rs:30:12 [INFO] [stdout] | [INFO] [stdout] 16 | impl MetaTable { [INFO] [stdout] | -------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 30 | pub fn add_property(&mut self, property: MetaProperty) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 34 | pub fn with_property_getter(mut self, name: &str, getter: Getter) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 42 | pub fn with_property_setter(mut self, name: &str, setter: Setter) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 50 | pub fn property_get(&self, this: &T, name: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 60 | pub fn property_set(&self, this: &mut T, name: &str, value: Value) -> Result<(), RuntimeError> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `name`, `getter`, and `setter` are never read [INFO] [stdout] --> src/runtime/object/metatable.rs:85:9 [INFO] [stdout] | [INFO] [stdout] 84 | pub struct MetaProperty { [INFO] [stdout] | ------------ fields in this struct [INFO] [stdout] 85 | pub name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 86 | pub getter: Option>, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 87 | pub setter: Option>, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MetaProperty` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/runtime/object/metatable.rs:91:12 [INFO] [stdout] | [INFO] [stdout] 90 | impl MetaProperty { [INFO] [stdout] | ----------------------- associated function in this implementation [INFO] [stdout] 91 | pub fn new(name: &str, getter: Option>, setter: Option>) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/compiler/ir/instruction.rs:584:17 [INFO] [stdout] | [INFO] [stdout] 584 | pub fn iter(&self) -> InstructionsIterator { [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] 584 | pub fn iter(&self) -> InstructionsIterator<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/interpreter.rs:6:42 [INFO] [stdout] | [INFO] [stdout] 6 | pub fn eval(script: &str, env: Environment) -> Result, Error> { [INFO] [stdout] | ^^^^ the lifetime is elided here ^^^^^ the same lifetime is hidden 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] 6 | pub fn eval(script: &str, env: Environment) -> Result, Error<'_>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/interpreter.rs:27:13 [INFO] [stdout] | [INFO] [stdout] 27 | script: &str, [INFO] [stdout] | ^^^^ the lifetime is elided here [INFO] [stdout] 28 | env: Environment, [INFO] [stdout] 29 | ) -> Result, Error> { [INFO] [stdout] | ^^^^^ the same lifetime is hidden 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] 29 | ) -> Result, Error<'_>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/interpreter.rs:72:25 [INFO] [stdout] | [INFO] [stdout] 72 | pub fn eval(script: &str, env: Environment) -> Result, Error> { [INFO] [stdout] | ^^^^ the lifetime is elided here ^^^^^ the same lifetime is hidden 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] 72 | pub fn eval(script: &str, env: Environment) -> Result, Error<'_>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/runtime/value.rs:71:18 [INFO] [stdout] | [INFO] [stdout] 71 | pub fn value(&self) -> RwLockReadGuard { [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] 71 | pub fn value(&self) -> RwLockReadGuard<'_, Value> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/runtime/value.rs:75:22 [INFO] [stdout] | [INFO] [stdout] 75 | pub fn value_mut(&self) -> RwLockWriteGuard { [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] 75 | pub fn value_mut(&self) -> RwLockWriteGuard<'_, Value> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 25.07s [INFO] running `Command { std: "docker" "inspect" "851abb0cf7ef0bdb58f48a9f4eb120eee59100b9359cb9a66df13e96f931ef1f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "851abb0cf7ef0bdb58f48a9f4eb120eee59100b9359cb9a66df13e96f931ef1f", kill_on_drop: false }` [INFO] [stdout] 851abb0cf7ef0bdb58f48a9f4eb120eee59100b9359cb9a66df13e96f931ef1f [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 5397f19f456edbcf80d67e4431140f44bdee2d0aabe5cf9520e8c6a4f2758acb [INFO] running `Command { std: "docker" "start" "-a" "5397f19f456edbcf80d67e4431140f44bdee2d0aabe5cf9520e8c6a4f2758acb", kill_on_drop: false }` [INFO] [stderr] Compiling once_cell v1.21.3 [INFO] [stderr] Compiling smallvec v1.15.0 [INFO] [stderr] Compiling bytes v1.10.1 [INFO] [stderr] Compiling crossbeam-utils v0.8.21 [INFO] [stderr] Compiling futures-channel v0.3.31 [INFO] [stderr] Compiling indexmap v2.9.0 [INFO] [stderr] Compiling serde_derive v1.0.219 [INFO] [stderr] Compiling tokio-macros v2.5.0 [INFO] [stderr] Compiling parking_lot_core v0.9.10 [INFO] [stderr] Compiling socket2 v0.5.9 [INFO] [stderr] Compiling futures-util v0.3.31 [INFO] [stderr] Compiling parking_lot v0.12.3 [INFO] [stderr] Compiling signal-hook-registry v1.4.5 [INFO] [stderr] Compiling mio v1.0.3 [INFO] [stderr] Compiling aho-corasick v1.1.3 [INFO] [stderr] Compiling anstyle v1.0.10 [INFO] [stderr] Compiling regex-syntax v0.8.5 [INFO] [stderr] Compiling http v1.3.1 [INFO] [stderr] Compiling crossbeam-epoch v0.9.18 [INFO] [stderr] Compiling tracing-core v0.1.33 [INFO] [stderr] Compiling tokio v1.45.0 [INFO] [stderr] Compiling rayon-core v1.12.1 [INFO] [stderr] Compiling tracing v0.1.41 [INFO] [stderr] Compiling crossbeam-deque v0.8.6 [INFO] [stderr] Compiling pest_meta v2.8.0 [INFO] [stderr] Compiling half v2.6.0 [INFO] [stderr] Compiling plotters-backend v0.3.7 [INFO] [stderr] Compiling regex-automata v0.4.9 [INFO] [stderr] Compiling ciborium-io v0.2.2 [INFO] [stderr] Compiling atomic-waker v1.1.2 [INFO] [stderr] Compiling utf8parse v0.2.2 [INFO] [stderr] Compiling clap_lex v0.7.4 [INFO] [stderr] Compiling clap_builder v4.5.38 [INFO] [stderr] Compiling futures-executor v0.3.31 [INFO] [stderr] Compiling serde v1.0.219 [INFO] [stderr] Compiling pest_generator v2.8.0 [INFO] [stderr] Compiling anstyle-parse v0.2.6 [INFO] [stderr] Compiling ciborium-ll v0.2.2 [INFO] [stderr] Compiling plotters-svg v0.3.7 [INFO] [stderr] Compiling http-body v1.0.1 [INFO] [stderr] Compiling itertools v0.10.5 [INFO] [stderr] Compiling cast v0.3.0 [INFO] [stderr] Compiling colorchoice v1.0.3 [INFO] [stderr] Compiling is_terminal_polyfill v1.70.1 [INFO] [stderr] Compiling same-file v1.0.6 [INFO] [stderr] Compiling anstyle-query v1.1.2 [INFO] [stderr] Compiling petgraph v0.8.1 [INFO] [stderr] Compiling pest_derive v2.8.0 [INFO] [stderr] Compiling anstream v0.6.18 [INFO] [stderr] Compiling walkdir v2.5.0 [INFO] [stderr] Compiling regex v1.11.1 [INFO] [stderr] Compiling clap v4.5.38 [INFO] [stderr] Compiling rayon v1.10.0 [INFO] [stderr] Compiling env_filter v0.1.3 [INFO] [stderr] Compiling criterion-plot v0.5.0 [INFO] [stderr] Compiling plotters v0.3.7 [INFO] [stderr] Compiling futures v0.3.31 [INFO] [stderr] Compiling anes v0.1.6 [INFO] [stderr] Compiling tokio-util v0.7.15 [INFO] [stderr] Compiling serde_json v1.0.140 [INFO] [stderr] Compiling h2 v0.4.10 [INFO] [stderr] Compiling ciborium v0.2.2 [INFO] [stderr] Compiling oorandom v11.1.5 [INFO] [stderr] Compiling jiff v0.2.13 [INFO] [stderr] Compiling evalit v0.2.0-beta.0 (/opt/rustwide/workdir) [INFO] [stderr] Compiling tinytemplate v1.2.1 [INFO] [stderr] Compiling criterion v0.6.0 [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> src/compiler/typing.rs:378:14 [INFO] [stdout] | [INFO] [stdout] 378 | for (name, func) in self.type_cx.functions.iter() { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_name` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `literal` [INFO] [stdout] --> src/compiler/typing.rs:474:30 [INFO] [stdout] | [INFO] [stdout] 474 | Pattern::Literal(literal) => Ok(()), [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_literal` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `env` [INFO] [stdout] --> src/compiler/typing.rs:582:37 [INFO] [stdout] | [INFO] [stdout] 582 | Expression::Environment(env) => Ok(Type::String), [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_env` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `map` [INFO] [stdout] --> src/compiler/typing.rs:586:29 [INFO] [stdout] | [INFO] [stdout] 586 | Expression::Map(map) => Ok(Type::Any), // 暂定Map类型为Any [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_map` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `range` [INFO] [stdout] --> src/compiler/typing.rs:588:31 [INFO] [stdout] | [INFO] [stdout] 588 | Expression::Range(range) => Ok(Type::Any), // 暂定Range类型为Any [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_range` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `path` [INFO] [stdout] --> src/compiler/typing.rs:605:26 [INFO] [stdout] | [INFO] [stdout] 605 | fn check_path(&self, path: &PathExpression) -> Result { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tuple` [INFO] [stdout] --> src/compiler/typing.rs:610:31 [INFO] [stdout] | [INFO] [stdout] 610 | fn check_tuple(&mut self, tuple: &TupleExpression) -> Result { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_tuple` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `arr` [INFO] [stdout] --> src/compiler/typing.rs:615:31 [INFO] [stdout] | [INFO] [stdout] 615 | fn check_array(&mut self, arr: &ArrayExpression) -> Result { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_arr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `closure` [INFO] [stdout] --> src/compiler/typing.rs:620:33 [INFO] [stdout] | [INFO] [stdout] 620 | fn check_closure(&mut self, closure: &ClosureExpression) -> Result { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_closure` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `slice` [INFO] [stdout] --> src/compiler/typing.rs:631:31 [INFO] [stdout] | [INFO] [stdout] 631 | fn check_slice(&mut self, slice: &SliceExpression) -> Result { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_slice` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `index` [INFO] [stdout] --> src/compiler/typing.rs:641:35 [INFO] [stdout] | [INFO] [stdout] 641 | fn check_index_get(&mut self, index: &IndexGetExpression) -> Result { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `prop` [INFO] [stdout] --> src/compiler/typing.rs:651:38 [INFO] [stdout] | [INFO] [stdout] 651 | fn check_property_get(&mut self, prop: &PropertyGetExpression) -> Result { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_prop` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `call` [INFO] [stdout] --> src/compiler/typing.rs:661:37 [INFO] [stdout] | [INFO] [stdout] 661 | fn check_call_method(&mut self, call: &CallMethodExpression) -> Result { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_call` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `param_name` [INFO] [stdout] --> src/compiler/typing.rs:830:26 [INFO] [stdout] | [INFO] [stdout] 830 | for (i, (param_name, param_type)) in func_def.params.iter().enumerate() { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_param_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `args` [INFO] [stdout] --> src/runtime/object.rs:117:24 [INFO] [stdout] | [INFO] [stdout] 117 | fn call(&mut self, args: &[ValueRef]) -> Result, RuntimeError> { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_args` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `index` [INFO] [stdout] --> src/runtime/object.rs:125:25 [INFO] [stdout] | [INFO] [stdout] 125 | fn index_get(&self, index: &Value) -> Result { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `index` [INFO] [stdout] --> src/runtime/object.rs:132:29 [INFO] [stdout] | [INFO] [stdout] 132 | fn index_set(&mut self, index: &Value, value: ValueRef) -> Result<(), RuntimeError> { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/runtime/object.rs:132:44 [INFO] [stdout] | [INFO] [stdout] 132 | fn index_set(&mut self, index: &Value, value: ValueRef) -> Result<(), RuntimeError> { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `property` [INFO] [stdout] --> src/runtime/object.rs:139:28 [INFO] [stdout] | [INFO] [stdout] 139 | fn property_get(&self, property: &str) -> Result { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_property` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `property` [INFO] [stdout] --> src/runtime/object.rs:146:32 [INFO] [stdout] | [INFO] [stdout] 146 | fn property_set(&mut self, property: &str, value: ValueRef) -> Result<(), RuntimeError> { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_property` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/runtime/object.rs:146:48 [INFO] [stdout] | [INFO] [stdout] 146 | fn property_set(&mut self, property: &str, value: ValueRef) -> Result<(), RuntimeError> { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `args` [INFO] [stdout] --> src/runtime/object.rs:156:9 [INFO] [stdout] | [INFO] [stdout] 156 | args: &[ValueRef], [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_args` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `range` [INFO] [stdout] --> src/runtime/object.rs:180:26 [INFO] [stdout] | [INFO] [stdout] 180 | fn make_slice(&self, range: ValueRef) -> Result { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_range` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `args` [INFO] [stdout] --> src/runtime/object.rs:445:24 [INFO] [stdout] | [INFO] [stdout] 445 | fn call(&mut self, args: &[ValueRef]) -> Result, RuntimeError> { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_args` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `index` [INFO] [stdout] --> src/runtime/object.rs:453:25 [INFO] [stdout] | [INFO] [stdout] 453 | fn index_get(&self, index: &Value) -> Result { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `index` [INFO] [stdout] --> src/runtime/object.rs:460:29 [INFO] [stdout] | [INFO] [stdout] 460 | fn index_set(&mut self, index: &Value, value: ValueRef) -> Result<(), RuntimeError> { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/runtime/object.rs:460:44 [INFO] [stdout] | [INFO] [stdout] 460 | fn index_set(&mut self, index: &Value, value: ValueRef) -> Result<(), RuntimeError> { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `property` [INFO] [stdout] --> src/runtime/object.rs:467:28 [INFO] [stdout] | [INFO] [stdout] 467 | fn property_get(&self, property: &str) -> Result { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_property` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `property` [INFO] [stdout] --> src/runtime/object.rs:474:32 [INFO] [stdout] | [INFO] [stdout] 474 | fn property_set(&mut self, property: &str, value: ValueRef) -> Result<(), RuntimeError> { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_property` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/runtime/object.rs:474:48 [INFO] [stdout] | [INFO] [stdout] 474 | fn property_set(&mut self, property: &str, value: ValueRef) -> Result<(), RuntimeError> { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `args` [INFO] [stdout] --> src/runtime/object.rs:484:9 [INFO] [stdout] | [INFO] [stdout] 484 | args: &[ValueRef], [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_args` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `range` [INFO] [stdout] --> src/runtime/object.rs:508:26 [INFO] [stdout] | [INFO] [stdout] 508 | fn make_slice(&self, range: ValueRef) -> Result { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_range` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `line` and `col` are never read [INFO] [stdout] --> src/compiler.rs:38:5 [INFO] [stdout] | [INFO] [stdout] 37 | struct LineCol { [INFO] [stdout] | ------- fields in this struct [INFO] [stdout] 38 | line: usize, [INFO] [stdout] | ^^^^ [INFO] [stdout] 39 | col: usize, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `LineCol` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Block` is never constructed [INFO] [stdout] --> src/compiler/ast/syntax.rs:105:5 [INFO] [stdout] | [INFO] [stdout] 101 | pub enum Statement { [INFO] [stdout] | --------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 105 | Block(BlockStatement), [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Statement` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Range` is never constructed [INFO] [stdout] --> src/compiler/ast/syntax.rs:227:5 [INFO] [stdout] | [INFO] [stdout] 218 | pub enum Expression { [INFO] [stdout] | ---------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 227 | Range(RangeExpression), [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Expression` 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: enum `PostfixOp` is never used [INFO] [stdout] --> src/compiler/ast/syntax.rs:407:10 [INFO] [stdout] | [INFO] [stdout] 407 | pub enum PostfixOp { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PostfixExpression` is never constructed [INFO] [stdout] --> src/compiler/ast/syntax.rs:413:12 [INFO] [stdout] | [INFO] [stdout] 413 | pub struct PostfixExpression { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/compiler/ast/syntax.rs:422:12 [INFO] [stdout] | [INFO] [stdout] 421 | impl IdentifierExpression { [INFO] [stdout] | ------------------------- associated function in this implementation [INFO] [stdout] 422 | pub fn new(name: String, span: Span) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Crate` is never constructed [INFO] [stdout] --> src/compiler/ast/syntax.rs:461:5 [INFO] [stdout] | [INFO] [stdout] 457 | pub enum PathSeg { [INFO] [stdout] | ------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 461 | Crate, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PathSeg` 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: method `id` is never used [INFO] [stdout] --> src/compiler/ir/instruction.rs:17:20 [INFO] [stdout] | [INFO] [stdout] 12 | impl $name { [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 17 | pub fn id(&self) -> usize { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 34 | id_entity!(VariableId); [INFO] [stdout] | ---------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `id_entity` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `id` is never used [INFO] [stdout] --> src/compiler/ir/instruction.rs:17:20 [INFO] [stdout] | [INFO] [stdout] 12 | impl $name { [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 17 | pub fn id(&self) -> usize { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 36 | id_entity!(BlockId); [INFO] [stdout] | ------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `id_entity` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `as_variable`, `as_function`, and `as_constant` are never used [INFO] [stdout] --> src/compiler/ir/instruction.rs:72:12 [INFO] [stdout] | [INFO] [stdout] 67 | impl Value { [INFO] [stdout] | ---------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 72 | pub fn as_variable(&self) -> VariableId { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 86 | pub fn as_function(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 93 | pub fn as_constant(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `is_terminator` and `is_call` are never used [INFO] [stdout] --> src/compiler/ir/instruction.rs:295:12 [INFO] [stdout] | [INFO] [stdout] 294 | impl Instruction { [INFO] [stdout] | ---------------- methods in this implementation [INFO] [stdout] 295 | pub fn is_terminator(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 305 | pub fn is_call(&self) -> bool { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Instructions` is never constructed [INFO] [stdout] --> src/compiler/ir/instruction.rs:571:12 [INFO] [stdout] | [INFO] [stdout] 571 | pub struct Instructions { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `push`, and `iter` are never used [INFO] [stdout] --> src/compiler/ir/instruction.rs:576:12 [INFO] [stdout] | [INFO] [stdout] 575 | impl Instructions { [INFO] [stdout] | ----------------- associated items in this implementation [INFO] [stdout] 576 | pub fn new(insts: Vec) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 580 | pub fn push(&mut self, instruction: Instruction) { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 584 | pub fn iter(&self) -> InstructionsIterator { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `InstructionsIterator` is never constructed [INFO] [stdout] --> src/compiler/ir/instruction.rs:591:12 [INFO] [stdout] | [INFO] [stdout] 591 | pub struct InstructionsIterator<'a> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `create_block_with_instructions` and `block_remove_successor` are never used [INFO] [stdout] --> src/compiler/ir/instruction.rs:646:19 [INFO] [stdout] | [INFO] [stdout] 622 | impl ControlFlowGraph { [INFO] [stdout] | --------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 646 | pub(crate) fn create_block_with_instructions( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 723 | pub fn block_remove_successor(&mut self, block: BlockId, successors: BlockId) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_anonymous` is never used [INFO] [stdout] --> src/compiler/ir/instruction.rs:751:12 [INFO] [stdout] | [INFO] [stdout] 742 | impl Name { [INFO] [stdout] | --------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 751 | pub fn is_anonymous(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `label` is never read [INFO] [stdout] --> src/compiler/ir/instruction.rs:789:16 [INFO] [stdout] | [INFO] [stdout] 787 | pub struct Block { [INFO] [stdout] | ----- field in this struct [INFO] [stdout] 788 | pub(crate) id: BlockId, [INFO] [stdout] 789 | pub(crate) label: Name, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Block` 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: method `with_instructions` is never used [INFO] [stdout] --> src/compiler/ir/instruction.rs:806:12 [INFO] [stdout] | [INFO] [stdout] 793 | impl Block { [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 806 | pub fn with_instructions(mut self, instructions: Vec) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_function`, `get_block`, and `with_control_flow_graph` are never used [INFO] [stdout] --> src/compiler/ir/instruction.rs:871:12 [INFO] [stdout] | [INFO] [stdout] 862 | impl IrUnit { [INFO] [stdout] | ----------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 871 | pub fn get_function(&self, id: FunctionId) -> Option<&IrFunction> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 910 | pub fn get_block(&self, id: BlockId) -> Option<&Block> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 914 | pub fn with_control_flow_graph(mut self, control_flow_graph: ControlFlowGraph) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_expression_input` is never used [INFO] [stdout] --> src/compiler/parser.rs:73:15 [INFO] [stdout] | [INFO] [stdout] 73 | pub(crate) fn parse_expression_input(input: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_statement_input` is never used [INFO] [stdout] --> src/compiler/parser.rs:78:15 [INFO] [stdout] | [INFO] [stdout] 78 | pub(crate) fn parse_statement_input(input: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `type_is_defined` and `get_type_id` are never used [INFO] [stdout] --> src/compiler/typing.rs:137:12 [INFO] [stdout] | [INFO] [stdout] 123 | impl TypeContext { [INFO] [stdout] | ---------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 137 | pub fn type_is_defined(&self, name: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 141 | pub fn get_type_id(&self, name: &str) -> Option { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `ObjectBase` is never used [INFO] [stdout] --> src/runtime/object.rs:361:11 [INFO] [stdout] | [INFO] [stdout] 361 | pub trait ObjectBase: std::any::Any + std::fmt::Debug { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `name` and `properties` are never read [INFO] [stdout] --> src/runtime/object/metatable.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct MetaTable { [INFO] [stdout] | --------- fields in this struct [INFO] [stdout] 11 | pub name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 12 | pub methods: HashMap>, [INFO] [stdout] 13 | pub properties: HashMap>, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MetaTable` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `add_property`, `with_property_getter`, `with_property_setter`, `property_get`, and `property_set` are never used [INFO] [stdout] --> src/runtime/object/metatable.rs:30:12 [INFO] [stdout] | [INFO] [stdout] 16 | impl MetaTable { [INFO] [stdout] | -------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 30 | pub fn add_property(&mut self, property: MetaProperty) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 34 | pub fn with_property_getter(mut self, name: &str, getter: Getter) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 42 | pub fn with_property_setter(mut self, name: &str, setter: Setter) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 50 | pub fn property_get(&self, this: &T, name: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 60 | pub fn property_set(&self, this: &mut T, name: &str, value: Value) -> Result<(), RuntimeError> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `name`, `getter`, and `setter` are never read [INFO] [stdout] --> src/runtime/object/metatable.rs:85:9 [INFO] [stdout] | [INFO] [stdout] 84 | pub struct MetaProperty { [INFO] [stdout] | ------------ fields in this struct [INFO] [stdout] 85 | pub name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 86 | pub getter: Option>, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 87 | pub setter: Option>, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MetaProperty` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/runtime/object/metatable.rs:91:12 [INFO] [stdout] | [INFO] [stdout] 90 | impl MetaProperty { [INFO] [stdout] | ----------------------- associated function in this implementation [INFO] [stdout] 91 | pub fn new(name: &str, getter: Option>, setter: Option>) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/compiler/ir/instruction.rs:584:17 [INFO] [stdout] | [INFO] [stdout] 584 | pub fn iter(&self) -> InstructionsIterator { [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] 584 | pub fn iter(&self) -> InstructionsIterator<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/interpreter.rs:6:42 [INFO] [stdout] | [INFO] [stdout] 6 | pub fn eval(script: &str, env: Environment) -> Result, Error> { [INFO] [stdout] | ^^^^ the lifetime is elided here ^^^^^ the same lifetime is hidden 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] 6 | pub fn eval(script: &str, env: Environment) -> Result, Error<'_>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/interpreter.rs:27:13 [INFO] [stdout] | [INFO] [stdout] 27 | script: &str, [INFO] [stdout] | ^^^^ the lifetime is elided here [INFO] [stdout] 28 | env: Environment, [INFO] [stdout] 29 | ) -> Result, Error> { [INFO] [stdout] | ^^^^^ the same lifetime is hidden 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] 29 | ) -> Result, Error<'_>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/interpreter.rs:72:25 [INFO] [stdout] | [INFO] [stdout] 72 | pub fn eval(script: &str, env: Environment) -> Result, Error> { [INFO] [stdout] | ^^^^ the lifetime is elided here ^^^^^ the same lifetime is hidden 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] 72 | pub fn eval(script: &str, env: Environment) -> Result, Error<'_>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/runtime/value.rs:71:18 [INFO] [stdout] | [INFO] [stdout] 71 | pub fn value(&self) -> RwLockReadGuard { [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] 71 | pub fn value(&self) -> RwLockReadGuard<'_, Value> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/runtime/value.rs:75:22 [INFO] [stdout] | [INFO] [stdout] 75 | pub fn value_mut(&self) -> RwLockWriteGuard { [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] 75 | pub fn value_mut(&self) -> RwLockWriteGuard<'_, Value> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling hyper v1.6.0 [INFO] [stderr] Compiling hyper-util v0.1.11 [INFO] [stderr] Compiling env_logger v0.11.8 [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> src/compiler/typing.rs:378:14 [INFO] [stdout] | [INFO] [stdout] 378 | for (name, func) in self.type_cx.functions.iter() { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_name` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `literal` [INFO] [stdout] --> src/compiler/typing.rs:474:30 [INFO] [stdout] | [INFO] [stdout] 474 | Pattern::Literal(literal) => Ok(()), [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_literal` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `env` [INFO] [stdout] --> src/compiler/typing.rs:582:37 [INFO] [stdout] | [INFO] [stdout] 582 | Expression::Environment(env) => Ok(Type::String), [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_env` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `map` [INFO] [stdout] --> src/compiler/typing.rs:586:29 [INFO] [stdout] | [INFO] [stdout] 586 | Expression::Map(map) => Ok(Type::Any), // 暂定Map类型为Any [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_map` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `range` [INFO] [stdout] --> src/compiler/typing.rs:588:31 [INFO] [stdout] | [INFO] [stdout] 588 | Expression::Range(range) => Ok(Type::Any), // 暂定Range类型为Any [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_range` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `path` [INFO] [stdout] --> src/compiler/typing.rs:605:26 [INFO] [stdout] | [INFO] [stdout] 605 | fn check_path(&self, path: &PathExpression) -> Result { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tuple` [INFO] [stdout] --> src/compiler/typing.rs:610:31 [INFO] [stdout] | [INFO] [stdout] 610 | fn check_tuple(&mut self, tuple: &TupleExpression) -> Result { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_tuple` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `arr` [INFO] [stdout] --> src/compiler/typing.rs:615:31 [INFO] [stdout] | [INFO] [stdout] 615 | fn check_array(&mut self, arr: &ArrayExpression) -> Result { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_arr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `closure` [INFO] [stdout] --> src/compiler/typing.rs:620:33 [INFO] [stdout] | [INFO] [stdout] 620 | fn check_closure(&mut self, closure: &ClosureExpression) -> Result { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_closure` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `slice` [INFO] [stdout] --> src/compiler/typing.rs:631:31 [INFO] [stdout] | [INFO] [stdout] 631 | fn check_slice(&mut self, slice: &SliceExpression) -> Result { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_slice` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `index` [INFO] [stdout] --> src/compiler/typing.rs:641:35 [INFO] [stdout] | [INFO] [stdout] 641 | fn check_index_get(&mut self, index: &IndexGetExpression) -> Result { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `prop` [INFO] [stdout] --> src/compiler/typing.rs:651:38 [INFO] [stdout] | [INFO] [stdout] 651 | fn check_property_get(&mut self, prop: &PropertyGetExpression) -> Result { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_prop` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `call` [INFO] [stdout] --> src/compiler/typing.rs:661:37 [INFO] [stdout] | [INFO] [stdout] 661 | fn check_call_method(&mut self, call: &CallMethodExpression) -> Result { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_call` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `param_name` [INFO] [stdout] --> src/compiler/typing.rs:830:26 [INFO] [stdout] | [INFO] [stdout] 830 | for (i, (param_name, param_type)) in func_def.params.iter().enumerate() { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_param_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `args` [INFO] [stdout] --> src/runtime/object.rs:117:24 [INFO] [stdout] | [INFO] [stdout] 117 | fn call(&mut self, args: &[ValueRef]) -> Result, RuntimeError> { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_args` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `index` [INFO] [stdout] --> src/runtime/object.rs:125:25 [INFO] [stdout] | [INFO] [stdout] 125 | fn index_get(&self, index: &Value) -> Result { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `index` [INFO] [stdout] --> src/runtime/object.rs:132:29 [INFO] [stdout] | [INFO] [stdout] 132 | fn index_set(&mut self, index: &Value, value: ValueRef) -> Result<(), RuntimeError> { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/runtime/object.rs:132:44 [INFO] [stdout] | [INFO] [stdout] 132 | fn index_set(&mut self, index: &Value, value: ValueRef) -> Result<(), RuntimeError> { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `property` [INFO] [stdout] --> src/runtime/object.rs:139:28 [INFO] [stdout] | [INFO] [stdout] 139 | fn property_get(&self, property: &str) -> Result { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_property` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `property` [INFO] [stdout] --> src/runtime/object.rs:146:32 [INFO] [stdout] | [INFO] [stdout] 146 | fn property_set(&mut self, property: &str, value: ValueRef) -> Result<(), RuntimeError> { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_property` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/runtime/object.rs:146:48 [INFO] [stdout] | [INFO] [stdout] 146 | fn property_set(&mut self, property: &str, value: ValueRef) -> Result<(), RuntimeError> { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `args` [INFO] [stdout] --> src/runtime/object.rs:156:9 [INFO] [stdout] | [INFO] [stdout] 156 | args: &[ValueRef], [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_args` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `range` [INFO] [stdout] --> src/runtime/object.rs:180:26 [INFO] [stdout] | [INFO] [stdout] 180 | fn make_slice(&self, range: ValueRef) -> Result { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_range` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `args` [INFO] [stdout] --> src/runtime/object.rs:445:24 [INFO] [stdout] | [INFO] [stdout] 445 | fn call(&mut self, args: &[ValueRef]) -> Result, RuntimeError> { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_args` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `index` [INFO] [stdout] --> src/runtime/object.rs:453:25 [INFO] [stdout] | [INFO] [stdout] 453 | fn index_get(&self, index: &Value) -> Result { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `index` [INFO] [stdout] --> src/runtime/object.rs:460:29 [INFO] [stdout] | [INFO] [stdout] 460 | fn index_set(&mut self, index: &Value, value: ValueRef) -> Result<(), RuntimeError> { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/runtime/object.rs:460:44 [INFO] [stdout] | [INFO] [stdout] 460 | fn index_set(&mut self, index: &Value, value: ValueRef) -> Result<(), RuntimeError> { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `property` [INFO] [stdout] --> src/runtime/object.rs:467:28 [INFO] [stdout] | [INFO] [stdout] 467 | fn property_get(&self, property: &str) -> Result { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_property` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `property` [INFO] [stdout] --> src/runtime/object.rs:474:32 [INFO] [stdout] | [INFO] [stdout] 474 | fn property_set(&mut self, property: &str, value: ValueRef) -> Result<(), RuntimeError> { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_property` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> src/runtime/object.rs:474:48 [INFO] [stdout] | [INFO] [stdout] 474 | fn property_set(&mut self, property: &str, value: ValueRef) -> Result<(), RuntimeError> { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `args` [INFO] [stdout] --> src/runtime/object.rs:484:9 [INFO] [stdout] | [INFO] [stdout] 484 | args: &[ValueRef], [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_args` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `range` [INFO] [stdout] --> src/runtime/object.rs:508:26 [INFO] [stdout] | [INFO] [stdout] 508 | fn make_slice(&self, range: ValueRef) -> Result { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_range` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `line` and `col` are never read [INFO] [stdout] --> src/compiler.rs:38:5 [INFO] [stdout] | [INFO] [stdout] 37 | struct LineCol { [INFO] [stdout] | ------- fields in this struct [INFO] [stdout] 38 | line: usize, [INFO] [stdout] | ^^^^ [INFO] [stdout] 39 | col: usize, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `LineCol` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Block` is never constructed [INFO] [stdout] --> src/compiler/ast/syntax.rs:105:5 [INFO] [stdout] | [INFO] [stdout] 101 | pub enum Statement { [INFO] [stdout] | --------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 105 | Block(BlockStatement), [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Statement` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Range` is never constructed [INFO] [stdout] --> src/compiler/ast/syntax.rs:227:5 [INFO] [stdout] | [INFO] [stdout] 218 | pub enum Expression { [INFO] [stdout] | ---------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 227 | Range(RangeExpression), [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Expression` 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: enum `PostfixOp` is never used [INFO] [stdout] --> src/compiler/ast/syntax.rs:407:10 [INFO] [stdout] | [INFO] [stdout] 407 | pub enum PostfixOp { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PostfixExpression` is never constructed [INFO] [stdout] --> src/compiler/ast/syntax.rs:413:12 [INFO] [stdout] | [INFO] [stdout] 413 | pub struct PostfixExpression { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/compiler/ast/syntax.rs:422:12 [INFO] [stdout] | [INFO] [stdout] 421 | impl IdentifierExpression { [INFO] [stdout] | ------------------------- associated function in this implementation [INFO] [stdout] 422 | pub fn new(name: String, span: Span) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Crate` is never constructed [INFO] [stdout] --> src/compiler/ast/syntax.rs:461:5 [INFO] [stdout] | [INFO] [stdout] 457 | pub enum PathSeg { [INFO] [stdout] | ------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 461 | Crate, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PathSeg` 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: method `id` is never used [INFO] [stdout] --> src/compiler/ir/instruction.rs:17:20 [INFO] [stdout] | [INFO] [stdout] 12 | impl $name { [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 17 | pub fn id(&self) -> usize { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 34 | id_entity!(VariableId); [INFO] [stdout] | ---------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `id_entity` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `id` is never used [INFO] [stdout] --> src/compiler/ir/instruction.rs:17:20 [INFO] [stdout] | [INFO] [stdout] 12 | impl $name { [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 17 | pub fn id(&self) -> usize { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 36 | id_entity!(BlockId); [INFO] [stdout] | ------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `id_entity` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `as_variable`, `as_function`, and `as_constant` are never used [INFO] [stdout] --> src/compiler/ir/instruction.rs:72:12 [INFO] [stdout] | [INFO] [stdout] 67 | impl Value { [INFO] [stdout] | ---------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 72 | pub fn as_variable(&self) -> VariableId { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 86 | pub fn as_function(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 93 | pub fn as_constant(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `is_terminator` and `is_call` are never used [INFO] [stdout] --> src/compiler/ir/instruction.rs:295:12 [INFO] [stdout] | [INFO] [stdout] 294 | impl Instruction { [INFO] [stdout] | ---------------- methods in this implementation [INFO] [stdout] 295 | pub fn is_terminator(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 305 | pub fn is_call(&self) -> bool { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Instructions` is never constructed [INFO] [stdout] --> src/compiler/ir/instruction.rs:571:12 [INFO] [stdout] | [INFO] [stdout] 571 | pub struct Instructions { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `push`, and `iter` are never used [INFO] [stdout] --> src/compiler/ir/instruction.rs:576:12 [INFO] [stdout] | [INFO] [stdout] 575 | impl Instructions { [INFO] [stdout] | ----------------- associated items in this implementation [INFO] [stdout] 576 | pub fn new(insts: Vec) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 580 | pub fn push(&mut self, instruction: Instruction) { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 584 | pub fn iter(&self) -> InstructionsIterator { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `InstructionsIterator` is never constructed [INFO] [stdout] --> src/compiler/ir/instruction.rs:591:12 [INFO] [stdout] | [INFO] [stdout] 591 | pub struct InstructionsIterator<'a> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `create_block_with_instructions` and `block_remove_successor` are never used [INFO] [stdout] --> src/compiler/ir/instruction.rs:646:19 [INFO] [stdout] | [INFO] [stdout] 622 | impl ControlFlowGraph { [INFO] [stdout] | --------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 646 | pub(crate) fn create_block_with_instructions( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 723 | pub fn block_remove_successor(&mut self, block: BlockId, successors: BlockId) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_anonymous` is never used [INFO] [stdout] --> src/compiler/ir/instruction.rs:751:12 [INFO] [stdout] | [INFO] [stdout] 742 | impl Name { [INFO] [stdout] | --------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 751 | pub fn is_anonymous(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `label` is never read [INFO] [stdout] --> src/compiler/ir/instruction.rs:789:16 [INFO] [stdout] | [INFO] [stdout] 787 | pub struct Block { [INFO] [stdout] | ----- field in this struct [INFO] [stdout] 788 | pub(crate) id: BlockId, [INFO] [stdout] 789 | pub(crate) label: Name, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Block` 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: method `with_instructions` is never used [INFO] [stdout] --> src/compiler/ir/instruction.rs:806:12 [INFO] [stdout] | [INFO] [stdout] 793 | impl Block { [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 806 | pub fn with_instructions(mut self, instructions: Vec) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_function`, `get_block`, and `with_control_flow_graph` are never used [INFO] [stdout] --> src/compiler/ir/instruction.rs:871:12 [INFO] [stdout] | [INFO] [stdout] 862 | impl IrUnit { [INFO] [stdout] | ----------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 871 | pub fn get_function(&self, id: FunctionId) -> Option<&IrFunction> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 910 | pub fn get_block(&self, id: BlockId) -> Option<&Block> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 914 | pub fn with_control_flow_graph(mut self, control_flow_graph: ControlFlowGraph) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_expression_input` is never used [INFO] [stdout] --> src/compiler/parser.rs:73:15 [INFO] [stdout] | [INFO] [stdout] 73 | pub(crate) fn parse_expression_input(input: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `type_is_defined` and `get_type_id` are never used [INFO] [stdout] --> src/compiler/typing.rs:137:12 [INFO] [stdout] | [INFO] [stdout] 123 | impl TypeContext { [INFO] [stdout] | ---------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 137 | pub fn type_is_defined(&self, name: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 141 | pub fn get_type_id(&self, name: &str) -> Option { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `ObjectBase` is never used [INFO] [stdout] --> src/runtime/object.rs:361:11 [INFO] [stdout] | [INFO] [stdout] 361 | pub trait ObjectBase: std::any::Any + std::fmt::Debug { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `name` and `properties` are never read [INFO] [stdout] --> src/runtime/object/metatable.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct MetaTable { [INFO] [stdout] | --------- fields in this struct [INFO] [stdout] 11 | pub name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 12 | pub methods: HashMap>, [INFO] [stdout] 13 | pub properties: HashMap>, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MetaTable` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `add_property`, `with_property_getter`, `with_property_setter`, `property_get`, and `property_set` are never used [INFO] [stdout] --> src/runtime/object/metatable.rs:30:12 [INFO] [stdout] | [INFO] [stdout] 16 | impl MetaTable { [INFO] [stdout] | -------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 30 | pub fn add_property(&mut self, property: MetaProperty) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 34 | pub fn with_property_getter(mut self, name: &str, getter: Getter) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 42 | pub fn with_property_setter(mut self, name: &str, setter: Setter) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 50 | pub fn property_get(&self, this: &T, name: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 60 | pub fn property_set(&self, this: &mut T, name: &str, value: Value) -> Result<(), RuntimeError> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `name`, `getter`, and `setter` are never read [INFO] [stdout] --> src/runtime/object/metatable.rs:85:9 [INFO] [stdout] | [INFO] [stdout] 84 | pub struct MetaProperty { [INFO] [stdout] | ------------ fields in this struct [INFO] [stdout] 85 | pub name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 86 | pub getter: Option>, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 87 | pub setter: Option>, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MetaProperty` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/runtime/object/metatable.rs:91:12 [INFO] [stdout] | [INFO] [stdout] 90 | impl MetaProperty { [INFO] [stdout] | ----------------------- associated function in this implementation [INFO] [stdout] 91 | pub fn new(name: &str, getter: Option>, setter: Option>) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/compiler/ir/instruction.rs:584:17 [INFO] [stdout] | [INFO] [stdout] 584 | pub fn iter(&self) -> InstructionsIterator { [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] 584 | pub fn iter(&self) -> InstructionsIterator<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/interpreter.rs:6:42 [INFO] [stdout] | [INFO] [stdout] 6 | pub fn eval(script: &str, env: Environment) -> Result, Error> { [INFO] [stdout] | ^^^^ the lifetime is elided here ^^^^^ the same lifetime is hidden 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] 6 | pub fn eval(script: &str, env: Environment) -> Result, Error<'_>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/interpreter.rs:27:13 [INFO] [stdout] | [INFO] [stdout] 27 | script: &str, [INFO] [stdout] | ^^^^ the lifetime is elided here [INFO] [stdout] 28 | env: Environment, [INFO] [stdout] 29 | ) -> Result, Error> { [INFO] [stdout] | ^^^^^ the same lifetime is hidden 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] 29 | ) -> Result, Error<'_>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/interpreter.rs:72:25 [INFO] [stdout] | [INFO] [stdout] 72 | pub fn eval(script: &str, env: Environment) -> Result, Error> { [INFO] [stdout] | ^^^^ the lifetime is elided here ^^^^^ the same lifetime is hidden 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] 72 | pub fn eval(script: &str, env: Environment) -> Result, Error<'_>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/runtime/value.rs:71:18 [INFO] [stdout] | [INFO] [stdout] 71 | pub fn value(&self) -> RwLockReadGuard { [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] 71 | pub fn value(&self) -> RwLockReadGuard<'_, Value> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/runtime/value.rs:75:22 [INFO] [stdout] | [INFO] [stdout] 75 | pub fn value_mut(&self) -> RwLockWriteGuard { [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] 75 | pub fn value_mut(&self) -> RwLockWriteGuard<'_, Value> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 1m 47s [INFO] running `Command { std: "docker" "inspect" "5397f19f456edbcf80d67e4431140f44bdee2d0aabe5cf9520e8c6a4f2758acb", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5397f19f456edbcf80d67e4431140f44bdee2d0aabe5cf9520e8c6a4f2758acb", kill_on_drop: false }` [INFO] [stdout] 5397f19f456edbcf80d67e4431140f44bdee2d0aabe5cf9520e8c6a4f2758acb [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 93786956f91f4eac0f0b3f1614ea3d69517f74ae96744fd7157c794c1e686fbf [INFO] running `Command { std: "docker" "start" "-a" "93786956f91f4eac0f0b3f1614ea3d69517f74ae96744fd7157c794c1e686fbf", kill_on_drop: false }` [INFO] [stderr] warning: unused variable: `name` [INFO] [stdout] [INFO] [stderr] --> src/compiler/typing.rs:378:14 [INFO] [stdout] running 33 tests [INFO] [stderr] | [INFO] [stdout] test compiler::parser::test::test_binary_expression ... ok [INFO] [stderr] 378 | for (name, func) in self.type_cx.functions.iter() { [INFO] [stdout] test compiler::parser::test::test_break_statement ... ok [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_name` [INFO] [stdout] test compiler::parser::test::test_await_expression ... ok [INFO] [stderr] | [INFO] [stdout] test compiler::parser::test::test_array_expression ... ok [INFO] [stderr] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] test compiler::parser::test::test_call_expression ... ok [INFO] [stderr] [INFO] [stdout] test compiler::parser::test::test_closure_expression ... ok [INFO] [stderr] warning: unused variable: `literal` [INFO] [stdout] test compiler::parser::test::test_continue_statement ... ok [INFO] [stderr] --> src/compiler/typing.rs:474:30 [INFO] [stdout] test compiler::parser::test::test_empty_statement ... ok [INFO] [stderr] | [INFO] [stdout] test compiler::parser::test::test_enum_item ... ok [INFO] [stderr] 474 | Pattern::Literal(literal) => Ok(()), [INFO] [stdout] test compiler::parser::test::test_expression_statement ... ok [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_literal` [INFO] [stdout] test compiler::parser::test::test_environment_expression ... ok [INFO] [stderr] [INFO] [stdout] test compiler::parser::test::test_for_statement ... ok [INFO] [stderr] warning: unused variable: `env` [INFO] [stdout] test compiler::parser::test::test_let_statement ... ok [INFO] [stderr] --> src/compiler/typing.rs:582:37 [INFO] [stdout] test compiler::parser::test::test_function_item ... ok [INFO] [stderr] | [INFO] [stdout] test compiler::parser::test::test_literal_expression ... ok [INFO] [stderr] 582 | Expression::Environment(env) => Ok(Type::String), [INFO] [stdout] test compiler::parser::test::test_identifier_expression ... ok [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_env` [INFO] [stdout] test compiler::parser::test::test_loop_statement ... ok [INFO] [stderr] [INFO] [stdout] test compiler::parser::test::test_create_assign_binary_expression ... ok [INFO] [stderr] warning: unused variable: `map` [INFO] [stdout] test compiler::parser::test::test_map_expression ... ok [INFO] [stderr] --> src/compiler/typing.rs:586:29 [INFO] [stdout] test compiler::parser::test::test_call_method_expression ... ok [INFO] [stderr] | [INFO] [stdout] test compiler::parser::test::test_index_set_expression ... ok [INFO] [stderr] 586 | Expression::Map(map) => Ok(Type::Any), // 暂定Map类型为Any [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_map` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `range` [INFO] [stderr] --> src/compiler/typing.rs:588:31 [INFO] [stderr] | [INFO] [stderr] 588 | Expression::Range(range) => Ok(Type::Any), // 暂定Range类型为Any [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_range` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `path` [INFO] [stderr] --> src/compiler/typing.rs:605:26 [INFO] [stderr] | [INFO] [stderr] 605 | fn check_path(&self, path: &PathExpression) -> Result { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_path` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `tuple` [INFO] [stderr] --> src/compiler/typing.rs:610:31 [INFO] [stderr] | [INFO] [stderr] 610 | fn check_tuple(&mut self, tuple: &TupleExpression) -> Result { [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_tuple` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `arr` [INFO] [stderr] --> src/compiler/typing.rs:615:31 [INFO] [stderr] | [INFO] [stderr] 615 | fn check_array(&mut self, arr: &ArrayExpression) -> Result { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_arr` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `closure` [INFO] [stderr] --> src/compiler/typing.rs:620:33 [INFO] [stderr] | [INFO] [stderr] 620 | fn check_closure(&mut self, closure: &ClosureExpression) -> Result { [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_closure` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `slice` [INFO] [stderr] --> src/compiler/typing.rs:631:31 [INFO] [stderr] | [INFO] [stderr] 631 | fn check_slice(&mut self, slice: &SliceExpression) -> Result { [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_slice` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `index` [INFO] [stderr] --> src/compiler/typing.rs:641:35 [INFO] [stderr] | [INFO] [stderr] 641 | fn check_index_get(&mut self, index: &IndexGetExpression) -> Result { [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_index` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `prop` [INFO] [stderr] --> src/compiler/typing.rs:651:38 [INFO] [stderr] | [INFO] [stderr] 651 | fn check_property_get(&mut self, prop: &PropertyGetExpression) -> Result { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_prop` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `call` [INFO] [stderr] --> src/compiler/typing.rs:661:37 [INFO] [stderr] | [INFO] [stderr] 661 | fn check_call_method(&mut self, call: &CallMethodExpression) -> Result { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_call` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `param_name` [INFO] [stderr] --> src/compiler/typing.rs:830:26 [INFO] [stderr] | [INFO] [stderr] 830 | for (i, (param_name, param_type)) in func_def.params.iter().enumerate() { [INFO] [stdout] test compiler::parser::test::test_prefix_expression ... ok [INFO] [stderr] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_param_name` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `args` [INFO] [stderr] --> src/runtime/object.rs:117:24 [INFO] [stderr] | [INFO] [stderr] 117 | fn call(&mut self, args: &[ValueRef]) -> Result, RuntimeError> { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_args` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `index` [INFO] [stderr] --> src/runtime/object.rs:125:25 [INFO] [stderr] | [INFO] [stderr] 125 | fn index_get(&self, index: &Value) -> Result { [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_index` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `index` [INFO] [stderr] --> src/runtime/object.rs:132:29 [INFO] [stderr] | [INFO] [stderr] 132 | fn index_set(&mut self, index: &Value, value: ValueRef) -> Result<(), RuntimeError> { [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_index` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `value` [INFO] [stderr] --> src/runtime/object.rs:132:44 [INFO] [stderr] | [INFO] [stderr] 132 | fn index_set(&mut self, index: &Value, value: ValueRef) -> Result<(), RuntimeError> { [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `property` [INFO] [stderr] --> src/runtime/object.rs:139:28 [INFO] [stderr] | [INFO] [stderr] 139 | fn property_get(&self, property: &str) -> Result { [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_property` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `property` [INFO] [stderr] --> src/runtime/object.rs:146:32 [INFO] [stderr] | [INFO] [stderr] 146 | fn property_set(&mut self, property: &str, value: ValueRef) -> Result<(), RuntimeError> { [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_property` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `value` [INFO] [stderr] --> src/runtime/object.rs:146:48 [INFO] [stderr] | [INFO] [stderr] 146 | fn property_set(&mut self, property: &str, value: ValueRef) -> Result<(), RuntimeError> { [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `args` [INFO] [stderr] --> src/runtime/object.rs:156:9 [INFO] [stderr] | [INFO] [stderr] 156 | args: &[ValueRef], [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_args` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `range` [INFO] [stderr] --> src/runtime/object.rs:180:26 [INFO] [stderr] | [INFO] [stderr] 180 | fn make_slice(&self, range: ValueRef) -> Result { [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_range` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `args` [INFO] [stderr] --> src/runtime/object.rs:445:24 [INFO] [stderr] | [INFO] [stderr] 445 | fn call(&mut self, args: &[ValueRef]) -> Result, RuntimeError> { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_args` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `index` [INFO] [stderr] --> src/runtime/object.rs:453:25 [INFO] [stderr] | [INFO] [stderr] 453 | fn index_get(&self, index: &Value) -> Result { [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_index` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `index` [INFO] [stderr] --> src/runtime/object.rs:460:29 [INFO] [stderr] | [INFO] [stderr] 460 | fn index_set(&mut self, index: &Value, value: ValueRef) -> Result<(), RuntimeError> { [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_index` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `value` [INFO] [stderr] --> src/runtime/object.rs:460:44 [INFO] [stderr] | [INFO] [stderr] 460 | fn index_set(&mut self, index: &Value, value: ValueRef) -> Result<(), RuntimeError> { [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `property` [INFO] [stderr] --> src/runtime/object.rs:467:28 [INFO] [stderr] | [INFO] [stderr] 467 | fn property_get(&self, property: &str) -> Result { [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_property` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `property` [INFO] [stderr] --> src/runtime/object.rs:474:32 [INFO] [stderr] | [INFO] [stderr] 474 | fn property_set(&mut self, property: &str, value: ValueRef) -> Result<(), RuntimeError> { [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_property` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `value` [INFO] [stderr] --> src/runtime/object.rs:474:48 [INFO] [stderr] | [INFO] [stderr] 474 | fn property_set(&mut self, property: &str, value: ValueRef) -> Result<(), RuntimeError> { [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `args` [INFO] [stderr] --> src/runtime/object.rs:484:9 [INFO] [stderr] | [INFO] [stderr] 484 | args: &[ValueRef], [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_args` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `range` [INFO] [stderr] --> src/runtime/object.rs:508:26 [INFO] [stderr] | [INFO] [stderr] 508 | fn make_slice(&self, range: ValueRef) -> Result { [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_range` [INFO] [stdout] test compiler::parser::test::test_property_set_expression ... ok [INFO] [stderr] [INFO] [stdout] test compiler::parser::test::test_property_get_expression ... ok [INFO] [stderr] warning: fields `line` and `col` are never read [INFO] [stdout] test compiler::parser::test::test_let_statement_with_type ... ok [INFO] [stderr] --> src/compiler.rs:38:5 [INFO] [stdout] test compiler::parser::test::test_return_statement ... ok [INFO] [stderr] | [INFO] [stdout] test compiler::parser::test::test_slice_expression ... ok [INFO] [stderr] 37 | struct LineCol { [INFO] [stdout] test compiler::parser::test::test_if_statement ... ok [INFO] [stderr] | ------- fields in this struct [INFO] [stderr] 38 | line: usize, [INFO] [stderr] | ^^^^ [INFO] [stderr] 39 | col: usize, [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = note: `LineCol` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: variant `Block` is never constructed [INFO] [stderr] --> src/compiler/ast/syntax.rs:105:5 [INFO] [stderr] | [INFO] [stderr] 101 | pub enum Statement { [INFO] [stderr] | --------- variant in this enum [INFO] [stderr] ... [INFO] [stderr] 105 | Block(BlockStatement), [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `Statement` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: variant `Range` is never constructed [INFO] [stderr] --> src/compiler/ast/syntax.rs:227:5 [INFO] [stderr] | [INFO] [stderr] 218 | pub enum Expression { [INFO] [stderr] | ---------- variant in this enum [INFO] [stderr] ... [INFO] [stderr] 227 | Range(RangeExpression), [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `Expression` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: enum `PostfixOp` is never used [INFO] [stderr] --> src/compiler/ast/syntax.rs:407:10 [INFO] [stderr] | [INFO] [stderr] 407 | pub enum PostfixOp { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `PostfixExpression` is never constructed [INFO] [stderr] --> src/compiler/ast/syntax.rs:413:12 [INFO] [stderr] | [INFO] [stderr] 413 | pub struct PostfixExpression { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function `new` is never used [INFO] [stderr] --> src/compiler/ast/syntax.rs:422:12 [INFO] [stderr] | [INFO] [stderr] 421 | impl IdentifierExpression { [INFO] [stderr] | ------------------------- associated function in this implementation [INFO] [stderr] 422 | pub fn new(name: String, span: Span) -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: variant `Crate` is never constructed [INFO] [stderr] --> src/compiler/ast/syntax.rs:461:5 [INFO] [stderr] | [INFO] [stderr] 457 | pub enum PathSeg { [INFO] [stderr] | ------- variant in this enum [INFO] [stderr] ... [INFO] [stderr] 461 | Crate, [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `PathSeg` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: method `id` is never used [INFO] [stderr] --> src/compiler/ir/instruction.rs:17:20 [INFO] [stderr] | [INFO] [stderr] 12 | impl $name { [INFO] [stderr] | ---------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 17 | pub fn id(&self) -> usize { [INFO] [stderr] | ^^ [INFO] [stderr] ... [INFO] [stderr] 34 | id_entity!(VariableId); [INFO] [stderr] | ---------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `id_entity` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: method `id` is never used [INFO] [stderr] --> src/compiler/ir/instruction.rs:17:20 [INFO] [stderr] | [INFO] [stderr] 12 | impl $name { [INFO] [stderr] | ---------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 17 | pub fn id(&self) -> usize { [INFO] [stderr] | ^^ [INFO] [stderr] ... [INFO] [stderr] 36 | id_entity!(BlockId); [INFO] [stderr] | ------------------- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `id_entity` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: methods `as_variable`, `as_function`, and `as_constant` are never used [INFO] [stderr] --> src/compiler/ir/instruction.rs:72:12 [INFO] [stderr] | [INFO] [stderr] 67 | impl Value { [INFO] [stderr] | ---------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 72 | pub fn as_variable(&self) -> VariableId { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 86 | pub fn as_function(&self) -> Option { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 93 | pub fn as_constant(&self) -> Option { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods `is_terminator` and `is_call` are never used [INFO] [stderr] --> src/compiler/ir/instruction.rs:295:12 [INFO] [stderr] | [INFO] [stderr] 294 | impl Instruction { [INFO] [stderr] | ---------------- methods in this implementation [INFO] [stderr] 295 | pub fn is_terminator(&self) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 305 | pub fn is_call(&self) -> bool { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `Instructions` is never constructed [INFO] [stderr] --> src/compiler/ir/instruction.rs:571:12 [INFO] [stderr] | [INFO] [stderr] 571 | pub struct Instructions { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated items `new`, `push`, and `iter` are never used [INFO] [stderr] --> src/compiler/ir/instruction.rs:576:12 [INFO] [stderr] | [INFO] [stderr] 575 | impl Instructions { [INFO] [stderr] | ----------------- associated items in this implementation [INFO] [stderr] 576 | pub fn new(insts: Vec) -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 580 | pub fn push(&mut self, instruction: Instruction) { [INFO] [stderr] | ^^^^ [INFO] [stderr] ... [INFO] [stderr] 584 | pub fn iter(&self) -> InstructionsIterator { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `InstructionsIterator` is never constructed [INFO] [stderr] --> src/compiler/ir/instruction.rs:591:12 [INFO] [stderr] | [INFO] [stderr] 591 | pub struct InstructionsIterator<'a> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods `create_block_with_instructions` and `block_remove_successor` are never used [INFO] [stderr] --> src/compiler/ir/instruction.rs:646:19 [INFO] [stderr] | [INFO] [stderr] 622 | impl ControlFlowGraph { [INFO] [stderr] | --------------------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 646 | pub(crate) fn create_block_with_instructions( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 723 | pub fn block_remove_successor(&mut self, block: BlockId, successors: BlockId) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method `is_anonymous` is never used [INFO] [stderr] --> src/compiler/ir/instruction.rs:751:12 [INFO] [stderr] | [INFO] [stderr] 742 | impl Name { [INFO] [stderr] | --------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 751 | pub fn is_anonymous(&self) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `label` is never read [INFO] [stderr] --> src/compiler/ir/instruction.rs:789:16 [INFO] [stderr] | [INFO] [stderr] 787 | pub struct Block { [INFO] [stderr] | ----- field in this struct [INFO] [stderr] 788 | pub(crate) id: BlockId, [INFO] [stderr] 789 | pub(crate) label: Name, [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `Block` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: method `with_instructions` is never used [INFO] [stderr] --> src/compiler/ir/instruction.rs:806:12 [INFO] [stderr] | [INFO] [stderr] 793 | impl Block { [INFO] [stderr] | ---------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 806 | pub fn with_instructions(mut self, instructions: Vec) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods `get_function`, `get_block`, and `with_control_flow_graph` are never used [INFO] [stderr] --> src/compiler/ir/instruction.rs:871:12 [INFO] [stderr] | [INFO] [stderr] 862 | impl IrUnit { [INFO] [stderr] | ----------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 871 | pub fn get_function(&self, id: FunctionId) -> Option<&IrFunction> { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 910 | pub fn get_block(&self, id: BlockId) -> Option<&Block> { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 914 | pub fn with_control_flow_graph(mut self, control_flow_graph: ControlFlowGraph) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `parse_expression_input` is never used [INFO] [stderr] --> src/compiler/parser.rs:73:15 [INFO] [stderr] | [INFO] [stderr] 73 | pub(crate) fn parse_expression_input(input: &str) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `parse_statement_input` is never used [INFO] [stderr] --> src/compiler/parser.rs:78:15 [INFO] [stderr] | [INFO] [stderr] 78 | pub(crate) fn parse_statement_input(input: &str) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods `type_is_defined` and `get_type_id` are never used [INFO] [stderr] --> src/compiler/typing.rs:137:12 [INFO] [stderr] | [INFO] [stdout] test compiler::parser::test::test_struct_item ... ok [INFO] [stderr] 123 | impl TypeContext { [INFO] [stdout] test compiler::parser::test::test_try_expression ... ok [INFO] [stderr] | ---------------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 137 | pub fn type_is_defined(&self, name: &str) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stdout] test compiler::parser::test::test_tuple_expression ... ok [INFO] [stderr] 141 | pub fn get_type_id(&self, name: &str) -> Option { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait `ObjectBase` is never used [INFO] [stderr] --> src/runtime/object.rs:361:11 [INFO] [stderr] | [INFO] [stderr] 361 | pub trait ObjectBase: std::any::Any + std::fmt::Debug { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: fields `name` and `properties` are never read [INFO] [stderr] --> src/runtime/object/metatable.rs:11:9 [INFO] [stderr] | [INFO] [stderr] 10 | pub struct MetaTable { [INFO] [stderr] | --------- fields in this struct [INFO] [stderr] 11 | pub name: String, [INFO] [stderr] | ^^^^ [INFO] [stderr] 12 | pub methods: HashMap>, [INFO] [stderr] 13 | pub properties: HashMap>, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `MetaTable` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: methods `add_property`, `with_property_getter`, `with_property_setter`, `property_get`, and `property_set` are never used [INFO] [stderr] --> src/runtime/object/metatable.rs:30:12 [INFO] [stderr] | [INFO] [stderr] 16 | impl MetaTable { [INFO] [stderr] | -------------------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 30 | pub fn add_property(&mut self, property: MetaProperty) { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 34 | pub fn with_property_getter(mut self, name: &str, getter: Getter) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 42 | pub fn with_property_setter(mut self, name: &str, setter: Setter) -> Self { [INFO] [stdout] test compiler::parser::test::test_while_statement ... ok [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 50 | pub fn property_get(&self, this: &T, name: &str) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 60 | pub fn property_set(&self, this: &mut T, name: &str, value: Value) -> Result<(), RuntimeError> { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: fields `name`, `getter`, and `setter` are never read [INFO] [stderr] --> src/runtime/object/metatable.rs:85:9 [INFO] [stderr] | [INFO] [stderr] 84 | pub struct MetaProperty { [INFO] [stderr] | ------------ fields in this struct [INFO] [stderr] 85 | pub name: String, [INFO] [stderr] | ^^^^ [INFO] [stderr] 86 | pub getter: Option>, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] 87 | pub setter: Option>, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `MetaProperty` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: associated function `new` is never used [INFO] [stderr] --> src/runtime/object/metatable.rs:91:12 [INFO] [stderr] | [INFO] [stderr] 90 | impl MetaProperty { [INFO] [stderr] | ----------------------- associated function in this implementation [INFO] [stderr] 91 | pub fn new(name: &str, getter: Option>, setter: Option>) -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stderr] --> src/compiler/ir/instruction.rs:584:17 [INFO] [stderr] | [INFO] [stderr] 584 | pub fn iter(&self) -> InstructionsIterator { [INFO] [stderr] | ^^^^^ ^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stderr] | | [INFO] [stderr] | the lifetime is elided here [INFO] [stderr] | [INFO] [stderr] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stderr] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stderr] help: use `'_` for type paths [INFO] [stderr] | [INFO] [stderr] 584 | pub fn iter(&self) -> InstructionsIterator<'_> { [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stderr] --> src/interpreter.rs:6:42 [INFO] [stderr] | [INFO] [stderr] 6 | pub fn eval(script: &str, env: Environment) -> Result, Error> { [INFO] [stderr] | ^^^^ the lifetime is elided here ^^^^^ the same lifetime is hidden here [INFO] [stderr] | [INFO] [stderr] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stderr] help: use `'_` for type paths [INFO] [stderr] | [INFO] [stderr] 6 | pub fn eval(script: &str, env: Environment) -> Result, Error<'_>> { [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stderr] --> src/interpreter.rs:27:13 [INFO] [stderr] | [INFO] [stderr] 27 | script: &str, [INFO] [stderr] | ^^^^ the lifetime is elided here [INFO] [stderr] 28 | env: Environment, [INFO] [stderr] 29 | ) -> Result, Error> { [INFO] [stderr] | ^^^^^ the same lifetime is hidden here [INFO] [stderr] | [INFO] [stderr] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stderr] help: use `'_` for type paths [INFO] [stderr] | [INFO] [stderr] 29 | ) -> Result, Error<'_>> { [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stderr] --> src/interpreter.rs:72:25 [INFO] [stderr] | [INFO] [stderr] 72 | pub fn eval(script: &str, env: Environment) -> Result, Error> { [INFO] [stderr] | ^^^^ the lifetime is elided here ^^^^^ the same lifetime is hidden here [INFO] [stderr] | [INFO] [stderr] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stderr] help: use `'_` for type paths [INFO] [stderr] | [INFO] [stderr] 72 | pub fn eval(script: &str, env: Environment) -> Result, Error<'_>> { [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stderr] --> src/runtime/value.rs:71:18 [INFO] [stderr] | [INFO] [stderr] 71 | pub fn value(&self) -> RwLockReadGuard { [INFO] [stderr] | ^^^^^ ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stderr] | | [INFO] [stderr] | the lifetime is elided here [INFO] [stderr] | [INFO] [stderr] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stderr] help: use `'_` for type paths [INFO] [stderr] | [INFO] [stderr] 71 | pub fn value(&self) -> RwLockReadGuard<'_, Value> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stderr] --> src/runtime/value.rs:75:22 [INFO] [stderr] | [INFO] [stderr] 75 | pub fn value_mut(&self) -> RwLockWriteGuard { [INFO] [stderr] | ^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stderr] | | [INFO] [stderr] | the lifetime is elided here [INFO] [stderr] | [INFO] [stderr] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stderr] help: use `'_` for type paths [INFO] [stderr] | [INFO] [stderr] 75 | pub fn value_mut(&self) -> RwLockWriteGuard<'_, Value> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: `evalit` (lib) generated 65 warnings (run `cargo fix --lib -p evalit` to apply 6 suggestions) [INFO] [stderr] warning: `evalit` (lib test) generated 64 warnings (64 duplicates) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.22s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/evalit-f898364e5bf7122d) [INFO] [stdout] test compiler::parser::test::test_index_get_expression ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 33 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s [INFO] [stdout] [INFO] [stderr] Running tests/test_basic_types.rs (/opt/rustwide/target/debug/deps/test_basic_types-9715850d032e571e) [INFO] [stdout] [INFO] [stdout] running 8 tests [INFO] [stdout] test test_string ... ok [INFO] [stdout] test test_float ... ok [INFO] [stdout] test test_null ... ok [INFO] [stdout] test test_integer ... ok [INFO] [stdout] test test_boolean ... ok [INFO] [stdout] test test_map_basics ... ok [INFO] [stdout] test test_array_methods ... ok [INFO] [stdout] test test_map_methods ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 8 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.39s [INFO] [stdout] [INFO] [stderr] Running tests/test_control_flow.rs (/opt/rustwide/target/debug/deps/test_control_flow-4559d162e226fdd4) [INFO] [stdout] [INFO] [stdout] running 8 tests [INFO] [stdout] test test_if_statement ... ok [INFO] [stdout] test test_return_statement ... ok [INFO] [stdout] test test_while_statement ... ok [INFO] [stdout] test test_loop_statement ... ok [INFO] [stdout] test test_eval_control_flow ... ok [INFO] [stdout] test test_break_continue ... ok [INFO] [stdout] test test_for_statement ... ok [INFO] [stdout] test test_eval_for ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 8 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.63s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 7 tests [INFO] [stderr] Running tests/test_embed.rs (/opt/rustwide/target/debug/deps/test_embed-e2b51715f46f1d8a) [INFO] [stdout] test async_embed::test_rust_tcp_interop ... ok [INFO] [stdout] test test_shared_compiled_program ... ok [INFO] [stdout] test test_multiple_vm_instances ... ok [INFO] [stdout] test test_basic_embedding ... ok [INFO] [stdout] test test_rust_interop ... ok [INFO] [stdout] test test_rust_object_interop ... ok [INFO] [stderr] Running tests/test_function.rs (/opt/rustwide/target/debug/deps/test_function-87352434b085624b) [INFO] [stdout] test async_embed::test_rust_async_interop ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.14s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 14 tests [INFO] [stdout] test test_basic_function ... ok [INFO] [stdout] test test_function_scope ... ok [INFO] [stdout] test test_function_multiple_parameters ... ok [INFO] [stdout] test test_function_simple_call ... ok [INFO] [stdout] test test_function_higher_order ... ok [INFO] [stdout] test test_function_call_chain ... ok [INFO] [stdout] test test_function_with_params ... ok [INFO] [stdout] test test_multiple_returns ... ok [INFO] [stdout] test test_function_tail_call_optimization ... ok [INFO] [stdout] test test_function_with_control_flow ... ok [INFO] [stdout] test test_recursive_function ... ok [INFO] [stdout] test test_fibonacci ... ok [INFO] [stdout] test test_function_mutual_recursion ... ok [INFO] [stdout] test test_function_recursive_depth_exceeded has been running for over 60 seconds [ERROR] error running command: no output for 300 seconds [INFO] running `Command { std: "docker" "inspect" "93786956f91f4eac0f0b3f1614ea3d69517f74ae96744fd7157c794c1e686fbf", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "93786956f91f4eac0f0b3f1614ea3d69517f74ae96744fd7157c794c1e686fbf", kill_on_drop: false }` [INFO] [stdout] 93786956f91f4eac0f0b3f1614ea3d69517f74ae96744fd7157c794c1e686fbf