[INFO] cloning repository https://github.com/toshok/rusttalk [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/toshok/rusttalk" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftoshok%2Frusttalk", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftoshok%2Frusttalk'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 2f59891b4e15148827d89ad85b6aeb41ee32df1c [INFO] testing toshok/rusttalk against master#cdb45c87e2cd43495379f7e867e3cc15dcee9f93 for pr-145838-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftoshok%2Frusttalk" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/toshok/rusttalk [INFO] finished tweaking git repo https://github.com/toshok/rusttalk [INFO] tweaked toml for git repo https://github.com/toshok/rusttalk written to /workspace/builds/worker-7-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/toshok/rusttalk 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 git repo https://github.com/toshok/rusttalk 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] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded byteorder v1.3.1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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] ac4dd58e2688660043ec051dec4388d361b40e91060de6fc3674ac5bdd4361a1 [INFO] running `Command { std: "docker" "start" "-a" "ac4dd58e2688660043ec051dec4388d361b40e91060de6fc3674ac5bdd4361a1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "ac4dd58e2688660043ec051dec4388d361b40e91060de6fc3674ac5bdd4361a1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ac4dd58e2688660043ec051dec4388d361b40e91060de6fc3674ac5bdd4361a1", kill_on_drop: false }` [INFO] [stdout] ac4dd58e2688660043ec051dec4388d361b40e91060de6fc3674ac5bdd4361a1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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] 4643bbfc5caf50eb30d9a05600c7f5da71c93f7cd425f257599c914f30e0f19a [INFO] running `Command { std: "docker" "start" "-a" "4643bbfc5caf50eb30d9a05600c7f5da71c93f7cd425f257599c914f30e0f19a", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stderr] Compiling byteorder v1.3.1 [INFO] [stderr] Compiling rusttalk v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/interp.rs:115:18 [INFO] [stdout] | [INFO] [stdout] 115 | 0...15 => self.push_receiver_var(bytecode), [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] = note: `#[warn(ellipsis_inclusive_range_patterns)]` (part of `#[warn(rust_2021_compatibility)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/interp.rs:116:19 [INFO] [stdout] | [INFO] [stdout] 116 | 16...31 => self.push_temp_var(bytecode), [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/interp.rs:117:19 [INFO] [stdout] | [INFO] [stdout] 117 | 32...63 => self.push_literal_const(bytecode), [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/interp.rs:118:19 [INFO] [stdout] | [INFO] [stdout] 118 | 64...95 => self.push_literal_var(bytecode), [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/interp.rs:119:19 [INFO] [stdout] | [INFO] [stdout] 119 | 96...103 => self.pop_and_store_receiver_var(bytecode), [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/interp.rs:120:20 [INFO] [stdout] | [INFO] [stdout] 120 | 104...111 => self.pop_and_store_temp_var(bytecode), [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/interp.rs:136:20 [INFO] [stdout] | [INFO] [stdout] 136 | 126...127 => panic!("illegal bytecode"), [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/interp.rs:147:20 [INFO] [stdout] | [INFO] [stdout] 147 | 138...143 => panic!("illegal bytecode"), [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/interp.rs:148:20 [INFO] [stdout] | [INFO] [stdout] 148 | 144...151 => self.short_unconditional_jump(bytecode), [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/interp.rs:149:20 [INFO] [stdout] | [INFO] [stdout] 149 | 152...159 => self.jump_if_false(bytecode), [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/interp.rs:150:20 [INFO] [stdout] | [INFO] [stdout] 150 | 160...167 => self.extended_unconditional_jump(bytecode), [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/interp.rs:151:20 [INFO] [stdout] | [INFO] [stdout] 151 | 168...171 => self.extended_jump_on_true(bytecode), [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/interp.rs:152:20 [INFO] [stdout] | [INFO] [stdout] 152 | 172...175 => self.extended_jump_on_false(bytecode), [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/interp.rs:153:20 [INFO] [stdout] | [INFO] [stdout] 153 | 176...191 => self.send_arith_msg(bytecode), [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/interp.rs:154:20 [INFO] [stdout] | [INFO] [stdout] 154 | 192...207 => panic!("special ops not implemented"), //sCommonMsg [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/interp.rs:155:20 [INFO] [stdout] | [INFO] [stdout] 155 | 208...223 => self.send_literal_with_argc(bytecode, 0), [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/interp.rs:156:20 [INFO] [stdout] | [INFO] [stdout] 156 | 224...239 => self.send_literal_with_argc(bytecode, 1), [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/interp.rs:157:20 [INFO] [stdout] | [INFO] [stdout] 157 | 240...255 => self.send_literal_with_argc(bytecode, 2), [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: unnecessary parentheses around block return value [INFO] [stdout] --> src/interp.rs:643:9 [INFO] [stdout] | [INFO] [stdout] 643 | ((self.lit_cnt_hdr(hdr) + LITERAL_START) * mem::size_of::() as u32 + 1) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 643 - ((self.lit_cnt_hdr(hdr) + LITERAL_START) * mem::size_of::() as u32 + 1) [INFO] [stdout] 643 + (self.lit_cnt_hdr(hdr) + LITERAL_START) * mem::size_of::() as u32 + 1 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/interp.rs:647:9 [INFO] [stdout] | [INFO] [stdout] 647 | (((hdr) & 0x0F80) >> 7) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 647 - (((hdr) & 0x0F80) >> 7) [INFO] [stdout] 647 + ((hdr) & 0x0F80) >> 7 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the feature `ptr_offset_from` has been stable since 1.47.0 and no longer requires an attribute to enable [INFO] [stdout] --> src/main.rs:1:12 [INFO] [stdout] | [INFO] [stdout] 1 | #![feature(ptr_offset_from)] [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(stable_features)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/snapshot.rs:22:65 [INFO] [stdout] | [INFO] [stdout] 22 | Err(why) => panic!("couldn't open {}: {}", display, why.description()), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `msg_selector` [INFO] [stdout] --> src/interp.rs:557:21 [INFO] [stdout] | [INFO] [stdout] 557 | let msg_selector = self.msg_selector; [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_msg_selector` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/om.rs:488:17 [INFO] [stdout] | [INFO] [stdout] 488 | CLASS_ARRAY => print!("(array)"), [INFO] [stdout] | ^^^^^^^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/om.rs:488:17 [INFO] [stdout] | [INFO] [stdout] 486 | CLASS_SMALL_INTEGER => print!("(smi)"), [INFO] [stdout] | ------------------- matches some of the same values [INFO] [stdout] 487 | CLASS_STRING => print!("(string)"), [INFO] [stdout] | ------------ matches some of the same values [INFO] [stdout] 488 | CLASS_ARRAY => print!("(array)"), [INFO] [stdout] | ^^^^^^^^^^^ collectively making this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/om.rs:489:17 [INFO] [stdout] | [INFO] [stdout] 489 | CLASS_FLOAT => print!("(float)"), [INFO] [stdout] | ^^^^^^^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/om.rs:489:17 [INFO] [stdout] | [INFO] [stdout] 486 | CLASS_SMALL_INTEGER => print!("(smi)"), [INFO] [stdout] | ------------------- matches some of the same values [INFO] [stdout] 487 | CLASS_STRING => print!("(string)"), [INFO] [stdout] | ------------ matches some of the same values [INFO] [stdout] 488 | CLASS_ARRAY => print!("(array)"), [INFO] [stdout] 489 | CLASS_FLOAT => print!("(float)"), [INFO] [stdout] | ^^^^^^^^^^^ collectively making this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/om.rs:490:17 [INFO] [stdout] | [INFO] [stdout] 490 | CLASS_METH_CTX => print!("(meth_ctx)"), [INFO] [stdout] | ^^^^^^^^^^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/om.rs:490:17 [INFO] [stdout] | [INFO] [stdout] 486 | CLASS_SMALL_INTEGER => print!("(smi)"), [INFO] [stdout] | ------------------- matches some of the same values [INFO] [stdout] 487 | CLASS_STRING => print!("(string)"), [INFO] [stdout] | ------------ matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 490 | CLASS_METH_CTX => print!("(meth_ctx)"), [INFO] [stdout] | ^^^^^^^^^^^^^^ collectively making this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/om.rs:491:17 [INFO] [stdout] | [INFO] [stdout] 491 | CLASS_BLOCK_CTX => print!("(block_ctx)"), [INFO] [stdout] | ^^^^^^^^^^^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/om.rs:491:17 [INFO] [stdout] | [INFO] [stdout] 486 | CLASS_SMALL_INTEGER => print!("(smi)"), [INFO] [stdout] | ------------------- matches some of the same values [INFO] [stdout] 487 | CLASS_STRING => print!("(string)"), [INFO] [stdout] | ------------ matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 491 | CLASS_BLOCK_CTX => print!("(block_ctx)"), [INFO] [stdout] | ^^^^^^^^^^^^^^^ collectively making this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/om.rs:492:17 [INFO] [stdout] | [INFO] [stdout] 492 | CLASS_POINT => print!("(point)"), [INFO] [stdout] | ^^^^^^^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/om.rs:492:17 [INFO] [stdout] | [INFO] [stdout] 486 | CLASS_SMALL_INTEGER => print!("(smi)"), [INFO] [stdout] | ------------------- matches some of the same values [INFO] [stdout] 487 | CLASS_STRING => print!("(string)"), [INFO] [stdout] | ------------ matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 492 | CLASS_POINT => print!("(point)"), [INFO] [stdout] | ^^^^^^^^^^^ collectively making this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/om.rs:493:17 [INFO] [stdout] | [INFO] [stdout] 493 | CLASS_LG_POS_INT => print!("(lg_pos_int)"), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/om.rs:493:17 [INFO] [stdout] | [INFO] [stdout] 486 | CLASS_SMALL_INTEGER => print!("(smi)"), [INFO] [stdout] | ------------------- matches some of the same values [INFO] [stdout] 487 | CLASS_STRING => print!("(string)"), [INFO] [stdout] | ------------ matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 493 | CLASS_LG_POS_INT => print!("(lg_pos_int)"), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ collectively making this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/om.rs:494:17 [INFO] [stdout] | [INFO] [stdout] 494 | CLASS_DISPLAY_BITMAP => print!("(display_bitmap)"), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/om.rs:494:17 [INFO] [stdout] | [INFO] [stdout] 486 | CLASS_SMALL_INTEGER => print!("(smi)"), [INFO] [stdout] | ------------------- matches some of the same values [INFO] [stdout] 487 | CLASS_STRING => print!("(string)"), [INFO] [stdout] | ------------ matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 494 | CLASS_DISPLAY_BITMAP => print!("(display_bitmap)"), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ collectively making this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/om.rs:495:17 [INFO] [stdout] | [INFO] [stdout] 495 | CLASS_MSG => print!("(message)"), [INFO] [stdout] | ^^^^^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/om.rs:495:17 [INFO] [stdout] | [INFO] [stdout] 486 | CLASS_SMALL_INTEGER => print!("(smi)"), [INFO] [stdout] | ------------------- matches some of the same values [INFO] [stdout] 487 | CLASS_STRING => print!("(string)"), [INFO] [stdout] | ------------ matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 495 | CLASS_MSG => print!("(message)"), [INFO] [stdout] | ^^^^^^^^^ collectively making this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/om.rs:496:17 [INFO] [stdout] | [INFO] [stdout] 487 | CLASS_STRING => print!("(string)"), [INFO] [stdout] | ------------ matches any value [INFO] [stdout] ... [INFO] [stdout] 496 | CLASS_COMPILED_METHOD => print!("(compiled_method)"), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] help: you might have meant to pattern match against the value of constant `CLASS_STRING` instead of introducing a new catch-all binding [INFO] [stdout] | [INFO] [stdout] 487 | std_ptrs::CLASS_STRING => print!("(string)"), [INFO] [stdout] | ++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/om.rs:497:17 [INFO] [stdout] | [INFO] [stdout] 497 | CLASS_SEMA => print!("(sema)"), [INFO] [stdout] | ^^^^^^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/om.rs:497:17 [INFO] [stdout] | [INFO] [stdout] 486 | CLASS_SMALL_INTEGER => print!("(smi)"), [INFO] [stdout] | ------------------- matches some of the same values [INFO] [stdout] 487 | CLASS_STRING => print!("(string)"), [INFO] [stdout] | ------------ matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 497 | CLASS_SEMA => print!("(sema)"), [INFO] [stdout] | ^^^^^^^^^^ collectively making this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/om.rs:498:17 [INFO] [stdout] | [INFO] [stdout] 498 | CLASS_CHARACTER => print!("(character)"), [INFO] [stdout] | ^^^^^^^^^^^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/om.rs:498:17 [INFO] [stdout] | [INFO] [stdout] 486 | CLASS_SMALL_INTEGER => print!("(smi)"), [INFO] [stdout] | ------------------- matches some of the same values [INFO] [stdout] 487 | CLASS_STRING => print!("(string)"), [INFO] [stdout] | ------------ matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 498 | CLASS_CHARACTER => print!("(character)"), [INFO] [stdout] | ^^^^^^^^^^^^^^^ collectively making this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/om.rs:499:17 [INFO] [stdout] | [INFO] [stdout] 499 | CLASS_FORM => print!("(form)"), [INFO] [stdout] | ^^^^^^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/om.rs:499:17 [INFO] [stdout] | [INFO] [stdout] 486 | CLASS_SMALL_INTEGER => print!("(smi)"), [INFO] [stdout] | ------------------- matches some of the same values [INFO] [stdout] 487 | CLASS_STRING => print!("(string)"), [INFO] [stdout] | ------------ matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 499 | CLASS_FORM => print!("(form)"), [INFO] [stdout] | ^^^^^^^^^^ collectively making this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/om.rs:500:17 [INFO] [stdout] | [INFO] [stdout] 500 | _ => print!("(unknown)"), [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/om.rs:500:17 [INFO] [stdout] | [INFO] [stdout] 486 | CLASS_SMALL_INTEGER => print!("(smi)"), [INFO] [stdout] | ------------------- matches some of the same values [INFO] [stdout] 487 | CLASS_STRING => print!("(string)"), [INFO] [stdout] | ------------ matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 500 | _ => print!("(unknown)"), [INFO] [stdout] | ^ collectively making this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `CLASS_STRING` [INFO] [stdout] --> src/om.rs:487:17 [INFO] [stdout] | [INFO] [stdout] 487 | CLASS_STRING => print!("(string)"), [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_CLASS_STRING` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `CLASS_ARRAY` [INFO] [stdout] --> src/om.rs:488:17 [INFO] [stdout] | [INFO] [stdout] 488 | CLASS_ARRAY => print!("(array)"), [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_CLASS_ARRAY` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `CLASS_FLOAT` [INFO] [stdout] --> src/om.rs:489:17 [INFO] [stdout] | [INFO] [stdout] 489 | CLASS_FLOAT => print!("(float)"), [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_CLASS_FLOAT` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `CLASS_METH_CTX` [INFO] [stdout] --> src/om.rs:490:17 [INFO] [stdout] | [INFO] [stdout] 490 | CLASS_METH_CTX => print!("(meth_ctx)"), [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_CLASS_METH_CTX` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `CLASS_BLOCK_CTX` [INFO] [stdout] --> src/om.rs:491:17 [INFO] [stdout] | [INFO] [stdout] 491 | CLASS_BLOCK_CTX => print!("(block_ctx)"), [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_CLASS_BLOCK_CTX` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `CLASS_POINT` [INFO] [stdout] --> src/om.rs:492:17 [INFO] [stdout] | [INFO] [stdout] 492 | CLASS_POINT => print!("(point)"), [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_CLASS_POINT` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `CLASS_LG_POS_INT` [INFO] [stdout] --> src/om.rs:493:17 [INFO] [stdout] | [INFO] [stdout] 493 | CLASS_LG_POS_INT => print!("(lg_pos_int)"), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_CLASS_LG_POS_INT` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `CLASS_DISPLAY_BITMAP` [INFO] [stdout] --> src/om.rs:494:17 [INFO] [stdout] | [INFO] [stdout] 494 | CLASS_DISPLAY_BITMAP => print!("(display_bitmap)"), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_CLASS_DISPLAY_BITMAP` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `CLASS_MSG` [INFO] [stdout] --> src/om.rs:495:17 [INFO] [stdout] | [INFO] [stdout] 495 | CLASS_MSG => print!("(message)"), [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_CLASS_MSG` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `CLASS_SEMA` [INFO] [stdout] --> src/om.rs:497:17 [INFO] [stdout] | [INFO] [stdout] 497 | CLASS_SEMA => print!("(sema)"), [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_CLASS_SEMA` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `CLASS_CHARACTER` [INFO] [stdout] --> src/om.rs:498:17 [INFO] [stdout] | [INFO] [stdout] 498 | CLASS_CHARACTER => print!("(character)"), [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_CLASS_CHARACTER` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `CLASS_FORM` [INFO] [stdout] --> src/om.rs:499:17 [INFO] [stdout] | [INFO] [stdout] 499 | CLASS_FORM => print!("(form)"), [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_CLASS_FORM` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SENDER` is never used [INFO] [stdout] --> src/context.rs:13:11 [INFO] [stdout] | [INFO] [stdout] 13 | pub const SENDER: isize = 0; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `INSTR_PTR` is never used [INFO] [stdout] --> src/context.rs:14:11 [INFO] [stdout] | [INFO] [stdout] 14 | pub const INSTR_PTR: isize = 1; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `STACK_PTR` is never used [INFO] [stdout] --> src/context.rs:15:11 [INFO] [stdout] | [INFO] [stdout] 15 | pub const STACK_PTR: isize = 2; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `METHOD` is never used [INFO] [stdout] --> src/context.rs:16:11 [INFO] [stdout] | [INFO] [stdout] 16 | pub const METHOD: isize = 3; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CALLER` is never used [INFO] [stdout] --> src/context.rs:20:11 [INFO] [stdout] | [INFO] [stdout] 20 | pub const CALLER: isize = 0; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BLOCK_ARGC` is never used [INFO] [stdout] --> src/context.rs:21:11 [INFO] [stdout] | [INFO] [stdout] 21 | pub const BLOCK_ARGC: isize = 3; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `INIT_IP` is never used [INFO] [stdout] --> src/context.rs:22:11 [INFO] [stdout] | [INFO] [stdout] 22 | pub const INIT_IP: isize = 4; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HOME` is never used [INFO] [stdout] --> src/context.rs:23:11 [INFO] [stdout] | [INFO] [stdout] 23 | pub const HOME: isize = 5; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HEAP_SPACE_STOP` is never used [INFO] [stdout] --> src/om.rs:21:7 [INFO] [stdout] | [INFO] [stdout] 21 | const HEAP_SPACE_STOP: usize = OM_SIZE - 1; /* G/R p.658 */ [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `LITERAL_START` is never used [INFO] [stdout] --> src/om.rs:29:8 [INFO] [stdout] | [INFO] [stdout] 29 | static LITERAL_START: u32 = 1; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SUPER_CLASS` is never used [INFO] [stdout] --> src/om.rs:31:11 [INFO] [stdout] | [INFO] [stdout] 31 | pub const SUPER_CLASS: u8 = 0; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `INSTANCE_SPEC` is never used [INFO] [stdout] --> src/om.rs:33:11 [INFO] [stdout] | [INFO] [stdout] 33 | pub const INSTANCE_SPEC: u8 = 2; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `dump_ot` and `dump_oop` are never used [INFO] [stdout] --> src/om.rs:475:12 [INFO] [stdout] | [INFO] [stdout] 80 | impl OM { [INFO] [stdout] | ------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 475 | pub fn dump_ot(&self) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 481 | pub fn dump_oop(&self, oop: OOP) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PROC_LISTS` is never used [INFO] [stdout] --> src/process.rs:1:11 [INFO] [stdout] | [INFO] [stdout] 1 | pub const PROC_LISTS: u8 = 0; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FIRST_LINK` is never used [INFO] [stdout] --> src/process.rs:4:11 [INFO] [stdout] | [INFO] [stdout] 4 | pub const FIRST_LINK: u8 = 0; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `LAST_LINK` is never used [INFO] [stdout] --> src/process.rs:5:11 [INFO] [stdout] | [INFO] [stdout] 5 | pub const LAST_LINK: u8 = 1; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `EXCESS_SIGNALS` is never used [INFO] [stdout] --> src/process.rs:7:11 [INFO] [stdout] | [INFO] [stdout] 7 | pub const EXCESS_SIGNALS: u8 = 2; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `NEXT_LINK` is never used [INFO] [stdout] --> src/process.rs:9:11 [INFO] [stdout] | [INFO] [stdout] 9 | pub const NEXT_LINK: u8 = 0; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PRIORITY` is never used [INFO] [stdout] --> src/process.rs:12:11 [INFO] [stdout] | [INFO] [stdout] 12 | pub const PRIORITY: u8 = 2; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MY_LIST` is never used [INFO] [stdout] --> src/process.rs:13:11 [INFO] [stdout] | [INFO] [stdout] 13 | pub const MY_LIST: u8 = 3; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CANNOT_RETURN` is never used [INFO] [stdout] --> src/std_ptrs.rs:16:11 [INFO] [stdout] | [INFO] [stdout] 16 | pub const CANNOT_RETURN: OOP = 22; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CHAR_TABLE` is never used [INFO] [stdout] --> src/std_ptrs.rs:18:11 [INFO] [stdout] | [INFO] [stdout] 18 | pub const CHAR_TABLE: OOP = 25; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CLASS_STRING` is never used [INFO] [stdout] --> src/std_ptrs.rs:27:11 [INFO] [stdout] | [INFO] [stdout] 27 | pub const CLASS_STRING: OOP = 7; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CLASS_FLOAT` is never used [INFO] [stdout] --> src/std_ptrs.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub const CLASS_FLOAT: OOP = 10; /* not defined in G/R */ [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CLASS_BLOCK_CTX` is never used [INFO] [stdout] --> src/std_ptrs.rs:31:11 [INFO] [stdout] | [INFO] [stdout] 31 | pub const CLASS_BLOCK_CTX: OOP = 12; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CLASS_POINT` is never used [INFO] [stdout] --> src/std_ptrs.rs:32:11 [INFO] [stdout] | [INFO] [stdout] 32 | pub const CLASS_POINT: OOP = 13; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CLASS_LG_POS_INT` is never used [INFO] [stdout] --> src/std_ptrs.rs:33:11 [INFO] [stdout] | [INFO] [stdout] 33 | pub const CLASS_LG_POS_INT: OOP = 14; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CLASS_DISPLAY_BITMAP` is never used [INFO] [stdout] --> src/std_ptrs.rs:34:11 [INFO] [stdout] | [INFO] [stdout] 34 | pub const CLASS_DISPLAY_BITMAP: OOP = 15; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CLASS_SEMA` is never used [INFO] [stdout] --> src/std_ptrs.rs:37:11 [INFO] [stdout] | [INFO] [stdout] 37 | pub const CLASS_SEMA: OOP = 19; /* not defined in G/R */ [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CLASS_CHARACTER` is never used [INFO] [stdout] --> src/std_ptrs.rs:38:11 [INFO] [stdout] | [INFO] [stdout] 38 | pub const CLASS_CHARACTER: OOP = 20; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CLASS_FORM` is never used [INFO] [stdout] --> src/std_ptrs.rs:39:11 [INFO] [stdout] | [INFO] [stdout] 39 | pub const CLASS_FORM: OOP = 0x629; /* required for BitBlt */ [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `FSENDER_CALLER` should have a snake case name [INFO] [stdout] --> src/context.rs:4:9 [INFO] [stdout] | [INFO] [stdout] 4 | pub FSENDER_CALLER: OOP, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `fsender_caller` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `FINSTR_PTR` should have a snake case name [INFO] [stdout] --> src/context.rs:5:9 [INFO] [stdout] | [INFO] [stdout] 5 | pub FINSTR_PTR: OOP, [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `finstr_ptr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `FSTACK_PTR` should have a snake case name [INFO] [stdout] --> src/context.rs:6:9 [INFO] [stdout] | [INFO] [stdout] 6 | pub FSTACK_PTR: OOP, [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `fstack_ptr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `FMETHOD_BLOCK_ARGC` should have a snake case name [INFO] [stdout] --> src/context.rs:7:9 [INFO] [stdout] | [INFO] [stdout] 7 | pub FMETHOD_BLOCK_ARGC: OOP, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `fmethod_block_argc` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `FINIT_IP` should have a snake case name [INFO] [stdout] --> src/context.rs:8:9 [INFO] [stdout] | [INFO] [stdout] 8 | pub FINIT_IP: OOP, [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `finit_ip` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `FRECEIVER_HOME` should have a snake case name [INFO] [stdout] --> src/context.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 9 | pub FRECEIVER_HOME: OOP, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `freceiver_home` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `FTEMP_FRAME` should have a snake case name [INFO] [stdout] --> src/context.rs:10:9 [INFO] [stdout] | [INFO] [stdout] 10 | pub FTEMP_FRAME: [OOP; 32], [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `ftemp_frame` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: a dangling pointer will be produced because the temporary `Vec` will be dropped [INFO] [stdout] --> src/interp.rs:47:28 [INFO] [stdout] | [INFO] [stdout] 47 | ip: vec![0; 1].as_mut_ptr(), [INFO] [stdout] | ---------- ^^^^^^^^^^ this pointer will immediately be invalid [INFO] [stdout] | | [INFO] [stdout] | this `Vec` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stdout] | [INFO] [stdout] = note: pointers do not have a lifetime; when calling `as_mut_ptr` the `Vec` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stdout] = help: you must make sure that the variable you bind the `Vec` to lives at least as long as the pointer returned by the call to `as_mut_ptr` [INFO] [stdout] = help: in particular, if this pointer is returned from the current function, binding the `Vec` inside the function will not suffice [INFO] [stdout] = help: for more information, see [INFO] [stdout] = note: `#[warn(dangling_pointers_from_temporaries)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: a dangling pointer will be produced because the temporary `Vec` will be dropped [INFO] [stdout] --> src/interp.rs:48:28 [INFO] [stdout] | [INFO] [stdout] 48 | sp: vec![0; 1].as_mut_ptr(), [INFO] [stdout] | ---------- ^^^^^^^^^^ this pointer will immediately be invalid [INFO] [stdout] | | [INFO] [stdout] | this `Vec` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stdout] | [INFO] [stdout] = note: pointers do not have a lifetime; when calling `as_mut_ptr` the `Vec` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stdout] = help: you must make sure that the variable you bind the `Vec` to lives at least as long as the pointer returned by the call to `as_mut_ptr` [INFO] [stdout] = help: in particular, if this pointer is returned from the current function, binding the `Vec` inside the function will not suffice [INFO] [stdout] = help: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing [INFO] [stdout] --> src/interp.rs:44:35 [INFO] [stdout] | [INFO] [stdout] 44 | pub fn new(om: &'a mut OM) -> Interpreter { [INFO] [stdout] | -- ^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is named 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: consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 44 | pub fn new(om: &'a mut OM) -> Interpreter<'a> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: a dangling pointer will be produced because the temporary `Vec` will be dropped [INFO] [stdout] --> src/om.rs:83:38 [INFO] [stdout] | [INFO] [stdout] 83 | object_space: vec![0; 1].as_mut_ptr(), [INFO] [stdout] | ---------- ^^^^^^^^^^ this pointer will immediately be invalid [INFO] [stdout] | | [INFO] [stdout] | this `Vec` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stdout] | [INFO] [stdout] = note: pointers do not have a lifetime; when calling `as_mut_ptr` the `Vec` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stdout] = help: you must make sure that the variable you bind the `Vec` to lives at least as long as the pointer returned by the call to `as_mut_ptr` [INFO] [stdout] = help: in particular, if this pointer is returned from the current function, binding the `Vec` inside the function will not suffice [INFO] [stdout] = help: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calls to `std::mem::forget` with a reference instead of an owned value does nothing [INFO] [stdout] --> src/om.rs:211:9 [INFO] [stdout] | [INFO] [stdout] 211 | mem::forget(object_space); [INFO] [stdout] | ^^^^^^^^^^^^------------^ [INFO] [stdout] | | [INFO] [stdout] | argument has type `&mut Vec` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(forgetting_references)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the expression or result [INFO] [stdout] | [INFO] [stdout] 211 - mem::forget(object_space); [INFO] [stdout] 211 + let _ = object_space; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `defaultEntry` should have a snake case name [INFO] [stdout] --> src/om.rs:464:13 [INFO] [stdout] | [INFO] [stdout] 464 | let defaultEntry = if ptrs { NIL_PTR } else { 0 }; [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `default_entry` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `CLASS_STRING` should have a snake case name [INFO] [stdout] --> src/om.rs:487:17 [INFO] [stdout] | [INFO] [stdout] 487 | CLASS_STRING => print!("(string)"), [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `class_string` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `CLASS_ARRAY` should have a snake case name [INFO] [stdout] --> src/om.rs:488:17 [INFO] [stdout] | [INFO] [stdout] 488 | CLASS_ARRAY => print!("(array)"), [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `class_array` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `CLASS_FLOAT` should have a snake case name [INFO] [stdout] --> src/om.rs:489:17 [INFO] [stdout] | [INFO] [stdout] 489 | CLASS_FLOAT => print!("(float)"), [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `class_float` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `CLASS_METH_CTX` should have a snake case name [INFO] [stdout] --> src/om.rs:490:17 [INFO] [stdout] | [INFO] [stdout] 490 | CLASS_METH_CTX => print!("(meth_ctx)"), [INFO] [stdout] | ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `class_meth_ctx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `CLASS_BLOCK_CTX` should have a snake case name [INFO] [stdout] --> src/om.rs:491:17 [INFO] [stdout] | [INFO] [stdout] 491 | CLASS_BLOCK_CTX => print!("(block_ctx)"), [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `class_block_ctx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `CLASS_POINT` should have a snake case name [INFO] [stdout] --> src/om.rs:492:17 [INFO] [stdout] | [INFO] [stdout] 492 | CLASS_POINT => print!("(point)"), [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `class_point` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `CLASS_LG_POS_INT` should have a snake case name [INFO] [stdout] --> src/om.rs:493:17 [INFO] [stdout] | [INFO] [stdout] 493 | CLASS_LG_POS_INT => print!("(lg_pos_int)"), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `class_lg_pos_int` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `CLASS_DISPLAY_BITMAP` should have a snake case name [INFO] [stdout] --> src/om.rs:494:17 [INFO] [stdout] | [INFO] [stdout] 494 | CLASS_DISPLAY_BITMAP => print!("(display_bitmap)"), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `class_display_bitmap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `CLASS_MSG` should have a snake case name [INFO] [stdout] --> src/om.rs:495:17 [INFO] [stdout] | [INFO] [stdout] 495 | CLASS_MSG => print!("(message)"), [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `class_msg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `CLASS_SEMA` should have a snake case name [INFO] [stdout] --> src/om.rs:497:17 [INFO] [stdout] | [INFO] [stdout] 497 | CLASS_SEMA => print!("(sema)"), [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `class_sema` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `CLASS_CHARACTER` should have a snake case name [INFO] [stdout] --> src/om.rs:498:17 [INFO] [stdout] | [INFO] [stdout] 498 | CLASS_CHARACTER => print!("(character)"), [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `class_character` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `CLASS_FORM` should have a snake case name [INFO] [stdout] --> src/om.rs:499:17 [INFO] [stdout] | [INFO] [stdout] 499 | CLASS_FORM => print!("(form)"), [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `class_form` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/snapshot.rs:54:5 [INFO] [stdout] | [INFO] [stdout] 54 | file.seek(SeekFrom::Start(512)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 54 | let _ = file.seek(SeekFrom::Start(512)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1.60s [INFO] running `Command { std: "docker" "inspect" "4643bbfc5caf50eb30d9a05600c7f5da71c93f7cd425f257599c914f30e0f19a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4643bbfc5caf50eb30d9a05600c7f5da71c93f7cd425f257599c914f30e0f19a", kill_on_drop: false }` [INFO] [stdout] 4643bbfc5caf50eb30d9a05600c7f5da71c93f7cd425f257599c914f30e0f19a [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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] 5b647d0f60221309ea2bed4d598befe7d0bb1d7f3ee4762d726a63e1dc8d0f78 [INFO] running `Command { std: "docker" "start" "-a" "5b647d0f60221309ea2bed4d598befe7d0bb1d7f3ee4762d726a63e1dc8d0f78", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stderr] Compiling rusttalk v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/interp.rs:115:18 [INFO] [stdout] | [INFO] [stdout] 115 | 0...15 => self.push_receiver_var(bytecode), [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] = note: `#[warn(ellipsis_inclusive_range_patterns)]` (part of `#[warn(rust_2021_compatibility)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `...` range patterns are deprecated [INFO] [stdout] --> src/interp.rs:116:19 [INFO] [stdout] | [INFO] [stdout] 116 | 16...31 => self.push_temp_var(bytecode), [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/interp.rs:117:19 [INFO] [stdout] | [INFO] [stdout] 117 | 32...63 => self.push_literal_const(bytecode), [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/interp.rs:118:19 [INFO] [stdout] | [INFO] [stdout] 118 | 64...95 => self.push_literal_var(bytecode), [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/interp.rs:119:19 [INFO] [stdout] | [INFO] [stdout] 119 | 96...103 => self.pop_and_store_receiver_var(bytecode), [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/interp.rs:120:20 [INFO] [stdout] | [INFO] [stdout] 120 | 104...111 => self.pop_and_store_temp_var(bytecode), [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/interp.rs:136:20 [INFO] [stdout] | [INFO] [stdout] 136 | 126...127 => panic!("illegal bytecode"), [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/interp.rs:147:20 [INFO] [stdout] | [INFO] [stdout] 147 | 138...143 => panic!("illegal bytecode"), [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/interp.rs:148:20 [INFO] [stdout] | [INFO] [stdout] 148 | 144...151 => self.short_unconditional_jump(bytecode), [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/interp.rs:149:20 [INFO] [stdout] | [INFO] [stdout] 149 | 152...159 => self.jump_if_false(bytecode), [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/interp.rs:150:20 [INFO] [stdout] | [INFO] [stdout] 150 | 160...167 => self.extended_unconditional_jump(bytecode), [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/interp.rs:151:20 [INFO] [stdout] | [INFO] [stdout] 151 | 168...171 => self.extended_jump_on_true(bytecode), [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/interp.rs:152:20 [INFO] [stdout] | [INFO] [stdout] 152 | 172...175 => self.extended_jump_on_false(bytecode), [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/interp.rs:153:20 [INFO] [stdout] | [INFO] [stdout] 153 | 176...191 => self.send_arith_msg(bytecode), [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/interp.rs:154:20 [INFO] [stdout] | [INFO] [stdout] 154 | 192...207 => panic!("special ops not implemented"), //sCommonMsg [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/interp.rs:155:20 [INFO] [stdout] | [INFO] [stdout] 155 | 208...223 => self.send_literal_with_argc(bytecode, 0), [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/interp.rs:156:20 [INFO] [stdout] | [INFO] [stdout] 156 | 224...239 => self.send_literal_with_argc(bytecode, 1), [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/interp.rs:157:20 [INFO] [stdout] | [INFO] [stdout] 157 | 240...255 => self.send_literal_with_argc(bytecode, 2), [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: unnecessary parentheses around block return value [INFO] [stdout] --> src/interp.rs:643:9 [INFO] [stdout] | [INFO] [stdout] 643 | ((self.lit_cnt_hdr(hdr) + LITERAL_START) * mem::size_of::() as u32 + 1) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 643 - ((self.lit_cnt_hdr(hdr) + LITERAL_START) * mem::size_of::() as u32 + 1) [INFO] [stdout] 643 + (self.lit_cnt_hdr(hdr) + LITERAL_START) * mem::size_of::() as u32 + 1 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/interp.rs:647:9 [INFO] [stdout] | [INFO] [stdout] 647 | (((hdr) & 0x0F80) >> 7) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 647 - (((hdr) & 0x0F80) >> 7) [INFO] [stdout] 647 + ((hdr) & 0x0F80) >> 7 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the feature `ptr_offset_from` has been stable since 1.47.0 and no longer requires an attribute to enable [INFO] [stdout] --> src/main.rs:1:12 [INFO] [stdout] | [INFO] [stdout] 1 | #![feature(ptr_offset_from)] [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(stable_features)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/snapshot.rs:22:65 [INFO] [stdout] | [INFO] [stdout] 22 | Err(why) => panic!("couldn't open {}: {}", display, why.description()), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `msg_selector` [INFO] [stdout] --> src/interp.rs:557:21 [INFO] [stdout] | [INFO] [stdout] 557 | let msg_selector = self.msg_selector; [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_msg_selector` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/om.rs:488:17 [INFO] [stdout] | [INFO] [stdout] 488 | CLASS_ARRAY => print!("(array)"), [INFO] [stdout] | ^^^^^^^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/om.rs:488:17 [INFO] [stdout] | [INFO] [stdout] 486 | CLASS_SMALL_INTEGER => print!("(smi)"), [INFO] [stdout] | ------------------- matches some of the same values [INFO] [stdout] 487 | CLASS_STRING => print!("(string)"), [INFO] [stdout] | ------------ matches some of the same values [INFO] [stdout] 488 | CLASS_ARRAY => print!("(array)"), [INFO] [stdout] | ^^^^^^^^^^^ collectively making this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/om.rs:489:17 [INFO] [stdout] | [INFO] [stdout] 489 | CLASS_FLOAT => print!("(float)"), [INFO] [stdout] | ^^^^^^^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/om.rs:489:17 [INFO] [stdout] | [INFO] [stdout] 486 | CLASS_SMALL_INTEGER => print!("(smi)"), [INFO] [stdout] | ------------------- matches some of the same values [INFO] [stdout] 487 | CLASS_STRING => print!("(string)"), [INFO] [stdout] | ------------ matches some of the same values [INFO] [stdout] 488 | CLASS_ARRAY => print!("(array)"), [INFO] [stdout] 489 | CLASS_FLOAT => print!("(float)"), [INFO] [stdout] | ^^^^^^^^^^^ collectively making this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/om.rs:490:17 [INFO] [stdout] | [INFO] [stdout] 490 | CLASS_METH_CTX => print!("(meth_ctx)"), [INFO] [stdout] | ^^^^^^^^^^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/om.rs:490:17 [INFO] [stdout] | [INFO] [stdout] 486 | CLASS_SMALL_INTEGER => print!("(smi)"), [INFO] [stdout] | ------------------- matches some of the same values [INFO] [stdout] 487 | CLASS_STRING => print!("(string)"), [INFO] [stdout] | ------------ matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 490 | CLASS_METH_CTX => print!("(meth_ctx)"), [INFO] [stdout] | ^^^^^^^^^^^^^^ collectively making this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/om.rs:491:17 [INFO] [stdout] | [INFO] [stdout] 491 | CLASS_BLOCK_CTX => print!("(block_ctx)"), [INFO] [stdout] | ^^^^^^^^^^^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/om.rs:491:17 [INFO] [stdout] | [INFO] [stdout] 486 | CLASS_SMALL_INTEGER => print!("(smi)"), [INFO] [stdout] | ------------------- matches some of the same values [INFO] [stdout] 487 | CLASS_STRING => print!("(string)"), [INFO] [stdout] | ------------ matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 491 | CLASS_BLOCK_CTX => print!("(block_ctx)"), [INFO] [stdout] | ^^^^^^^^^^^^^^^ collectively making this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/om.rs:492:17 [INFO] [stdout] | [INFO] [stdout] 492 | CLASS_POINT => print!("(point)"), [INFO] [stdout] | ^^^^^^^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/om.rs:492:17 [INFO] [stdout] | [INFO] [stdout] 486 | CLASS_SMALL_INTEGER => print!("(smi)"), [INFO] [stdout] | ------------------- matches some of the same values [INFO] [stdout] 487 | CLASS_STRING => print!("(string)"), [INFO] [stdout] | ------------ matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 492 | CLASS_POINT => print!("(point)"), [INFO] [stdout] | ^^^^^^^^^^^ collectively making this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/om.rs:493:17 [INFO] [stdout] | [INFO] [stdout] 493 | CLASS_LG_POS_INT => print!("(lg_pos_int)"), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/om.rs:493:17 [INFO] [stdout] | [INFO] [stdout] 486 | CLASS_SMALL_INTEGER => print!("(smi)"), [INFO] [stdout] | ------------------- matches some of the same values [INFO] [stdout] 487 | CLASS_STRING => print!("(string)"), [INFO] [stdout] | ------------ matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 493 | CLASS_LG_POS_INT => print!("(lg_pos_int)"), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ collectively making this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/om.rs:494:17 [INFO] [stdout] | [INFO] [stdout] 494 | CLASS_DISPLAY_BITMAP => print!("(display_bitmap)"), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/om.rs:494:17 [INFO] [stdout] | [INFO] [stdout] 486 | CLASS_SMALL_INTEGER => print!("(smi)"), [INFO] [stdout] | ------------------- matches some of the same values [INFO] [stdout] 487 | CLASS_STRING => print!("(string)"), [INFO] [stdout] | ------------ matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 494 | CLASS_DISPLAY_BITMAP => print!("(display_bitmap)"), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ collectively making this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/om.rs:495:17 [INFO] [stdout] | [INFO] [stdout] 495 | CLASS_MSG => print!("(message)"), [INFO] [stdout] | ^^^^^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/om.rs:495:17 [INFO] [stdout] | [INFO] [stdout] 486 | CLASS_SMALL_INTEGER => print!("(smi)"), [INFO] [stdout] | ------------------- matches some of the same values [INFO] [stdout] 487 | CLASS_STRING => print!("(string)"), [INFO] [stdout] | ------------ matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 495 | CLASS_MSG => print!("(message)"), [INFO] [stdout] | ^^^^^^^^^ collectively making this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/om.rs:496:17 [INFO] [stdout] | [INFO] [stdout] 487 | CLASS_STRING => print!("(string)"), [INFO] [stdout] | ------------ matches any value [INFO] [stdout] ... [INFO] [stdout] 496 | CLASS_COMPILED_METHOD => print!("(compiled_method)"), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] help: you might have meant to pattern match against the value of constant `CLASS_STRING` instead of introducing a new catch-all binding [INFO] [stdout] | [INFO] [stdout] 487 | std_ptrs::CLASS_STRING => print!("(string)"), [INFO] [stdout] | ++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/om.rs:497:17 [INFO] [stdout] | [INFO] [stdout] 497 | CLASS_SEMA => print!("(sema)"), [INFO] [stdout] | ^^^^^^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/om.rs:497:17 [INFO] [stdout] | [INFO] [stdout] 486 | CLASS_SMALL_INTEGER => print!("(smi)"), [INFO] [stdout] | ------------------- matches some of the same values [INFO] [stdout] 487 | CLASS_STRING => print!("(string)"), [INFO] [stdout] | ------------ matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 497 | CLASS_SEMA => print!("(sema)"), [INFO] [stdout] | ^^^^^^^^^^ collectively making this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/om.rs:498:17 [INFO] [stdout] | [INFO] [stdout] 498 | CLASS_CHARACTER => print!("(character)"), [INFO] [stdout] | ^^^^^^^^^^^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/om.rs:498:17 [INFO] [stdout] | [INFO] [stdout] 486 | CLASS_SMALL_INTEGER => print!("(smi)"), [INFO] [stdout] | ------------------- matches some of the same values [INFO] [stdout] 487 | CLASS_STRING => print!("(string)"), [INFO] [stdout] | ------------ matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 498 | CLASS_CHARACTER => print!("(character)"), [INFO] [stdout] | ^^^^^^^^^^^^^^^ collectively making this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/om.rs:499:17 [INFO] [stdout] | [INFO] [stdout] 499 | CLASS_FORM => print!("(form)"), [INFO] [stdout] | ^^^^^^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/om.rs:499:17 [INFO] [stdout] | [INFO] [stdout] 486 | CLASS_SMALL_INTEGER => print!("(smi)"), [INFO] [stdout] | ------------------- matches some of the same values [INFO] [stdout] 487 | CLASS_STRING => print!("(string)"), [INFO] [stdout] | ------------ matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 499 | CLASS_FORM => print!("(form)"), [INFO] [stdout] | ^^^^^^^^^^ collectively making this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/om.rs:500:17 [INFO] [stdout] | [INFO] [stdout] 500 | _ => print!("(unknown)"), [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/om.rs:500:17 [INFO] [stdout] | [INFO] [stdout] 486 | CLASS_SMALL_INTEGER => print!("(smi)"), [INFO] [stdout] | ------------------- matches some of the same values [INFO] [stdout] 487 | CLASS_STRING => print!("(string)"), [INFO] [stdout] | ------------ matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 500 | _ => print!("(unknown)"), [INFO] [stdout] | ^ collectively making this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `CLASS_STRING` [INFO] [stdout] --> src/om.rs:487:17 [INFO] [stdout] | [INFO] [stdout] 487 | CLASS_STRING => print!("(string)"), [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_CLASS_STRING` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `CLASS_ARRAY` [INFO] [stdout] --> src/om.rs:488:17 [INFO] [stdout] | [INFO] [stdout] 488 | CLASS_ARRAY => print!("(array)"), [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_CLASS_ARRAY` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `CLASS_FLOAT` [INFO] [stdout] --> src/om.rs:489:17 [INFO] [stdout] | [INFO] [stdout] 489 | CLASS_FLOAT => print!("(float)"), [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_CLASS_FLOAT` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `CLASS_METH_CTX` [INFO] [stdout] --> src/om.rs:490:17 [INFO] [stdout] | [INFO] [stdout] 490 | CLASS_METH_CTX => print!("(meth_ctx)"), [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_CLASS_METH_CTX` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `CLASS_BLOCK_CTX` [INFO] [stdout] --> src/om.rs:491:17 [INFO] [stdout] | [INFO] [stdout] 491 | CLASS_BLOCK_CTX => print!("(block_ctx)"), [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_CLASS_BLOCK_CTX` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `CLASS_POINT` [INFO] [stdout] --> src/om.rs:492:17 [INFO] [stdout] | [INFO] [stdout] 492 | CLASS_POINT => print!("(point)"), [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_CLASS_POINT` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `CLASS_LG_POS_INT` [INFO] [stdout] --> src/om.rs:493:17 [INFO] [stdout] | [INFO] [stdout] 493 | CLASS_LG_POS_INT => print!("(lg_pos_int)"), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_CLASS_LG_POS_INT` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `CLASS_DISPLAY_BITMAP` [INFO] [stdout] --> src/om.rs:494:17 [INFO] [stdout] | [INFO] [stdout] 494 | CLASS_DISPLAY_BITMAP => print!("(display_bitmap)"), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_CLASS_DISPLAY_BITMAP` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `CLASS_MSG` [INFO] [stdout] --> src/om.rs:495:17 [INFO] [stdout] | [INFO] [stdout] 495 | CLASS_MSG => print!("(message)"), [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_CLASS_MSG` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `CLASS_SEMA` [INFO] [stdout] --> src/om.rs:497:17 [INFO] [stdout] | [INFO] [stdout] 497 | CLASS_SEMA => print!("(sema)"), [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_CLASS_SEMA` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `CLASS_CHARACTER` [INFO] [stdout] --> src/om.rs:498:17 [INFO] [stdout] | [INFO] [stdout] 498 | CLASS_CHARACTER => print!("(character)"), [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_CLASS_CHARACTER` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `CLASS_FORM` [INFO] [stdout] --> src/om.rs:499:17 [INFO] [stdout] | [INFO] [stdout] 499 | CLASS_FORM => print!("(form)"), [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_CLASS_FORM` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SENDER` is never used [INFO] [stdout] --> src/context.rs:13:11 [INFO] [stdout] | [INFO] [stdout] 13 | pub const SENDER: isize = 0; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `INSTR_PTR` is never used [INFO] [stdout] --> src/context.rs:14:11 [INFO] [stdout] | [INFO] [stdout] 14 | pub const INSTR_PTR: isize = 1; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `STACK_PTR` is never used [INFO] [stdout] --> src/context.rs:15:11 [INFO] [stdout] | [INFO] [stdout] 15 | pub const STACK_PTR: isize = 2; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `METHOD` is never used [INFO] [stdout] --> src/context.rs:16:11 [INFO] [stdout] | [INFO] [stdout] 16 | pub const METHOD: isize = 3; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CALLER` is never used [INFO] [stdout] --> src/context.rs:20:11 [INFO] [stdout] | [INFO] [stdout] 20 | pub const CALLER: isize = 0; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BLOCK_ARGC` is never used [INFO] [stdout] --> src/context.rs:21:11 [INFO] [stdout] | [INFO] [stdout] 21 | pub const BLOCK_ARGC: isize = 3; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `INIT_IP` is never used [INFO] [stdout] --> src/context.rs:22:11 [INFO] [stdout] | [INFO] [stdout] 22 | pub const INIT_IP: isize = 4; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HOME` is never used [INFO] [stdout] --> src/context.rs:23:11 [INFO] [stdout] | [INFO] [stdout] 23 | pub const HOME: isize = 5; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HEAP_SPACE_STOP` is never used [INFO] [stdout] --> src/om.rs:21:7 [INFO] [stdout] | [INFO] [stdout] 21 | const HEAP_SPACE_STOP: usize = OM_SIZE - 1; /* G/R p.658 */ [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `LITERAL_START` is never used [INFO] [stdout] --> src/om.rs:29:8 [INFO] [stdout] | [INFO] [stdout] 29 | static LITERAL_START: u32 = 1; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SUPER_CLASS` is never used [INFO] [stdout] --> src/om.rs:31:11 [INFO] [stdout] | [INFO] [stdout] 31 | pub const SUPER_CLASS: u8 = 0; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `INSTANCE_SPEC` is never used [INFO] [stdout] --> src/om.rs:33:11 [INFO] [stdout] | [INFO] [stdout] 33 | pub const INSTANCE_SPEC: u8 = 2; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `dump_ot` and `dump_oop` are never used [INFO] [stdout] --> src/om.rs:475:12 [INFO] [stdout] | [INFO] [stdout] 80 | impl OM { [INFO] [stdout] | ------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 475 | pub fn dump_ot(&self) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 481 | pub fn dump_oop(&self, oop: OOP) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PROC_LISTS` is never used [INFO] [stdout] --> src/process.rs:1:11 [INFO] [stdout] | [INFO] [stdout] 1 | pub const PROC_LISTS: u8 = 0; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FIRST_LINK` is never used [INFO] [stdout] --> src/process.rs:4:11 [INFO] [stdout] | [INFO] [stdout] 4 | pub const FIRST_LINK: u8 = 0; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `LAST_LINK` is never used [INFO] [stdout] --> src/process.rs:5:11 [INFO] [stdout] | [INFO] [stdout] 5 | pub const LAST_LINK: u8 = 1; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `EXCESS_SIGNALS` is never used [INFO] [stdout] --> src/process.rs:7:11 [INFO] [stdout] | [INFO] [stdout] 7 | pub const EXCESS_SIGNALS: u8 = 2; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `NEXT_LINK` is never used [INFO] [stdout] --> src/process.rs:9:11 [INFO] [stdout] | [INFO] [stdout] 9 | pub const NEXT_LINK: u8 = 0; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PRIORITY` is never used [INFO] [stdout] --> src/process.rs:12:11 [INFO] [stdout] | [INFO] [stdout] 12 | pub const PRIORITY: u8 = 2; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MY_LIST` is never used [INFO] [stdout] --> src/process.rs:13:11 [INFO] [stdout] | [INFO] [stdout] 13 | pub const MY_LIST: u8 = 3; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CANNOT_RETURN` is never used [INFO] [stdout] --> src/std_ptrs.rs:16:11 [INFO] [stdout] | [INFO] [stdout] 16 | pub const CANNOT_RETURN: OOP = 22; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CHAR_TABLE` is never used [INFO] [stdout] --> src/std_ptrs.rs:18:11 [INFO] [stdout] | [INFO] [stdout] 18 | pub const CHAR_TABLE: OOP = 25; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CLASS_STRING` is never used [INFO] [stdout] --> src/std_ptrs.rs:27:11 [INFO] [stdout] | [INFO] [stdout] 27 | pub const CLASS_STRING: OOP = 7; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CLASS_FLOAT` is never used [INFO] [stdout] --> src/std_ptrs.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub const CLASS_FLOAT: OOP = 10; /* not defined in G/R */ [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CLASS_BLOCK_CTX` is never used [INFO] [stdout] --> src/std_ptrs.rs:31:11 [INFO] [stdout] | [INFO] [stdout] 31 | pub const CLASS_BLOCK_CTX: OOP = 12; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CLASS_POINT` is never used [INFO] [stdout] --> src/std_ptrs.rs:32:11 [INFO] [stdout] | [INFO] [stdout] 32 | pub const CLASS_POINT: OOP = 13; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CLASS_LG_POS_INT` is never used [INFO] [stdout] --> src/std_ptrs.rs:33:11 [INFO] [stdout] | [INFO] [stdout] 33 | pub const CLASS_LG_POS_INT: OOP = 14; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CLASS_DISPLAY_BITMAP` is never used [INFO] [stdout] --> src/std_ptrs.rs:34:11 [INFO] [stdout] | [INFO] [stdout] 34 | pub const CLASS_DISPLAY_BITMAP: OOP = 15; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CLASS_SEMA` is never used [INFO] [stdout] --> src/std_ptrs.rs:37:11 [INFO] [stdout] | [INFO] [stdout] 37 | pub const CLASS_SEMA: OOP = 19; /* not defined in G/R */ [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CLASS_CHARACTER` is never used [INFO] [stdout] --> src/std_ptrs.rs:38:11 [INFO] [stdout] | [INFO] [stdout] 38 | pub const CLASS_CHARACTER: OOP = 20; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CLASS_FORM` is never used [INFO] [stdout] --> src/std_ptrs.rs:39:11 [INFO] [stdout] | [INFO] [stdout] 39 | pub const CLASS_FORM: OOP = 0x629; /* required for BitBlt */ [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `FSENDER_CALLER` should have a snake case name [INFO] [stdout] --> src/context.rs:4:9 [INFO] [stdout] | [INFO] [stdout] 4 | pub FSENDER_CALLER: OOP, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `fsender_caller` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `FINSTR_PTR` should have a snake case name [INFO] [stdout] --> src/context.rs:5:9 [INFO] [stdout] | [INFO] [stdout] 5 | pub FINSTR_PTR: OOP, [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `finstr_ptr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `FSTACK_PTR` should have a snake case name [INFO] [stdout] --> src/context.rs:6:9 [INFO] [stdout] | [INFO] [stdout] 6 | pub FSTACK_PTR: OOP, [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `fstack_ptr` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `FMETHOD_BLOCK_ARGC` should have a snake case name [INFO] [stdout] --> src/context.rs:7:9 [INFO] [stdout] | [INFO] [stdout] 7 | pub FMETHOD_BLOCK_ARGC: OOP, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `fmethod_block_argc` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `FINIT_IP` should have a snake case name [INFO] [stdout] --> src/context.rs:8:9 [INFO] [stdout] | [INFO] [stdout] 8 | pub FINIT_IP: OOP, [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `finit_ip` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `FRECEIVER_HOME` should have a snake case name [INFO] [stdout] --> src/context.rs:9:9 [INFO] [stdout] | [INFO] [stdout] 9 | pub FRECEIVER_HOME: OOP, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `freceiver_home` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `FTEMP_FRAME` should have a snake case name [INFO] [stdout] --> src/context.rs:10:9 [INFO] [stdout] | [INFO] [stdout] 10 | pub FTEMP_FRAME: [OOP; 32], [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `ftemp_frame` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: a dangling pointer will be produced because the temporary `Vec` will be dropped [INFO] [stdout] --> src/interp.rs:47:28 [INFO] [stdout] | [INFO] [stdout] 47 | ip: vec![0; 1].as_mut_ptr(), [INFO] [stdout] | ---------- ^^^^^^^^^^ this pointer will immediately be invalid [INFO] [stdout] | | [INFO] [stdout] | this `Vec` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stdout] | [INFO] [stdout] = note: pointers do not have a lifetime; when calling `as_mut_ptr` the `Vec` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stdout] = help: you must make sure that the variable you bind the `Vec` to lives at least as long as the pointer returned by the call to `as_mut_ptr` [INFO] [stdout] = help: in particular, if this pointer is returned from the current function, binding the `Vec` inside the function will not suffice [INFO] [stdout] = help: for more information, see [INFO] [stdout] = note: `#[warn(dangling_pointers_from_temporaries)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: a dangling pointer will be produced because the temporary `Vec` will be dropped [INFO] [stdout] --> src/interp.rs:48:28 [INFO] [stdout] | [INFO] [stdout] 48 | sp: vec![0; 1].as_mut_ptr(), [INFO] [stdout] | ---------- ^^^^^^^^^^ this pointer will immediately be invalid [INFO] [stdout] | | [INFO] [stdout] | this `Vec` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stdout] | [INFO] [stdout] = note: pointers do not have a lifetime; when calling `as_mut_ptr` the `Vec` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stdout] = help: you must make sure that the variable you bind the `Vec` to lives at least as long as the pointer returned by the call to `as_mut_ptr` [INFO] [stdout] = help: in particular, if this pointer is returned from the current function, binding the `Vec` inside the function will not suffice [INFO] [stdout] = help: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing [INFO] [stdout] --> src/interp.rs:44:35 [INFO] [stdout] | [INFO] [stdout] 44 | pub fn new(om: &'a mut OM) -> Interpreter { [INFO] [stdout] | -- ^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is named 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: consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 44 | pub fn new(om: &'a mut OM) -> Interpreter<'a> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: a dangling pointer will be produced because the temporary `Vec` will be dropped [INFO] [stdout] --> src/om.rs:83:38 [INFO] [stdout] | [INFO] [stdout] 83 | object_space: vec![0; 1].as_mut_ptr(), [INFO] [stdout] | ---------- ^^^^^^^^^^ this pointer will immediately be invalid [INFO] [stdout] | | [INFO] [stdout] | this `Vec` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stdout] | [INFO] [stdout] = note: pointers do not have a lifetime; when calling `as_mut_ptr` the `Vec` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stdout] = help: you must make sure that the variable you bind the `Vec` to lives at least as long as the pointer returned by the call to `as_mut_ptr` [INFO] [stdout] = help: in particular, if this pointer is returned from the current function, binding the `Vec` inside the function will not suffice [INFO] [stdout] = help: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calls to `std::mem::forget` with a reference instead of an owned value does nothing [INFO] [stdout] --> src/om.rs:211:9 [INFO] [stdout] | [INFO] [stdout] 211 | mem::forget(object_space); [INFO] [stdout] | ^^^^^^^^^^^^------------^ [INFO] [stdout] | | [INFO] [stdout] | argument has type `&mut Vec` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(forgetting_references)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the expression or result [INFO] [stdout] | [INFO] [stdout] 211 - mem::forget(object_space); [INFO] [stdout] 211 + let _ = object_space; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `defaultEntry` should have a snake case name [INFO] [stdout] --> src/om.rs:464:13 [INFO] [stdout] | [INFO] [stdout] 464 | let defaultEntry = if ptrs { NIL_PTR } else { 0 }; [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `default_entry` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `CLASS_STRING` should have a snake case name [INFO] [stdout] --> src/om.rs:487:17 [INFO] [stdout] | [INFO] [stdout] 487 | CLASS_STRING => print!("(string)"), [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `class_string` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `CLASS_ARRAY` should have a snake case name [INFO] [stdout] --> src/om.rs:488:17 [INFO] [stdout] | [INFO] [stdout] 488 | CLASS_ARRAY => print!("(array)"), [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `class_array` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `CLASS_FLOAT` should have a snake case name [INFO] [stdout] --> src/om.rs:489:17 [INFO] [stdout] | [INFO] [stdout] 489 | CLASS_FLOAT => print!("(float)"), [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `class_float` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `CLASS_METH_CTX` should have a snake case name [INFO] [stdout] --> src/om.rs:490:17 [INFO] [stdout] | [INFO] [stdout] 490 | CLASS_METH_CTX => print!("(meth_ctx)"), [INFO] [stdout] | ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `class_meth_ctx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `CLASS_BLOCK_CTX` should have a snake case name [INFO] [stdout] --> src/om.rs:491:17 [INFO] [stdout] | [INFO] [stdout] 491 | CLASS_BLOCK_CTX => print!("(block_ctx)"), [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `class_block_ctx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `CLASS_POINT` should have a snake case name [INFO] [stdout] --> src/om.rs:492:17 [INFO] [stdout] | [INFO] [stdout] 492 | CLASS_POINT => print!("(point)"), [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `class_point` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `CLASS_LG_POS_INT` should have a snake case name [INFO] [stdout] --> src/om.rs:493:17 [INFO] [stdout] | [INFO] [stdout] 493 | CLASS_LG_POS_INT => print!("(lg_pos_int)"), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `class_lg_pos_int` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `CLASS_DISPLAY_BITMAP` should have a snake case name [INFO] [stdout] --> src/om.rs:494:17 [INFO] [stdout] | [INFO] [stdout] 494 | CLASS_DISPLAY_BITMAP => print!("(display_bitmap)"), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `class_display_bitmap` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `CLASS_MSG` should have a snake case name [INFO] [stdout] --> src/om.rs:495:17 [INFO] [stdout] | [INFO] [stdout] 495 | CLASS_MSG => print!("(message)"), [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `class_msg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `CLASS_SEMA` should have a snake case name [INFO] [stdout] --> src/om.rs:497:17 [INFO] [stdout] | [INFO] [stdout] 497 | CLASS_SEMA => print!("(sema)"), [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `class_sema` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `CLASS_CHARACTER` should have a snake case name [INFO] [stdout] --> src/om.rs:498:17 [INFO] [stdout] | [INFO] [stdout] 498 | CLASS_CHARACTER => print!("(character)"), [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `class_character` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `CLASS_FORM` should have a snake case name [INFO] [stdout] --> src/om.rs:499:17 [INFO] [stdout] | [INFO] [stdout] 499 | CLASS_FORM => print!("(form)"), [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `class_form` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/snapshot.rs:54:5 [INFO] [stdout] | [INFO] [stdout] 54 | file.seek(SeekFrom::Start(512)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 54 | let _ = file.seek(SeekFrom::Start(512)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.59s [INFO] running `Command { std: "docker" "inspect" "5b647d0f60221309ea2bed4d598befe7d0bb1d7f3ee4762d726a63e1dc8d0f78", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5b647d0f60221309ea2bed4d598befe7d0bb1d7f3ee4762d726a63e1dc8d0f78", kill_on_drop: false }` [INFO] [stdout] 5b647d0f60221309ea2bed4d598befe7d0bb1d7f3ee4762d726a63e1dc8d0f78 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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] c8c9c0bdf935de57fbb81c90ef4327dc784215c8909a26fa338da2a4c6a2ef29 [INFO] running `Command { std: "docker" "start" "-a" "c8c9c0bdf935de57fbb81c90ef4327dc784215c8909a26fa338da2a4c6a2ef29", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/interp.rs:115:18 [INFO] [stderr] | [INFO] [stderr] 115 | 0...15 => self.push_receiver_var(bytecode), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: `#[warn(ellipsis_inclusive_range_patterns)]` (part of `#[warn(rust_2021_compatibility)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/interp.rs:116:19 [INFO] [stderr] | [INFO] [stderr] 116 | 16...31 => self.push_temp_var(bytecode), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/interp.rs:117:19 [INFO] [stderr] | [INFO] [stderr] 117 | 32...63 => self.push_literal_const(bytecode), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/interp.rs:118:19 [INFO] [stderr] | [INFO] [stderr] 118 | 64...95 => self.push_literal_var(bytecode), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/interp.rs:119:19 [INFO] [stderr] | [INFO] [stderr] 119 | 96...103 => self.pop_and_store_receiver_var(bytecode), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/interp.rs:120:20 [INFO] [stderr] | [INFO] [stderr] 120 | 104...111 => self.pop_and_store_temp_var(bytecode), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/interp.rs:136:20 [INFO] [stderr] | [INFO] [stderr] 136 | 126...127 => panic!("illegal bytecode"), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/interp.rs:147:20 [INFO] [stderr] | [INFO] [stderr] 147 | 138...143 => panic!("illegal bytecode"), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/interp.rs:148:20 [INFO] [stderr] | [INFO] [stderr] 148 | 144...151 => self.short_unconditional_jump(bytecode), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/interp.rs:149:20 [INFO] [stderr] | [INFO] [stderr] 149 | 152...159 => self.jump_if_false(bytecode), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/interp.rs:150:20 [INFO] [stderr] | [INFO] [stderr] 150 | 160...167 => self.extended_unconditional_jump(bytecode), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/interp.rs:151:20 [INFO] [stderr] | [INFO] [stderr] 151 | 168...171 => self.extended_jump_on_true(bytecode), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/interp.rs:152:20 [INFO] [stderr] | [INFO] [stderr] 152 | 172...175 => self.extended_jump_on_false(bytecode), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/interp.rs:153:20 [INFO] [stderr] | [INFO] [stderr] 153 | 176...191 => self.send_arith_msg(bytecode), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/interp.rs:154:20 [INFO] [stderr] | [INFO] [stderr] 154 | 192...207 => panic!("special ops not implemented"), //sCommonMsg [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/interp.rs:155:20 [INFO] [stderr] | [INFO] [stderr] 155 | 208...223 => self.send_literal_with_argc(bytecode, 0), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/interp.rs:156:20 [INFO] [stderr] | [INFO] [stderr] 156 | 224...239 => self.send_literal_with_argc(bytecode, 1), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning: `...` range patterns are deprecated [INFO] [stderr] --> src/interp.rs:157:20 [INFO] [stderr] | [INFO] [stderr] 157 | 240...255 => self.send_literal_with_argc(bytecode, 2), [INFO] [stderr] | ^^^ help: use `..=` for an inclusive range [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around block return value [INFO] [stderr] --> src/interp.rs:643:9 [INFO] [stderr] | [INFO] [stderr] 643 | ((self.lit_cnt_hdr(hdr) + LITERAL_START) * mem::size_of::() as u32 + 1) [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 643 - ((self.lit_cnt_hdr(hdr) + LITERAL_START) * mem::size_of::() as u32 + 1) [INFO] [stderr] 643 + (self.lit_cnt_hdr(hdr) + LITERAL_START) * mem::size_of::() as u32 + 1 [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around block return value [INFO] [stderr] --> src/interp.rs:647:9 [INFO] [stderr] | [INFO] [stderr] 647 | (((hdr) & 0x0F80) >> 7) [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 647 - (((hdr) & 0x0F80) >> 7) [INFO] [stderr] 647 + ((hdr) & 0x0F80) >> 7 [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: the feature `ptr_offset_from` has been stable since 1.47.0 and no longer requires an attribute to enable [INFO] [stderr] --> src/main.rs:1:12 [INFO] [stderr] | [INFO] [stderr] 1 | #![feature(ptr_offset_from)] [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(stable_features)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stderr] --> src/snapshot.rs:22:65 [INFO] [stderr] | [INFO] [stderr] 22 | Err(why) => panic!("couldn't open {}: {}", display, why.description()), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `msg_selector` [INFO] [stderr] --> src/interp.rs:557:21 [INFO] [stderr] | [INFO] [stderr] 557 | let msg_selector = self.msg_selector; [INFO] [stderr] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_msg_selector` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/om.rs:488:17 [INFO] [stderr] | [INFO] [stderr] 488 | CLASS_ARRAY => print!("(array)"), [INFO] [stderr] | ^^^^^^^^^^^ no value can reach this [INFO] [stderr] | [INFO] [stderr] note: multiple earlier patterns match some of the same values [INFO] [stderr] --> src/om.rs:488:17 [INFO] [stderr] | [INFO] [stderr] 486 | CLASS_SMALL_INTEGER => print!("(smi)"), [INFO] [stderr] | ------------------- matches some of the same values [INFO] [stderr] 487 | CLASS_STRING => print!("(string)"), [INFO] [stderr] | ------------ matches some of the same values [INFO] [stderr] 488 | CLASS_ARRAY => print!("(array)"), [INFO] [stderr] | ^^^^^^^^^^^ collectively making this unreachable [INFO] [stderr] = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/om.rs:489:17 [INFO] [stderr] | [INFO] [stderr] 489 | CLASS_FLOAT => print!("(float)"), [INFO] [stderr] | ^^^^^^^^^^^ no value can reach this [INFO] [stderr] | [INFO] [stderr] note: multiple earlier patterns match some of the same values [INFO] [stderr] --> src/om.rs:489:17 [INFO] [stderr] | [INFO] [stderr] 486 | CLASS_SMALL_INTEGER => print!("(smi)"), [INFO] [stderr] | ------------------- matches some of the same values [INFO] [stderr] 487 | CLASS_STRING => print!("(string)"), [INFO] [stderr] | ------------ matches some of the same values [INFO] [stderr] 488 | CLASS_ARRAY => print!("(array)"), [INFO] [stderr] 489 | CLASS_FLOAT => print!("(float)"), [INFO] [stderr] | ^^^^^^^^^^^ collectively making this unreachable [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/om.rs:490:17 [INFO] [stderr] | [INFO] [stderr] 490 | CLASS_METH_CTX => print!("(meth_ctx)"), [INFO] [stderr] | ^^^^^^^^^^^^^^ no value can reach this [INFO] [stderr] | [INFO] [stderr] note: multiple earlier patterns match some of the same values [INFO] [stderr] --> src/om.rs:490:17 [INFO] [stderr] | [INFO] [stderr] 486 | CLASS_SMALL_INTEGER => print!("(smi)"), [INFO] [stderr] | ------------------- matches some of the same values [INFO] [stderr] 487 | CLASS_STRING => print!("(string)"), [INFO] [stderr] | ------------ matches some of the same values [INFO] [stderr] ... [INFO] [stderr] 490 | CLASS_METH_CTX => print!("(meth_ctx)"), [INFO] [stderr] | ^^^^^^^^^^^^^^ collectively making this unreachable [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/om.rs:491:17 [INFO] [stderr] | [INFO] [stderr] 491 | CLASS_BLOCK_CTX => print!("(block_ctx)"), [INFO] [stderr] | ^^^^^^^^^^^^^^^ no value can reach this [INFO] [stderr] | [INFO] [stderr] note: multiple earlier patterns match some of the same values [INFO] [stderr] --> src/om.rs:491:17 [INFO] [stderr] | [INFO] [stderr] 486 | CLASS_SMALL_INTEGER => print!("(smi)"), [INFO] [stderr] | ------------------- matches some of the same values [INFO] [stderr] 487 | CLASS_STRING => print!("(string)"), [INFO] [stderr] | ------------ matches some of the same values [INFO] [stderr] ... [INFO] [stderr] 491 | CLASS_BLOCK_CTX => print!("(block_ctx)"), [INFO] [stderr] | ^^^^^^^^^^^^^^^ collectively making this unreachable [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/om.rs:492:17 [INFO] [stderr] | [INFO] [stderr] 492 | CLASS_POINT => print!("(point)"), [INFO] [stderr] | ^^^^^^^^^^^ no value can reach this [INFO] [stderr] | [INFO] [stderr] note: multiple earlier patterns match some of the same values [INFO] [stderr] --> src/om.rs:492:17 [INFO] [stderr] | [INFO] [stderr] 486 | CLASS_SMALL_INTEGER => print!("(smi)"), [INFO] [stderr] | ------------------- matches some of the same values [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] 487 | CLASS_STRING => print!("(string)"), [INFO] [stderr] | ------------ matches some of the same values [INFO] [stderr] ... [INFO] [stderr] 492 | CLASS_POINT => print!("(point)"), [INFO] [stderr] | ^^^^^^^^^^^ collectively making this unreachable [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/om.rs:493:17 [INFO] [stderr] | [INFO] [stderr] 493 | CLASS_LG_POS_INT => print!("(lg_pos_int)"), [INFO] [stderr] | ^^^^^^^^^^^^^^^^ no value can reach this [INFO] [stderr] | [INFO] [stderr] note: multiple earlier patterns match some of the same values [INFO] [stderr] --> src/om.rs:493:17 [INFO] [stderr] | [INFO] [stderr] 486 | CLASS_SMALL_INTEGER => print!("(smi)"), [INFO] [stderr] | ------------------- matches some of the same values [INFO] [stderr] 487 | CLASS_STRING => print!("(string)"), [INFO] [stderr] | ------------ matches some of the same values [INFO] [stderr] ... [INFO] [stderr] 493 | CLASS_LG_POS_INT => print!("(lg_pos_int)"), [INFO] [stderr] | ^^^^^^^^^^^^^^^^ collectively making this unreachable [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/om.rs:494:17 [INFO] [stderr] | [INFO] [stderr] 494 | CLASS_DISPLAY_BITMAP => print!("(display_bitmap)"), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ no value can reach this [INFO] [stderr] | [INFO] [stderr] note: multiple earlier patterns match some of the same values [INFO] [stderr] --> src/om.rs:494:17 [INFO] [stderr] | [INFO] [stderr] 486 | CLASS_SMALL_INTEGER => print!("(smi)"), [INFO] [stderr] | ------------------- matches some of the same values [INFO] [stderr] 487 | CLASS_STRING => print!("(string)"), [INFO] [stderr] | ------------ matches some of the same values [INFO] [stderr] ... [INFO] [stderr] 494 | CLASS_DISPLAY_BITMAP => print!("(display_bitmap)"), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ collectively making this unreachable [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/om.rs:495:17 [INFO] [stderr] | [INFO] [stderr] 495 | CLASS_MSG => print!("(message)"), [INFO] [stderr] | ^^^^^^^^^ no value can reach this [INFO] [stderr] | [INFO] [stderr] note: multiple earlier patterns match some of the same values [INFO] [stderr] --> src/om.rs:495:17 [INFO] [stderr] | [INFO] [stderr] 486 | CLASS_SMALL_INTEGER => print!("(smi)"), [INFO] [stderr] | ------------------- matches some of the same values [INFO] [stderr] 487 | CLASS_STRING => print!("(string)"), [INFO] [stderr] | ------------ matches some of the same values [INFO] [stderr] ... [INFO] [stderr] 495 | CLASS_MSG => print!("(message)"), [INFO] [stderr] | ^^^^^^^^^ collectively making this unreachable [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/om.rs:496:17 [INFO] [stderr] | [INFO] [stderr] 487 | CLASS_STRING => print!("(string)"), [INFO] [stderr] | ------------ matches any value [INFO] [stderr] ... [INFO] [stderr] 496 | CLASS_COMPILED_METHOD => print!("(compiled_method)"), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ no value can reach this [INFO] [stderr] | [INFO] [stderr] help: you might have meant to pattern match against the value of constant `CLASS_STRING` instead of introducing a new catch-all binding [INFO] [stderr] | [INFO] [stderr] 487 | std_ptrs::CLASS_STRING => print!("(string)"), [INFO] [stderr] | ++++++++++ [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/om.rs:497:17 [INFO] [stderr] | [INFO] [stderr] 497 | CLASS_SEMA => print!("(sema)"), [INFO] [stderr] | ^^^^^^^^^^ no value can reach this [INFO] [stderr] | [INFO] [stderr] note: multiple earlier patterns match some of the same values [INFO] [stderr] --> src/om.rs:497:17 [INFO] [stderr] | [INFO] [stderr] 486 | CLASS_SMALL_INTEGER => print!("(smi)"), [INFO] [stderr] | ------------------- matches some of the same values [INFO] [stderr] 487 | CLASS_STRING => print!("(string)"), [INFO] [stderr] | ------------ matches some of the same values [INFO] [stderr] ... [INFO] [stderr] 497 | CLASS_SEMA => print!("(sema)"), [INFO] [stderr] | ^^^^^^^^^^ collectively making this unreachable [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/om.rs:498:17 [INFO] [stderr] | [INFO] [stderr] 498 | CLASS_CHARACTER => print!("(character)"), [INFO] [stderr] | ^^^^^^^^^^^^^^^ no value can reach this [INFO] [stderr] | [INFO] [stderr] note: multiple earlier patterns match some of the same values [INFO] [stderr] --> src/om.rs:498:17 [INFO] [stderr] | [INFO] [stderr] 486 | CLASS_SMALL_INTEGER => print!("(smi)"), [INFO] [stderr] | ------------------- matches some of the same values [INFO] [stderr] 487 | CLASS_STRING => print!("(string)"), [INFO] [stderr] | ------------ matches some of the same values [INFO] [stderr] ... [INFO] [stderr] 498 | CLASS_CHARACTER => print!("(character)"), [INFO] [stderr] | ^^^^^^^^^^^^^^^ collectively making this unreachable [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/om.rs:499:17 [INFO] [stderr] | [INFO] [stderr] 499 | CLASS_FORM => print!("(form)"), [INFO] [stderr] | ^^^^^^^^^^ no value can reach this [INFO] [stderr] | [INFO] [stderr] note: multiple earlier patterns match some of the same values [INFO] [stderr] --> src/om.rs:499:17 [INFO] [stderr] | [INFO] [stderr] 486 | CLASS_SMALL_INTEGER => print!("(smi)"), [INFO] [stderr] | ------------------- matches some of the same values [INFO] [stderr] 487 | CLASS_STRING => print!("(string)"), [INFO] [stderr] | ------------ matches some of the same values [INFO] [stderr] ... [INFO] [stderr] 499 | CLASS_FORM => print!("(form)"), [INFO] [stderr] | ^^^^^^^^^^ collectively making this unreachable [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/om.rs:500:17 [INFO] [stderr] | [INFO] [stderr] 500 | _ => print!("(unknown)"), [INFO] [stderr] | ^ no value can reach this [INFO] [stderr] | [INFO] [stderr] note: multiple earlier patterns match some of the same values [INFO] [stderr] --> src/om.rs:500:17 [INFO] [stderr] | [INFO] [stderr] 486 | CLASS_SMALL_INTEGER => print!("(smi)"), [INFO] [stderr] | ------------------- matches some of the same values [INFO] [stderr] 487 | CLASS_STRING => print!("(string)"), [INFO] [stderr] | ------------ matches some of the same values [INFO] [stderr] ... [INFO] [stderr] 500 | _ => print!("(unknown)"), [INFO] [stderr] | ^ collectively making this unreachable [INFO] [stderr] [INFO] [stderr] warning: unused variable: `CLASS_STRING` [INFO] [stderr] --> src/om.rs:487:17 [INFO] [stderr] | [INFO] [stderr] 487 | CLASS_STRING => print!("(string)"), [INFO] [stderr] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_CLASS_STRING` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `CLASS_ARRAY` [INFO] [stderr] --> src/om.rs:488:17 [INFO] [stderr] | [INFO] [stderr] 488 | CLASS_ARRAY => print!("(array)"), [INFO] [stderr] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_CLASS_ARRAY` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `CLASS_FLOAT` [INFO] [stderr] --> src/om.rs:489:17 [INFO] [stderr] | [INFO] [stderr] 489 | CLASS_FLOAT => print!("(float)"), [INFO] [stderr] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_CLASS_FLOAT` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `CLASS_METH_CTX` [INFO] [stderr] --> src/om.rs:490:17 [INFO] [stderr] | [INFO] [stderr] 490 | CLASS_METH_CTX => print!("(meth_ctx)"), [INFO] [stderr] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_CLASS_METH_CTX` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `CLASS_BLOCK_CTX` [INFO] [stderr] --> src/om.rs:491:17 [INFO] [stderr] | [INFO] [stderr] 491 | CLASS_BLOCK_CTX => print!("(block_ctx)"), [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_CLASS_BLOCK_CTX` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `CLASS_POINT` [INFO] [stderr] --> src/om.rs:492:17 [INFO] [stderr] | [INFO] [stderr] 492 | CLASS_POINT => print!("(point)"), [INFO] [stderr] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_CLASS_POINT` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `CLASS_LG_POS_INT` [INFO] [stderr] --> src/om.rs:493:17 [INFO] [stderr] | [INFO] [stderr] 493 | CLASS_LG_POS_INT => print!("(lg_pos_int)"), [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_CLASS_LG_POS_INT` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `CLASS_DISPLAY_BITMAP` [INFO] [stderr] --> src/om.rs:494:17 [INFO] [stderr] | [INFO] [stderr] 494 | CLASS_DISPLAY_BITMAP => print!("(display_bitmap)"), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_CLASS_DISPLAY_BITMAP` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `CLASS_MSG` [INFO] [stderr] --> src/om.rs:495:17 [INFO] [stderr] | [INFO] [stderr] 495 | CLASS_MSG => print!("(message)"), [INFO] [stderr] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_CLASS_MSG` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `CLASS_SEMA` [INFO] [stderr] --> src/om.rs:497:17 [INFO] [stderr] | [INFO] [stderr] 497 | CLASS_SEMA => print!("(sema)"), [INFO] [stderr] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_CLASS_SEMA` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `CLASS_CHARACTER` [INFO] [stderr] --> src/om.rs:498:17 [INFO] [stderr] | [INFO] [stderr] 498 | CLASS_CHARACTER => print!("(character)"), [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_CLASS_CHARACTER` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `CLASS_FORM` [INFO] [stderr] --> src/om.rs:499:17 [INFO] [stderr] | [INFO] [stderr] 499 | CLASS_FORM => print!("(form)"), [INFO] [stderr] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_CLASS_FORM` [INFO] [stderr] [INFO] [stderr] warning: constant `SENDER` is never used [INFO] [stderr] --> src/context.rs:13:11 [INFO] [stderr] | [INFO] [stderr] 13 | pub const SENDER: isize = 0; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: constant `INSTR_PTR` is never used [INFO] [stderr] --> src/context.rs:14:11 [INFO] [stderr] | [INFO] [stderr] 14 | pub const INSTR_PTR: isize = 1; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `STACK_PTR` is never used [INFO] [stderr] --> src/context.rs:15:11 [INFO] [stderr] | [INFO] [stderr] 15 | pub const STACK_PTR: isize = 2; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `METHOD` is never used [INFO] [stderr] --> src/context.rs:16:11 [INFO] [stderr] | [INFO] [stderr] 16 | pub const METHOD: isize = 3; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `CALLER` is never used [INFO] [stderr] --> src/context.rs:20:11 [INFO] [stderr] | [INFO] [stderr] 20 | pub const CALLER: isize = 0; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `BLOCK_ARGC` is never used [INFO] [stderr] --> src/context.rs:21:11 [INFO] [stderr] | [INFO] [stderr] 21 | pub const BLOCK_ARGC: isize = 3; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `INIT_IP` is never used [INFO] [stderr] --> src/context.rs:22:11 [INFO] [stderr] | [INFO] [stderr] 22 | pub const INIT_IP: isize = 4; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `HOME` is never used [INFO] [stderr] --> src/context.rs:23:11 [INFO] [stderr] | [INFO] [stderr] 23 | pub const HOME: isize = 5; [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `HEAP_SPACE_STOP` is never used [INFO] [stderr] --> src/om.rs:21:7 [INFO] [stderr] | [INFO] [stderr] 21 | const HEAP_SPACE_STOP: usize = OM_SIZE - 1; /* G/R p.658 */ [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: static `LITERAL_START` is never used [INFO] [stderr] --> src/om.rs:29:8 [INFO] [stderr] | [INFO] [stderr] 29 | static LITERAL_START: u32 = 1; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `SUPER_CLASS` is never used [INFO] [stderr] --> src/om.rs:31:11 [INFO] [stderr] | [INFO] [stderr] 31 | pub const SUPER_CLASS: u8 = 0; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `INSTANCE_SPEC` is never used [INFO] [stderr] --> src/om.rs:33:11 [INFO] [stderr] | [INFO] [stderr] 33 | pub const INSTANCE_SPEC: u8 = 2; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods `dump_ot` and `dump_oop` are never used [INFO] [stderr] --> src/om.rs:475:12 [INFO] [stderr] | [INFO] [stderr] 80 | impl OM { [INFO] [stderr] | ------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 475 | pub fn dump_ot(&self) { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 481 | pub fn dump_oop(&self, oop: OOP) { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `PROC_LISTS` is never used [INFO] [stderr] --> src/process.rs:1:11 [INFO] [stderr] | [INFO] [stderr] 1 | pub const PROC_LISTS: u8 = 0; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `FIRST_LINK` is never used [INFO] [stderr] --> src/process.rs:4:11 [INFO] [stderr] | [INFO] [stderr] 4 | pub const FIRST_LINK: u8 = 0; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `LAST_LINK` is never used [INFO] [stderr] --> src/process.rs:5:11 [INFO] [stderr] | [INFO] [stderr] 5 | pub const LAST_LINK: u8 = 1; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `EXCESS_SIGNALS` is never used [INFO] [stderr] --> src/process.rs:7:11 [INFO] [stderr] | [INFO] [stderr] 7 | pub const EXCESS_SIGNALS: u8 = 2; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `NEXT_LINK` is never used [INFO] [stderr] --> src/process.rs:9:11 [INFO] [stderr] | [INFO] [stderr] 9 | pub const NEXT_LINK: u8 = 0; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `PRIORITY` is never used [INFO] [stderr] --> src/process.rs:12:11 [INFO] [stderr] | [INFO] [stderr] 12 | pub const PRIORITY: u8 = 2; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `MY_LIST` is never used [INFO] [stderr] --> src/process.rs:13:11 [INFO] [stderr] | [INFO] [stderr] 13 | pub const MY_LIST: u8 = 3; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `CANNOT_RETURN` is never used [INFO] [stderr] --> src/std_ptrs.rs:16:11 [INFO] [stderr] | [INFO] [stderr] 16 | pub const CANNOT_RETURN: OOP = 22; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `CHAR_TABLE` is never used [INFO] [stderr] --> src/std_ptrs.rs:18:11 [INFO] [stderr] | [INFO] [stderr] 18 | pub const CHAR_TABLE: OOP = 25; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `CLASS_STRING` is never used [INFO] [stderr] --> src/std_ptrs.rs:27:11 [INFO] [stderr] | [INFO] [stderr] 27 | pub const CLASS_STRING: OOP = 7; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `CLASS_FLOAT` is never used [INFO] [stderr] --> src/std_ptrs.rs:29:11 [INFO] [stderr] | [INFO] [stderr] 29 | pub const CLASS_FLOAT: OOP = 10; /* not defined in G/R */ [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `CLASS_BLOCK_CTX` is never used [INFO] [stderr] --> src/std_ptrs.rs:31:11 [INFO] [stderr] | [INFO] [stderr] 31 | pub const CLASS_BLOCK_CTX: OOP = 12; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `CLASS_POINT` is never used [INFO] [stderr] --> src/std_ptrs.rs:32:11 [INFO] [stderr] | [INFO] [stderr] 32 | pub const CLASS_POINT: OOP = 13; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `CLASS_LG_POS_INT` is never used [INFO] [stderr] --> src/std_ptrs.rs:33:11 [INFO] [stderr] | [INFO] [stderr] 33 | pub const CLASS_LG_POS_INT: OOP = 14; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `CLASS_DISPLAY_BITMAP` is never used [INFO] [stderr] --> src/std_ptrs.rs:34:11 [INFO] [stderr] | [INFO] [stderr] 34 | pub const CLASS_DISPLAY_BITMAP: OOP = 15; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `CLASS_SEMA` is never used [INFO] [stderr] --> src/std_ptrs.rs:37:11 [INFO] [stderr] | [INFO] [stderr] 37 | pub const CLASS_SEMA: OOP = 19; /* not defined in G/R */ [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `CLASS_CHARACTER` is never used [INFO] [stderr] --> src/std_ptrs.rs:38:11 [INFO] [stderr] | [INFO] [stderr] 38 | pub const CLASS_CHARACTER: OOP = 20; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `CLASS_FORM` is never used [INFO] [stderr] --> src/std_ptrs.rs:39:11 [INFO] [stderr] | [INFO] [stderr] 39 | pub const CLASS_FORM: OOP = 0x629; /* required for BitBlt */ [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: structure field `FSENDER_CALLER` should have a snake case name [INFO] [stderr] --> src/context.rs:4:9 [INFO] [stderr] | [INFO] [stderr] 4 | pub FSENDER_CALLER: OOP, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `fsender_caller` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: structure field `FINSTR_PTR` should have a snake case name [INFO] [stderr] --> src/context.rs:5:9 [INFO] [stderr] | [INFO] [stderr] 5 | pub FINSTR_PTR: OOP, [INFO] [stderr] | ^^^^^^^^^^ help: convert the identifier to snake case: `finstr_ptr` [INFO] [stderr] [INFO] [stderr] warning: structure field `FSTACK_PTR` should have a snake case name [INFO] [stderr] --> src/context.rs:6:9 [INFO] [stderr] | [INFO] [stderr] 6 | pub FSTACK_PTR: OOP, [INFO] [stderr] | ^^^^^^^^^^ help: convert the identifier to snake case: `fstack_ptr` [INFO] [stderr] [INFO] [stderr] warning: structure field `FMETHOD_BLOCK_ARGC` should have a snake case name [INFO] [stderr] --> src/context.rs:7:9 [INFO] [stderr] | [INFO] [stderr] 7 | pub FMETHOD_BLOCK_ARGC: OOP, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `fmethod_block_argc` [INFO] [stderr] [INFO] [stderr] warning: structure field `FINIT_IP` should have a snake case name [INFO] [stderr] --> src/context.rs:8:9 [INFO] [stderr] | [INFO] [stderr] 8 | pub FINIT_IP: OOP, [INFO] [stderr] | ^^^^^^^^ help: convert the identifier to snake case: `finit_ip` [INFO] [stderr] [INFO] [stderr] warning: structure field `FRECEIVER_HOME` should have a snake case name [INFO] [stderr] --> src/context.rs:9:9 [INFO] [stderr] | [INFO] [stderr] 9 | pub FRECEIVER_HOME: OOP, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `freceiver_home` [INFO] [stderr] [INFO] [stderr] warning: structure field `FTEMP_FRAME` should have a snake case name [INFO] [stderr] --> src/context.rs:10:9 [INFO] [stderr] | [INFO] [stderr] 10 | pub FTEMP_FRAME: [OOP; 32], [INFO] [stderr] | ^^^^^^^^^^^ help: convert the identifier to snake case: `ftemp_frame` [INFO] [stderr] [INFO] [stderr] warning: a dangling pointer will be produced because the temporary `Vec` will be dropped [INFO] [stderr] --> src/interp.rs:47:28 [INFO] [stderr] | [INFO] [stderr] 47 | ip: vec![0; 1].as_mut_ptr(), [INFO] [stderr] | ---------- ^^^^^^^^^^ this pointer will immediately be invalid [INFO] [stderr] | | [INFO] [stderr] | this `Vec` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stderr] | [INFO] [stderr] = note: pointers do not have a lifetime; when calling `as_mut_ptr` the `Vec` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stderr] = help: you must make sure that the variable you bind the `Vec` to lives at least as long as the pointer returned by the call to `as_mut_ptr` [INFO] [stderr] = help: in particular, if this pointer is returned from the current function, binding the `Vec` inside the function will not suffice [INFO] [stderr] = help: for more information, see [INFO] [stderr] = note: `#[warn(dangling_pointers_from_temporaries)]` on by default [INFO] [stderr] [INFO] [stderr] warning: a dangling pointer will be produced because the temporary `Vec` will be dropped [INFO] [stderr] --> src/interp.rs:48:28 [INFO] [stderr] | [INFO] [stderr] 48 | sp: vec![0; 1].as_mut_ptr(), [INFO] [stderr] | ---------- ^^^^^^^^^^ this pointer will immediately be invalid [INFO] [stderr] | | [INFO] [stderr] | this `Vec` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stderr] | [INFO] [stderr] = note: pointers do not have a lifetime; when calling `as_mut_ptr` the `Vec` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stderr] = help: you must make sure that the variable you bind the `Vec` to lives at least as long as the pointer returned by the call to `as_mut_ptr` [INFO] [stderr] = help: in particular, if this pointer is returned from the current function, binding the `Vec` inside the function will not suffice [INFO] [stderr] = help: for more information, see [INFO] [stderr] [INFO] [stderr] warning: hiding a lifetime that's named elsewhere is confusing [INFO] [stderr] --> src/interp.rs:44:35 [INFO] [stderr] | [INFO] [stderr] 44 | pub fn new(om: &'a mut OM) -> Interpreter { [INFO] [stderr] | -- ^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stderr] | | [INFO] [stderr] | the lifetime is named 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: consistently use `'a` [INFO] [stderr] | [INFO] [stderr] 44 | pub fn new(om: &'a mut OM) -> Interpreter<'a> { [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: a dangling pointer will be produced because the temporary `Vec` will be dropped [INFO] [stderr] --> src/om.rs:83:38 [INFO] [stderr] | [INFO] [stderr] 83 | object_space: vec![0; 1].as_mut_ptr(), [INFO] [stderr] | ---------- ^^^^^^^^^^ this pointer will immediately be invalid [INFO] [stderr] | | [INFO] [stderr] | this `Vec` is deallocated at the end of the statement, bind it to a variable to extend its lifetime [INFO] [stderr] | [INFO] [stderr] = note: pointers do not have a lifetime; when calling `as_mut_ptr` the `Vec` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned [INFO] [stderr] = help: you must make sure that the variable you bind the `Vec` to lives at least as long as the pointer returned by the call to `as_mut_ptr` [INFO] [stderr] = help: in particular, if this pointer is returned from the current function, binding the `Vec` inside the function will not suffice [INFO] [stderr] = help: for more information, see [INFO] [stderr] [INFO] [stderr] warning: calls to `std::mem::forget` with a reference instead of an owned value does nothing [INFO] [stderr] --> src/om.rs:211:9 [INFO] [stderr] | [INFO] [stderr] 211 | mem::forget(object_space); [INFO] [stderr] | ^^^^^^^^^^^^------------^ [INFO] [stderr] | | [INFO] [stderr] | argument has type `&mut Vec` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(forgetting_references)]` on by default [INFO] [stderr] help: use `let _ = ...` to ignore the expression or result [INFO] [stderr] | [INFO] [stderr] 211 - mem::forget(object_space); [INFO] [stderr] 211 + let _ = object_space; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: variable `defaultEntry` should have a snake case name [INFO] [stderr] --> src/om.rs:464:13 [INFO] [stderr] | [INFO] [stderr] 464 | let defaultEntry = if ptrs { NIL_PTR } else { 0 }; [INFO] [stderr] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `default_entry` [INFO] [stderr] [INFO] [stderr] warning: variable `CLASS_STRING` should have a snake case name [INFO] [stderr] --> src/om.rs:487:17 [INFO] [stderr] | [INFO] [stderr] 487 | CLASS_STRING => print!("(string)"), [INFO] [stderr] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `class_string` [INFO] [stderr] [INFO] [stderr] warning: variable `CLASS_ARRAY` should have a snake case name [INFO] [stderr] --> src/om.rs:488:17 [INFO] [stderr] | [INFO] [stderr] 488 | CLASS_ARRAY => print!("(array)"), [INFO] [stderr] | ^^^^^^^^^^^ help: convert the identifier to snake case: `class_array` [INFO] [stderr] [INFO] [stderr] warning: variable `CLASS_FLOAT` should have a snake case name [INFO] [stderr] --> src/om.rs:489:17 [INFO] [stderr] | [INFO] [stderr] 489 | CLASS_FLOAT => print!("(float)"), [INFO] [stderr] | ^^^^^^^^^^^ help: convert the identifier to snake case: `class_float` [INFO] [stderr] [INFO] [stderr] warning: variable `CLASS_METH_CTX` should have a snake case name [INFO] [stderr] --> src/om.rs:490:17 [INFO] [stderr] | [INFO] [stderr] 490 | CLASS_METH_CTX => print!("(meth_ctx)"), [INFO] [stderr] | ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `class_meth_ctx` [INFO] [stderr] [INFO] [stderr] warning: variable `CLASS_BLOCK_CTX` should have a snake case name [INFO] [stderr] --> src/om.rs:491:17 [INFO] [stderr] | [INFO] [stderr] 491 | CLASS_BLOCK_CTX => print!("(block_ctx)"), [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `class_block_ctx` [INFO] [stderr] [INFO] [stderr] warning: variable `CLASS_POINT` should have a snake case name [INFO] [stderr] --> src/om.rs:492:17 [INFO] [stderr] | [INFO] [stderr] 492 | CLASS_POINT => print!("(point)"), [INFO] [stderr] | ^^^^^^^^^^^ help: convert the identifier to snake case: `class_point` [INFO] [stderr] [INFO] [stderr] warning: variable `CLASS_LG_POS_INT` should have a snake case name [INFO] [stderr] --> src/om.rs:493:17 [INFO] [stderr] | [INFO] [stderr] 493 | CLASS_LG_POS_INT => print!("(lg_pos_int)"), [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `class_lg_pos_int` [INFO] [stderr] [INFO] [stderr] warning: variable `CLASS_DISPLAY_BITMAP` should have a snake case name [INFO] [stderr] --> src/om.rs:494:17 [INFO] [stderr] | [INFO] [stderr] 494 | CLASS_DISPLAY_BITMAP => print!("(display_bitmap)"), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `class_display_bitmap` [INFO] [stderr] [INFO] [stderr] warning: variable `CLASS_MSG` should have a snake case name [INFO] [stderr] --> src/om.rs:495:17 [INFO] [stderr] | [INFO] [stderr] 495 | CLASS_MSG => print!("(message)"), [INFO] [stderr] | ^^^^^^^^^ help: convert the identifier to snake case: `class_msg` [INFO] [stderr] [INFO] [stderr] warning: variable `CLASS_SEMA` should have a snake case name [INFO] [stderr] --> src/om.rs:497:17 [INFO] [stderr] | [INFO] [stderr] 497 | CLASS_SEMA => print!("(sema)"), [INFO] [stderr] | ^^^^^^^^^^ help: convert the identifier to snake case: `class_sema` [INFO] [stderr] [INFO] [stderr] warning: variable `CLASS_CHARACTER` should have a snake case name [INFO] [stderr] --> src/om.rs:498:17 [INFO] [stderr] | [INFO] [stderr] 498 | CLASS_CHARACTER => print!("(character)"), [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `class_character` [INFO] [stderr] [INFO] [stderr] warning: variable `CLASS_FORM` should have a snake case name [INFO] [stderr] --> src/om.rs:499:17 [INFO] [stderr] | [INFO] [stderr] 499 | CLASS_FORM => print!("(form)"), [INFO] [stderr] | ^^^^^^^^^^ help: convert the identifier to snake case: `class_form` [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/snapshot.rs:54:5 [INFO] [stderr] | [INFO] [stderr] 54 | file.seek(SeekFrom::Start(512)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 54 | let _ = file.seek(SeekFrom::Start(512)); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: `rusttalk` (bin "rusttalk" test) generated 105 warnings (run `cargo fix --bin "rusttalk" --tests` to apply 22 suggestions) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.12s [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/rusttalk-5f67bfdc1fce846c) [INFO] running `Command { std: "docker" "inspect" "c8c9c0bdf935de57fbb81c90ef4327dc784215c8909a26fa338da2a4c6a2ef29", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c8c9c0bdf935de57fbb81c90ef4327dc784215c8909a26fa338da2a4c6a2ef29", kill_on_drop: false }` [INFO] [stdout] c8c9c0bdf935de57fbb81c90ef4327dc784215c8909a26fa338da2a4c6a2ef29