[INFO] cloning repository https://github.com/gmadrid/rzm [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/gmadrid/rzm" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fgmadrid%2Frzm", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fgmadrid%2Frzm'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] d896e789f7381f7a699ce67f57f9bccbfb82e84f [INFO] checking gmadrid/rzm against master#33fdb797f59421c7bbecaa4588ed5d7a31a9494a for pr-87190-3 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fgmadrid%2Frzm" "/workspace/builds/worker-21/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-21/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/gmadrid/rzm on toolchain 33fdb797f59421c7bbecaa4588ed5d7a31a9494a [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+33fdb797f59421c7bbecaa4588ed5d7a31a9494a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/gmadrid/rzm [INFO] finished tweaking git repo https://github.com/gmadrid/rzm [INFO] tweaked toml for git repo https://github.com/gmadrid/rzm written to /workspace/builds/worker-21/source/Cargo.toml [INFO] crate git repo https://github.com/gmadrid/rzm already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+33fdb797f59421c7bbecaa4588ed5d7a31a9494a" "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] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-21/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-21/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:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+33fdb797f59421c7bbecaa4588ed5d7a31a9494a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 50af61468154c4ddebe29acf5028ccdd2fa79fea35d5a8db9fe26711ded41556 [INFO] running `Command { std: "docker" "start" "-a" "50af61468154c4ddebe29acf5028ccdd2fa79fea35d5a8db9fe26711ded41556", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "50af61468154c4ddebe29acf5028ccdd2fa79fea35d5a8db9fe26711ded41556", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "50af61468154c4ddebe29acf5028ccdd2fa79fea35d5a8db9fe26711ded41556", kill_on_drop: false }` [INFO] [stdout] 50af61468154c4ddebe29acf5028ccdd2fa79fea35d5a8db9fe26711ded41556 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-21/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-21/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" "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:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+33fdb797f59421c7bbecaa4588ed5d7a31a9494a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 89987a77f03f18ae5f3ee3ada27ec1c2fdcad6c5f1ad1386f7d5e578dab2c658 [INFO] running `Command { std: "docker" "start" "-a" "89987a77f03f18ae5f3ee3ada27ec1c2fdcad6c5f1ad1386f7d5e578dab2c658", kill_on_drop: false }` [INFO] [stderr] Checking libc v0.2.17 [INFO] [stderr] Checking regex-syntax v0.3.9 [INFO] [stderr] Checking utf8-ranges v0.1.3 [INFO] [stderr] Checking log v0.3.6 [INFO] [stderr] Checking strsim v0.5.1 [INFO] [stderr] Checking unicode-width v0.1.3 [INFO] [stderr] Checking bitflags v0.7.0 [INFO] [stderr] Checking unicode-segmentation v0.1.2 [INFO] [stderr] Checking ansi_term v0.9.0 [INFO] [stderr] Checking vec_map v0.6.0 [INFO] [stderr] Checking byteorder v0.5.3 [INFO] [stderr] Checking memchr v0.1.11 [INFO] [stderr] Checking thread-id v2.0.0 [INFO] [stderr] Checking term_size v0.2.1 [INFO] [stderr] Checking rand v0.3.15 [INFO] [stderr] Checking ncurses v5.84.0 [INFO] [stderr] Checking thread_local v0.2.7 [INFO] [stderr] Checking aho-corasick v0.5.3 [INFO] [stderr] Checking clap v2.16.4 [INFO] [stderr] Checking regex v0.1.80 [INFO] [stderr] Checking env_logger v0.3.5 [INFO] [stderr] Checking rzm v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/zmachine/ops/branch.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | ((word | 0b1100000000000000) as i16) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/zmachine/ops/text.rs:81:24 [INFO] [stdout] | [INFO] [stdout] 81 | 0x01u16...0x03u16 => { [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) 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/zmachine/ops/text.rs:175:7 [INFO] [stdout] | [INFO] [stdout] 175 | 32...126 => { [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition. [INFO] [stdout] --> src/zmachine/vm/vm.rs:95:31 [INFO] [stdout] | [INFO] [stdout] 95 | fn write_status_line(&self, &str); [INFO] [stdout] | ^^^^ help: try naming the parameter or explicitly ignoring it: `_: &str` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(anonymous_parameters)]` on by default [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition. [INFO] [stdout] --> src/zmachine/vm/vm.rs:97:36 [INFO] [stdout] | [INFO] [stdout] 97 | fn write_main_window_char(&self, u16); [INFO] [stdout] | ^^^ help: try naming the parameter or explicitly ignoring it: `_: u16` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition. [INFO] [stdout] --> src/zmachine/vm/vm.rs:98:31 [INFO] [stdout] | [INFO] [stdout] 98 | fn write_main_window(&self, &str); [INFO] [stdout] | ^^^^ help: try naming the parameter or explicitly ignoring it: `_: &str` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/zmachine/vm/vm.rs:145:11 [INFO] [stdout] | [INFO] [stdout] 145 | 0x01...0x0f => VariableRef::Local(encoded - 0x01), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) 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/zmachine/vm/vm.rs:146:11 [INFO] [stdout] | [INFO] [stdout] 146 | 0x10...0xff => VariableRef::Global(encoded - 0x10), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/zmachine/vm/zvm.rs:232:40 [INFO] [stdout] | [INFO] [stdout] 232 | ... op_func: &Fn(&mut Self, Operand, VariableRef) -> Result<()>) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&mut Self, Operand, VariableRef) -> Result<()>` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/zmachine/vm/zvm.rs:282:35 [INFO] [stdout] | [INFO] [stdout] 282 | op_func: &Fn(&mut Self, Operand, Operand) -> Result<()>) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&mut Self, Operand, Operand) -> Result<()>` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/zmachine/vm/zvm.rs:292:41 [INFO] [stdout] | [INFO] [stdout] 292 | ... op_func: &Fn(&mut Self, Operand, Operand, VariableRef) -> Result<()>) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&mut Self, Operand, Operand, VariableRef) -> Result<()>` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0432]: unresolved import `zmachine::vm::object_table::ZPropertyAccess` [INFO] [stdout] --> src/zmachine/vm/mock_object_table.rs:4:57 [INFO] [stdout] | [INFO] [stdout] 4 | use zmachine::vm::object_table::{ZObject, ZObjectTable, ZPropertyAccess, ZPropertyTable}; [INFO] [stdout] | ^^^^^^^^^^^^^^^ no `ZPropertyAccess` in `zmachine::vm::object_table` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0437]: type `ObjStorage` is not a member of trait `VM` [INFO] [stdout] --> src/zmachine/ops/testvm.rs:72:3 [INFO] [stdout] | [INFO] [stdout] 72 | type ObjStorage = MockObjectTableStorage; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not a member of trait `VM` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0437]: type `PropertyAccess` is not a member of trait `VM` [INFO] [stdout] --> src/zmachine/ops/testvm.rs:74:3 [INFO] [stdout] | [INFO] [stdout] 74 | type PropertyAccess = MockPropertyTableStorage; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not a member of trait `VM` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0407]: method `object_storage` is not a member of trait `VM` [INFO] [stdout] --> src/zmachine/ops/testvm.rs:161:3 [INFO] [stdout] | [INFO] [stdout] 161 | / fn object_storage(&self) -> &Self::ObjStorage { [INFO] [stdout] 162 | | &self.object_storage [INFO] [stdout] 163 | | } [INFO] [stdout] | |___^ not a member of trait `VM` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0407]: method `object_storage_mut` is not a member of trait `VM` [INFO] [stdout] --> src/zmachine/ops/testvm.rs:165:3 [INFO] [stdout] | [INFO] [stdout] 165 | / fn object_storage_mut(&mut self) -> &mut Self::ObjStorage { [INFO] [stdout] 166 | | &mut self.object_storage [INFO] [stdout] 167 | | } [INFO] [stdout] | |___^ not a member of trait `VM` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0407]: method `property_storage` is not a member of trait `VM` [INFO] [stdout] --> src/zmachine/ops/testvm.rs:169:3 [INFO] [stdout] | [INFO] [stdout] 169 | / fn property_storage(&self) -> &Self::PropertyAccess { [INFO] [stdout] 170 | | &self.property_storage [INFO] [stdout] 171 | | } [INFO] [stdout] | |___^ not a member of trait `VM` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0407]: method `property_storage_mut` is not a member of trait `VM` [INFO] [stdout] --> src/zmachine/ops/testvm.rs:173:3 [INFO] [stdout] | [INFO] [stdout] 173 | / fn property_storage_mut(&mut self) -> &mut Self::PropertyAccess { [INFO] [stdout] 174 | | &mut self.property_storage [INFO] [stdout] 175 | | } [INFO] [stdout] | |___^ not a member of trait `VM` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0437]: type `DataAccess` is not a member of trait `ZObjectTable` [INFO] [stdout] --> src/zmachine/vm/mock_object_table.rs:98:3 [INFO] [stdout] | [INFO] [stdout] 98 | type DataAccess = MockObjectTableStorage; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not a member of trait `ZObjectTable` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0437]: type `PropertyAccess` is not a member of trait `ZObjectTable` [INFO] [stdout] --> src/zmachine/vm/mock_object_table.rs:100:3 [INFO] [stdout] | [INFO] [stdout] 100 | type PropertyAccess = MockPropertyTableStorage; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not a member of trait `ZObjectTable` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0437]: type `DataAccess` is not a member of trait `ZObject` [INFO] [stdout] --> src/zmachine/vm/mock_object_table.rs:112:3 [INFO] [stdout] | [INFO] [stdout] 112 | type DataAccess = MockObjectTableStorage; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not a member of trait `ZObject` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0437]: type `PropertyAccess` is not a member of trait `ZPropertyTable` [INFO] [stdout] --> src/zmachine/vm/mock_object_table.rs:170:3 [INFO] [stdout] | [INFO] [stdout] 170 | type PropertyAccess = MockPropertyTableStorage; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not a member of trait `ZPropertyTable` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/zmachine/ops/branch.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | ((word | 0b1100000000000000) as i16) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `VariableRef` [INFO] [stdout] --> src/zmachine/ops/branch.rs:183:26 [INFO] [stdout] | [INFO] [stdout] 183 | use zmachine::vm::{VM, VariableRef}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `result::Result` [INFO] [stdout] --> src/zmachine/ops/load.rs:110:7 [INFO] [stdout] | [INFO] [stdout] 110 | use result::Result; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/zmachine/ops/text.rs:81:24 [INFO] [stdout] | [INFO] [stdout] 81 | 0x01u16...0x03u16 => { [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) 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/zmachine/ops/text.rs:175:7 [INFO] [stdout] | [INFO] [stdout] 175 | 32...126 => { [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BytePtr`, `Memory` [INFO] [stdout] --> src/zmachine/ops/testvm.rs:3:20 [INFO] [stdout] | [INFO] [stdout] 3 | use zmachine::vm::{BytePtr, Memory, RawPtr, VM, VariableRef, WordPtr}; [INFO] [stdout] | ^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `RawPtr` [INFO] [stdout] --> src/zmachine/vm/memory.rs:134:37 [INFO] [stdout] | [INFO] [stdout] 134 | use super::super::ptrs::{BytePtr, RawPtr}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition. [INFO] [stdout] --> src/zmachine/vm/vm.rs:95:31 [INFO] [stdout] | [INFO] [stdout] 95 | fn write_status_line(&self, &str); [INFO] [stdout] | ^^^^ help: try naming the parameter or explicitly ignoring it: `_: &str` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(anonymous_parameters)]` on by default [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition. [INFO] [stdout] --> src/zmachine/vm/vm.rs:97:36 [INFO] [stdout] | [INFO] [stdout] 97 | fn write_main_window_char(&self, u16); [INFO] [stdout] | ^^^ help: try naming the parameter or explicitly ignoring it: `_: u16` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition. [INFO] [stdout] --> src/zmachine/vm/vm.rs:98:31 [INFO] [stdout] | [INFO] [stdout] 98 | fn write_main_window(&self, &str); [INFO] [stdout] | ^^^^ help: try naming the parameter or explicitly ignoring it: `_: &str` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018! [INFO] [stdout] = note: for more information, see issue #41686 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/zmachine/vm/vm.rs:145:11 [INFO] [stdout] | [INFO] [stdout] 145 | 0x01...0x0f => VariableRef::Local(encoded - 0x01), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) 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/zmachine/vm/vm.rs:146:11 [INFO] [stdout] | [INFO] [stdout] 146 | 0x10...0xff => VariableRef::Global(encoded - 0x10), [INFO] [stdout] | ^^^ help: use `..=` for an inclusive range [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/zmachine/vm/zvm.rs:232:40 [INFO] [stdout] | [INFO] [stdout] 232 | ... op_func: &Fn(&mut Self, Operand, VariableRef) -> Result<()>) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&mut Self, Operand, VariableRef) -> Result<()>` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/zmachine/vm/zvm.rs:282:35 [INFO] [stdout] | [INFO] [stdout] 282 | op_func: &Fn(&mut Self, Operand, Operand) -> Result<()>) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&mut Self, Operand, Operand) -> Result<()>` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/zmachine/vm/zvm.rs:292:41 [INFO] [stdout] | [INFO] [stdout] 292 | ... op_func: &Fn(&mut Self, Operand, Operand, VariableRef) -> Result<()>) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&mut Self, Operand, Operand, VariableRef) -> Result<()>` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 11 previous errors; 15 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0407, E0432, E0437. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0407`. [INFO] [stdout] [INFO] [stderr] error: could not compile `rzm` due to 12 previous errors; 15 warnings emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/zmachine/vm/vm.rs:147:7 [INFO] [stdout] | [INFO] [stdout] 147 | _ => panic!("What is this number: {}", encoded), [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/zmachine/vm/stack.rs:171:9 [INFO] [stdout] | [INFO] [stdout] 171 | let mut slice = self.stack.as_mut_slice(); [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/zmachine/vm/stack.rs:177:9 [INFO] [stdout] | [INFO] [stdout] 177 | let mut slice = self.stack.as_mut_slice(); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021. [INFO] [stdout] --> src/zmachine/ops/call.rs:25:32 [INFO] [stdout] | [INFO] [stdout] 25 | for (i, operand) in operands.into_iter().enumerate() { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(array_into_iter)]` on by default [INFO] [stdout] = warning: this changes meaning in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity [INFO] [stdout] | [INFO] [stdout] 25 | for (i, operand) in operands.iter().enumerate() { [INFO] [stdout] | ~~~~ [INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value [INFO] [stdout] | [INFO] [stdout] 25 | for (i, operand) in IntoIterator::into_iter(operands).enumerate() { [INFO] [stdout] | ++++++++++++++++++++++++ ~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021. [INFO] [stdout] --> src/zmachine/ops/text.rs:62:31 [INFO] [stdout] | [INFO] [stdout] 62 | for ch in [ch1, ch2, ch3].into_iter() { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity [INFO] [stdout] | [INFO] [stdout] 62 | for ch in [ch1, ch2, ch3].iter() { [INFO] [stdout] | ~~~~ [INFO] [stdout] help: or remove `.into_iter()` to iterate by value [INFO] [stdout] | [INFO] [stdout] 62 - for ch in [ch1, ch2, ch3].into_iter() { [INFO] [stdout] 62 + for ch in [ch1, ch2, ch3] { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> src/zmachine/vm/quetzal.rs:50:5 [INFO] [stdout] | [INFO] [stdout] 50 | &self.bytes.write_u16::(memory.u16_at(BytePtr::new(0x02))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 50 | let _ = &self.bytes.write_u16::(memory.u16_at(BytePtr::new(0x02))); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> src/zmachine/vm/quetzal.rs:55:7 [INFO] [stdout] | [INFO] [stdout] 55 | &self.bytes.write_u8(memory.u8_at(ptr.inc_by(i))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 55 | let _ = &self.bytes.write_u8(memory.u8_at(ptr.inc_by(i))); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> src/zmachine/vm/quetzal.rs:59:5 [INFO] [stdout] | [INFO] [stdout] 59 | &self.bytes.write_u16::(memory.u16_at(BytePtr::new(0x1c))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 59 | let _ = &self.bytes.write_u16::(memory.u16_at(BytePtr::new(0x1c))); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> src/zmachine/vm/quetzal.rs:64:5 [INFO] [stdout] | [INFO] [stdout] 64 | &self.bytes.write_u8((pc_as_u32 >> 16) as u8); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 64 | let _ = &self.bytes.write_u8((pc_as_u32 >> 16) as u8); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> src/zmachine/vm/quetzal.rs:65:5 [INFO] [stdout] | [INFO] [stdout] 65 | &self.bytes.write_u16::(pc_as_u32 as u16); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 65 | let _ = &self.bytes.write_u16::(pc_as_u32 as u16); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> src/zmachine/vm/quetzal.rs:82:9 [INFO] [stdout] | [INFO] [stdout] 82 | &self.bytes.write_u32::(return_and_flags); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 82 | let _ = &self.bytes.write_u32::(return_and_flags); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> src/zmachine/vm/quetzal.rs:83:9 [INFO] [stdout] | [INFO] [stdout] 83 | &self.bytes.write_u8(retvar); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 83 | let _ = &self.bytes.write_u8(retvar); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> src/zmachine/vm/quetzal.rs:84:9 [INFO] [stdout] | [INFO] [stdout] 84 | &self.bytes.write_u8(0); // TODO: num arguments passed. [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 84 | let _ = &self.bytes.write_u8(0); // TODO: num arguments passed. [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> src/zmachine/vm/quetzal.rs:85:9 [INFO] [stdout] | [INFO] [stdout] 85 | &self.bytes.write_u16::(eval_stack.len() as u16); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 85 | let _ = &self.bytes.write_u16::(eval_stack.len() as u16); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> src/zmachine/vm/quetzal.rs:88:11 [INFO] [stdout] | [INFO] [stdout] 88 | &self.bytes.write_u16::(local); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 88 | let _ = &self.bytes.write_u16::(local); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> src/zmachine/vm/quetzal.rs:92:11 [INFO] [stdout] | [INFO] [stdout] 92 | &self.bytes.write_u16::(eval_word); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 92 | let _ = &self.bytes.write_u16::(eval_word); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 27 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: build failed [INFO] running `Command { std: "docker" "inspect" "89987a77f03f18ae5f3ee3ada27ec1c2fdcad6c5f1ad1386f7d5e578dab2c658", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "89987a77f03f18ae5f3ee3ada27ec1c2fdcad6c5f1ad1386f7d5e578dab2c658", kill_on_drop: false }` [INFO] [stdout] 89987a77f03f18ae5f3ee3ada27ec1c2fdcad6c5f1ad1386f7d5e578dab2c658