[INFO] cloning repository https://github.com/qiaojinxia/gwvm [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/qiaojinxia/gwvm" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fqiaojinxia%2Fgwvm", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fqiaojinxia%2Fgwvm'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 1fa8bfe52fcbb7bb615b2d88ce1cadfb249ce84a [INFO] checking qiaojinxia/gwvm against try#d8a5ee01b913730aca7ab44c72c8f2722c0533ff for pr-139022 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fqiaojinxia%2Fgwvm" "/workspace/builds/worker-5-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/qiaojinxia/gwvm on toolchain d8a5ee01b913730aca7ab44c72c8f2722c0533ff [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d8a5ee01b913730aca7ab44c72c8f2722c0533ff" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/qiaojinxia/gwvm [INFO] finished tweaking git repo https://github.com/qiaojinxia/gwvm [INFO] tweaked toml for git repo https://github.com/qiaojinxia/gwvm written to /workspace/builds/worker-5-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/qiaojinxia/gwvm 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" "+d8a5ee01b913730aca7ab44c72c8f2722c0533ff" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded zip v0.5.5 [INFO] [stderr] Downloaded podio v0.1.7 [INFO] [stderr] Downloaded bzip2-sys v0.1.9+1.0.8 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4b26683ee3c49f365255c425c23003cbf4366de097804722c29c5bbbee3624d2" "/opt/rustwide/cargo-home/bin/cargo" "+d8a5ee01b913730aca7ab44c72c8f2722c0533ff" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 8a021160b2ab322edf6d138c1de87db6fc80fa4021d7446f0b3b5f25184ca646 [INFO] running `Command { std: "docker" "start" "-a" "8a021160b2ab322edf6d138c1de87db6fc80fa4021d7446f0b3b5f25184ca646", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "8a021160b2ab322edf6d138c1de87db6fc80fa4021d7446f0b3b5f25184ca646", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "8a021160b2ab322edf6d138c1de87db6fc80fa4021d7446f0b3b5f25184ca646", kill_on_drop: false }` [INFO] [stdout] 8a021160b2ab322edf6d138c1de87db6fc80fa4021d7446f0b3b5f25184ca646 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4b26683ee3c49f365255c425c23003cbf4366de097804722c29c5bbbee3624d2" "/opt/rustwide/cargo-home/bin/cargo" "+d8a5ee01b913730aca7ab44c72c8f2722c0533ff" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 8ff31cc0408e8ac51c87e061f7c78959dfa716c6b36afbdb86226e67ea80d890 [INFO] running `Command { std: "docker" "start" "-a" "8ff31cc0408e8ac51c87e061f7c78959dfa716c6b36afbdb86226e67ea80d890", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.71 [INFO] [stderr] Compiling pkg-config v0.3.17 [INFO] [stderr] Compiling cc v1.0.54 [INFO] [stderr] Compiling crc32fast v1.2.0 [INFO] [stderr] Checking cfg-if v0.1.10 [INFO] [stderr] Checking adler32 v1.0.4 [INFO] [stderr] Compiling bitflags v1.2.1 [INFO] [stderr] Checking unicode-width v0.1.7 [INFO] [stderr] Checking podio v0.1.7 [INFO] [stderr] Checking vec_map v0.8.2 [INFO] [stderr] Checking same-file v1.0.6 [INFO] [stderr] Checking ansi_term v0.11.0 [INFO] [stderr] Checking strsim v0.8.0 [INFO] [stderr] Checking hex v0.3.2 [INFO] [stderr] Checking textwrap v0.11.0 [INFO] [stderr] Checking walkdir v2.3.1 [INFO] [stderr] Checking miniz_oxide v0.3.6 [INFO] [stderr] Compiling bzip2-sys v0.1.9+1.0.8 [INFO] [stderr] Checking atty v0.2.14 [INFO] [stderr] Checking time v0.1.43 [INFO] [stderr] Checking flate2 v1.0.14 [INFO] [stderr] Checking clap v2.33.1 [INFO] [stderr] Checking bzip2 v0.3.3 [INFO] [stderr] Checking zip v0.5.5 [INFO] [stderr] Checking gwvm v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] error[E0583]: file not found for module `instructions` [INFO] [stdout] --> src/vm/mod.rs:4:1 [INFO] [stdout] | [INFO] [stdout] 4 | pub mod instructions; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: to create the module `instructions`, create file "src/vm/instructions.rs" or "src/vm/instructions/mod.rs" [INFO] [stdout] = note: if there is a `mod instructions` elsewhere in the crate already, import it with `use crate::...` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0583]: file not found for module `instructions` [INFO] [stdout] --> src/vm/mod.rs:4:1 [INFO] [stdout] | [INFO] [stdout] 4 | pub mod instructions; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: to create the module `instructions`, create file "src/vm/instructions.rs" or "src/vm/instructions/mod.rs" [INFO] [stdout] = note: if there is a `mod instructions` elsewhere in the crate already, import it with `use crate::...` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Exceptions` and `LocalVaribleTable` [INFO] [stdout] --> src/classpath/class_reader.rs:6:56 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::classpath::classfile_attribute::Attribute::{Exceptions, LocalVaribleTable}; [INFO] [stdout] | ^^^^^^^^^^ ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fs::read` [INFO] [stdout] --> src/classpath/class_reader.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use std::fs::read; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/classpath/class_reader.rs:401:14 [INFO] [stdout] | [INFO] [stdout] 401 | 0...63 => StackMapFrameBody::SameFrame, [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/classpath/class_reader.rs:402:15 [INFO] [stdout] | [INFO] [stdout] 402 | 64...127 => { [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/classpath/class_reader.rs:414:16 [INFO] [stdout] | [INFO] [stdout] 414 | 248...250 => { [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/classpath/class_reader.rs:422:16 [INFO] [stdout] | [INFO] [stdout] 422 | 252...254 => { [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Attribute` [INFO] [stdout] --> src/classpath/classfile.rs:2:45 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::classpath::classfile_attribute::{Attribute, AttributeInfo}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::classpath::classfile::Constant` [INFO] [stdout] --> src/classpath/classfile_attribute.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::classpath::classfile::Constant; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Error` [INFO] [stdout] --> src/classpath/classfile_attribute.rs:6:16 [INFO] [stdout] | [INFO] [stdout] 6 | use std::fmt::{Error, Formatter}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `const_value_index` should have an upper camel case name [INFO] [stdout] --> src/classpath/classfile_attribute.rs:84:5 [INFO] [stdout] | [INFO] [stdout] 84 | const_value_index(U16ConstantIndex), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `ConstValueIndex` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `enum_const_value` should have an upper camel case name [INFO] [stdout] --> src/classpath/classfile_attribute.rs:85:5 [INFO] [stdout] | [INFO] [stdout] 85 | enum_const_value { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `EnumConstValue` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `class_info_index` should have an upper camel case name [INFO] [stdout] --> src/classpath/classfile_attribute.rs:89:5 [INFO] [stdout] | [INFO] [stdout] 89 | class_info_index(U16ConstantIndex), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `ClassInfoIndex` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `annotation_value` should have an upper camel case name [INFO] [stdout] --> src/classpath/classfile_attribute.rs:90:5 [INFO] [stdout] | [INFO] [stdout] 90 | annotation_value(Annotation), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `AnnotationValue` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `array_value` should have an upper camel case name [INFO] [stdout] --> src/classpath/classfile_attribute.rs:91:5 [INFO] [stdout] | [INFO] [stdout] 91 | array_value { [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to upper camel case: `ArrayValue` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::classpath::vmcode::Inst::Code` [INFO] [stdout] --> src/classpath/vmcode.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::classpath::vmcode::Inst::Code; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around match arm expression [INFO] [stdout] --> src/vm/stack.rs:168:31 [INFO] [stdout] | [INFO] [stdout] 168 | Slot::Num(val) => (*val as i64), [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 168 - Slot::Num(val) => (*val as i64), [INFO] [stdout] 168 + Slot::Num(val) => *val as i64, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around match arm expression [INFO] [stdout] --> src/vm/stack.rs:172:31 [INFO] [stdout] | [INFO] [stdout] 172 | Slot::Num(val) => (*val as i64), [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 172 - Slot::Num(val) => (*val as i64), [INFO] [stdout] 172 + Slot::Num(val) => *val as i64, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Exceptions` and `LocalVaribleTable` [INFO] [stdout] --> src/classpath/class_reader.rs:6:56 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::classpath::classfile_attribute::Attribute::{Exceptions, LocalVaribleTable}; [INFO] [stdout] | ^^^^^^^^^^ ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fs::read` [INFO] [stdout] --> src/classpath/class_reader.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use std::fs::read; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/classpath/class_reader.rs:401:14 [INFO] [stdout] | [INFO] [stdout] 401 | 0...63 => StackMapFrameBody::SameFrame, [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/classpath/class_reader.rs:402:15 [INFO] [stdout] | [INFO] [stdout] 402 | 64...127 => { [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/classpath/class_reader.rs:414:16 [INFO] [stdout] | [INFO] [stdout] 414 | 248...250 => { [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/classpath/class_reader.rs:422:16 [INFO] [stdout] | [INFO] [stdout] 422 | 252...254 => { [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Attribute` [INFO] [stdout] --> src/classpath/classfile.rs:2:45 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::classpath::classfile_attribute::{Attribute, AttributeInfo}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::classpath::classfile::Constant` [INFO] [stdout] --> src/classpath/classfile_attribute.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::classpath::classfile::Constant; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Error` [INFO] [stdout] --> src/classpath/classfile_attribute.rs:6:16 [INFO] [stdout] | [INFO] [stdout] 6 | use std::fmt::{Error, Formatter}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `const_value_index` should have an upper camel case name [INFO] [stdout] --> src/classpath/classfile_attribute.rs:84:5 [INFO] [stdout] | [INFO] [stdout] 84 | const_value_index(U16ConstantIndex), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `ConstValueIndex` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `enum_const_value` should have an upper camel case name [INFO] [stdout] --> src/classpath/classfile_attribute.rs:85:5 [INFO] [stdout] | [INFO] [stdout] 85 | enum_const_value { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `EnumConstValue` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `class_info_index` should have an upper camel case name [INFO] [stdout] --> src/classpath/classfile_attribute.rs:89:5 [INFO] [stdout] | [INFO] [stdout] 89 | class_info_index(U16ConstantIndex), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `ClassInfoIndex` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `annotation_value` should have an upper camel case name [INFO] [stdout] --> src/classpath/classfile_attribute.rs:90:5 [INFO] [stdout] | [INFO] [stdout] 90 | annotation_value(Annotation), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `AnnotationValue` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `array_value` should have an upper camel case name [INFO] [stdout] --> src/classpath/classfile_attribute.rs:91:5 [INFO] [stdout] | [INFO] [stdout] 91 | array_value { [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to upper camel case: `ArrayValue` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::classpath::vmcode::Inst::Code` [INFO] [stdout] --> src/classpath/vmcode.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::classpath::vmcode::Inst::Code; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around match arm expression [INFO] [stdout] --> src/vm/stack.rs:168:31 [INFO] [stdout] | [INFO] [stdout] 168 | Slot::Num(val) => (*val as i64), [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 168 - Slot::Num(val) => (*val as i64), [INFO] [stdout] 168 + Slot::Num(val) => *val as i64, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around match arm expression [INFO] [stdout] --> src/vm/stack.rs:172:31 [INFO] [stdout] | [INFO] [stdout] 172 | Slot::Num(val) => (*val as i64), [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 172 - Slot::Num(val) => (*val as i64), [INFO] [stdout] 172 + Slot::Num(val) => *val as i64, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused doc comment [INFO] [stdout] --> src/vm/stack.rs:332:5 [INFO] [stdout] | [INFO] [stdout] 332 | ///测试 Stack 压入farame 弹出 frame [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 333 | let f = Frame::new(10, 10); [INFO] [stdout] | --------------------------- rustdoc does not generate documentation for statements [INFO] [stdout] | [INFO] [stdout] = help: use `//` for a plain comment [INFO] [stdout] = note: `#[warn(unused_doc_comments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the feature `buffered_io_capacity` has been stable since 1.46.0 and no longer requires an attribute to enable [INFO] [stdout] --> src/main.rs:1:12 [INFO] [stdout] | [INFO] [stdout] 1 | #![feature(buffered_io_capacity)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(stable_features)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the feature `str_strip` has been stable since 1.45.0 and no longer requires an attribute to enable [INFO] [stdout] --> src/main.rs:2:12 [INFO] [stdout] | [INFO] [stdout] 2 | #![feature(str_strip)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the feature `buffered_io_capacity` has been stable since 1.46.0 and no longer requires an attribute to enable [INFO] [stdout] --> src/main.rs:1:12 [INFO] [stdout] | [INFO] [stdout] 1 | #![feature(buffered_io_capacity)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(stable_features)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the feature `str_strip` has been stable since 1.45.0 and no longer requires an attribute to enable [INFO] [stdout] --> src/main.rs:2:12 [INFO] [stdout] | [INFO] [stdout] 2 | #![feature(str_strip)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/classpath/class_reader.rs:86:21 [INFO] [stdout] | [INFO] [stdout] 86 | let mut attribute = self.read_attribute_info(constant_pool.as_ref())?; [INFO] [stdout] | ----^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/classpath/class_reader.rs:282:13 [INFO] [stdout] | [INFO] [stdout] 282 | let mut buf = &self.classreader[self.index..self.index + 4]; [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/classpath/class_reader.rs:309:13 [INFO] [stdout] | [INFO] [stdout] 309 | let mut buf = &self.classreader[self.index]; [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/classpath/class_reader.rs:86:21 [INFO] [stdout] | [INFO] [stdout] 86 | let mut attribute = self.read_attribute_info(constant_pool.as_ref())?; [INFO] [stdout] | ----^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/classpath/class_reader.rs:282:13 [INFO] [stdout] | [INFO] [stdout] 282 | let mut buf = &self.classreader[self.index..self.index + 4]; [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/classpath/classfile.rs:139:18 [INFO] [stdout] | [INFO] [stdout] 139 | for (i, v) in methodinfo.attribute_info.iter().enumerate() { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/classpath/class_reader.rs:309:13 [INFO] [stdout] | [INFO] [stdout] 309 | let mut buf = &self.classreader[self.index]; [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/classpath/classfile.rs:139:18 [INFO] [stdout] | [INFO] [stdout] 139 | for (i, v) in methodinfo.attribute_info.iter().enumerate() { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `res` [INFO] [stdout] --> src/classpath/classfile_attribute.rs:121:17 [INFO] [stdout] | [INFO] [stdout] 121 | let mut res = String::new(); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/classpath/classfile_attribute.rs:121:13 [INFO] [stdout] | [INFO] [stdout] 121 | let mut res = String::new(); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `res` [INFO] [stdout] --> src/classpath/classfile_attribute.rs:121:17 [INFO] [stdout] | [INFO] [stdout] 121 | let mut res = String::new(); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/classpath/classfile_attribute.rs:121:13 [INFO] [stdout] | [INFO] [stdout] 121 | let mut res = String::new(); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/classpath/classfile_attribute.rs:132:13 [INFO] [stdout] | [INFO] [stdout] 132 | let mut output = String::new(); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `f` [INFO] [stdout] --> src/classpath/classfile_attribute.rs:379:19 [INFO] [stdout] | [INFO] [stdout] 379 | fn fmt(&self, f: &mut Formatter<'_>) -> fmt::Result { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_f` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `f` [INFO] [stdout] --> src/classpath/classfile_attribute.rs:392:19 [INFO] [stdout] | [INFO] [stdout] 392 | fn fmt(&self, f: &mut Formatter<'_>) -> fmt::Result { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_f` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `f` [INFO] [stdout] --> src/classpath/classfile_attribute.rs:413:19 [INFO] [stdout] | [INFO] [stdout] 413 | fn fmt(&self, f: &mut Formatter<'_>) -> fmt::Result { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_f` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `f` [INFO] [stdout] --> src/classpath/classfile_attribute.rs:433:19 [INFO] [stdout] | [INFO] [stdout] 433 | fn fmt(&self, f: &mut Formatter<'_>) -> fmt::Result { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_f` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `f` [INFO] [stdout] --> src/classpath/classfile_attribute.rs:445:19 [INFO] [stdout] | [INFO] [stdout] 445 | fn fmt(&self, f: &mut Formatter<'_>) -> fmt::Result { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_f` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `f` [INFO] [stdout] --> src/classpath/classfile_attribute.rs:485:19 [INFO] [stdout] | [INFO] [stdout] 485 | fn fmt(&self, f: &mut Formatter<'_>) -> fmt::Result { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_f` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/classpath/classfile_attribute.rs:132:13 [INFO] [stdout] | [INFO] [stdout] 132 | let mut output = String::new(); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `f` [INFO] [stdout] --> src/classpath/classfile_attribute.rs:379:19 [INFO] [stdout] | [INFO] [stdout] 379 | fn fmt(&self, f: &mut Formatter<'_>) -> fmt::Result { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_f` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `f` [INFO] [stdout] --> src/classpath/classfile_attribute.rs:392:19 [INFO] [stdout] | [INFO] [stdout] 392 | fn fmt(&self, f: &mut Formatter<'_>) -> fmt::Result { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_f` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `f` [INFO] [stdout] --> src/classpath/classfile_attribute.rs:413:19 [INFO] [stdout] | [INFO] [stdout] 413 | fn fmt(&self, f: &mut Formatter<'_>) -> fmt::Result { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_f` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `f` [INFO] [stdout] --> src/classpath/classfile_attribute.rs:433:19 [INFO] [stdout] | [INFO] [stdout] 433 | fn fmt(&self, f: &mut Formatter<'_>) -> fmt::Result { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_f` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `f` [INFO] [stdout] --> src/classpath/classfile_attribute.rs:445:19 [INFO] [stdout] | [INFO] [stdout] 445 | fn fmt(&self, f: &mut Formatter<'_>) -> fmt::Result { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_f` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `f` [INFO] [stdout] --> src/classpath/classfile_attribute.rs:485:19 [INFO] [stdout] | [INFO] [stdout] 485 | fn fmt(&self, f: &mut Formatter<'_>) -> fmt::Result { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_f` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `index` [INFO] [stdout] --> src/vm/stack.rs:213:31 [INFO] [stdout] | [INFO] [stdout] 213 | pub fn pop_int(&mut self, index: usize) { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/vm/stack.rs:227:25 [INFO] [stdout] | [INFO] [stdout] 227 | let m = unsafe { val as u32 }; [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_unsafe)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0583`. [INFO] [stdout] [INFO] [stdout] warning: unused variable: `index` [INFO] [stdout] --> src/vm/stack.rs:213:31 [INFO] [stdout] | [INFO] [stdout] 213 | pub fn pop_int(&mut self, index: usize) { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/vm/stack.rs:227:25 [INFO] [stdout] | [INFO] [stdout] 227 | let m = unsafe { val as u32 }; [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_unsafe)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `gwvm` (bin "gwvm") due to 1 previous error; 34 warnings emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] error[E0382]: borrow of moved value: `oo` [INFO] [stdout] --> src/vm/stack.rs:321:37 [INFO] [stdout] | [INFO] [stdout] 318 | let oo = Arc::new(Object {}); [INFO] [stdout] | -- move occurs because `oo` has type `Arc`, which does not implement the `Copy` trait [INFO] [stdout] 319 | assert_eq!(1, Arc::strong_count(&oo)); [INFO] [stdout] 320 | b.push_ref(oo); [INFO] [stdout] | -- value moved here [INFO] [stdout] 321 | assert_eq!(2, Arc::strong_count(&oo)); [INFO] [stdout] | ^^^ value borrowed here after move [INFO] [stdout] | [INFO] [stdout] note: consider changing this parameter type in method `push_ref` to borrow instead if owning the value isn't necessary [INFO] [stdout] --> src/vm/stack.rs:265:37 [INFO] [stdout] | [INFO] [stdout] 265 | pub fn push_ref(&mut self, obj: Arc) { [INFO] [stdout] | -------- in this method ^^^^^^^^^^^ this parameter takes ownership of the value [INFO] [stdout] help: clone the value to increment its reference count [INFO] [stdout] | [INFO] [stdout] 320 | b.push_ref(oo.clone()); [INFO] [stdout] | ++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0382, E0583. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0382`. [INFO] [stdout] [INFO] [stderr] error: could not compile `gwvm` (bin "gwvm" test) due to 2 previous errors; 35 warnings emitted [INFO] running `Command { std: "docker" "inspect" "8ff31cc0408e8ac51c87e061f7c78959dfa716c6b36afbdb86226e67ea80d890", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "8ff31cc0408e8ac51c87e061f7c78959dfa716c6b36afbdb86226e67ea80d890", kill_on_drop: false }` [INFO] [stdout] 8ff31cc0408e8ac51c87e061f7c78959dfa716c6b36afbdb86226e67ea80d890