[INFO] updating cached repository https://github.com/lptstr/zn [INFO] running `"git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "-c" "remote.origin.fetch=refs/heads/*:refs/heads/*" "fetch" "origin" "--force" "--prune"` [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 81c3e45ffb5ebcddc066cf50b8c88598d7a9f63a [INFO] checking lptstr/zn against try#1a608893c03d7722effeb0058e82770bd36b4b3c for pr-66504-1 [INFO] running `"git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flptstr%2Fzn" "/workspace/builds/worker-5/source"` [INFO] [stderr] Cloning into '/workspace/builds/worker-5/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/lptstr/zn on toolchain 1a608893c03d7722effeb0058e82770bd36b4b3c [INFO] running `"/workspace/cargo-home/bin/cargo" "+1a608893c03d7722effeb0058e82770bd36b4b3c" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started tweaking git repo https://github.com/lptstr/zn [INFO] finished tweaking git repo https://github.com/lptstr/zn [INFO] tweaked toml for git repo https://github.com/lptstr/zn written to /workspace/builds/worker-5/source/Cargo.toml [INFO] crate git repo https://github.com/lptstr/zn already has a lockfile, it will not be regenerated [INFO] running `"/workspace/cargo-home/bin/cargo" "+1a608893c03d7722effeb0058e82770bd36b4b3c" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/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" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+1a608893c03d7722effeb0058e82770bd36b4b3c" "check" "--frozen" "--all" "--all-targets"` [INFO] [stdout] a4e611287175ca534438eddd9cbe76553658b99a0e51ca88f1977f9dd1046e29 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `"docker" "start" "-a" "a4e611287175ca534438eddd9cbe76553658b99a0e51ca88f1977f9dd1046e29"` [INFO] [stderr] Checking zn v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] warning: value assigned to `i` is never read [INFO] [stderr] --> src/lexer.rs:15:17 [INFO] [stderr] | [INFO] [stderr] 15 | i = i + 1; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_assignments)]` on by default [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `ret` is never read [INFO] [stderr] --> src/types.rs:56:13 [INFO] [stderr] | [INFO] [stderr] 56 | ret = false; [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: unused variable: `reason` [INFO] [stderr] --> src/zn.rs:135:5 [INFO] [stderr] | [INFO] [stderr] 135 | reason: ErrorCause, [INFO] [stderr] | ^^^^^^ help: consider prefixing with an underscore: `_reason` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] error[E0716]: temporary value dropped while borrowed [INFO] [stderr] --> src/parser.rs:19:35 [INFO] [stderr] | [INFO] [stderr] 19 | let command: &'static str = &*chars[0].to_string(); [INFO] [stderr] | ------------ ^^^^^^^^^^^^^^^^^^^^ creates a temporary which is freed while still in use [INFO] [stderr] | | [INFO] [stderr] | type annotation requires that borrow lasts for `'static` [INFO] [stderr] ... [INFO] [stderr] 56 | } [INFO] [stderr] | - temporary value is freed at the end of this statement [INFO] [stderr] [INFO] [stderr] warning: value assigned to `i` is never read [INFO] [stderr] --> src/lexer.rs:15:17 [INFO] [stderr] | [INFO] [stderr] 15 | i = i + 1; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_assignments)]` on by default [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `ret` is never read [INFO] [stderr] --> src/types.rs:56:13 [INFO] [stderr] | [INFO] [stderr] 56 | ret = false; [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: unused variable: `reason` [INFO] [stderr] --> src/zn.rs:135:5 [INFO] [stderr] | [INFO] [stderr] 135 | reason: ErrorCause, [INFO] [stderr] | ^^^^^^ help: consider prefixing with an underscore: `_reason` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] error[E0716]: temporary value dropped while borrowed [INFO] [stderr] --> src/parser.rs:27:25 [INFO] [stderr] | [INFO] [stderr] 21 | let mut trailer: &'static str = ""; [INFO] [stderr] | ------------ type annotation requires that borrow lasts for `'static` [INFO] [stderr] ... [INFO] [stderr] 27 | trailer = &*chars[chars.len()-1].to_string(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^- temporary value is freed at the end of this statement [INFO] [stderr] | | [INFO] [stderr] | creates a temporary which is freed while still in use [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/zn.rs:14:9 [INFO] [stderr] | [INFO] [stderr] 14 | for mut ctr in 0..commands.len() { [INFO] [stderr] | ----^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] error[E0716]: temporary value dropped while borrowed [INFO] [stderr] --> src/parser.rs:19:35 [INFO] [stderr] | [INFO] [stderr] 19 | let command: &'static str = &*chars[0].to_string(); [INFO] [stderr] | ------------ ^^^^^^^^^^^^^^^^^^^^ creates a temporary which is freed while still in use [INFO] [stderr] | | [INFO] [stderr] | type annotation requires that borrow lasts for `'static` [INFO] [stderr] ... [INFO] [stderr] 56 | } [INFO] [stderr] | - temporary value is freed at the end of this statement [INFO] [stderr] [INFO] [stderr] error[E0716]: temporary value dropped while borrowed [INFO] [stderr] --> src/parser.rs:27:25 [INFO] [stderr] | [INFO] [stderr] 21 | let mut trailer: &'static str = ""; [INFO] [stderr] | ------------ type annotation requires that borrow lasts for `'static` [INFO] [stderr] ... [INFO] [stderr] 27 | trailer = &*chars[chars.len()-1].to_string(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^- temporary value is freed at the end of this statement [INFO] [stderr] | | [INFO] [stderr] | creates a temporary which is freed while still in use [INFO] [stderr] [INFO] [stderr] error[E0507]: cannot move out of `*dest` which is behind a shared reference [INFO] [stderr] --> src/zn.rs:54:54 [INFO] [stderr] | [INFO] [stderr] 54 | TokenType::Address => if !Address::is_valid(*dest, BUFFER) { [INFO] [stderr] | ^^^^^ move occurs because `*dest` has type `types::Token`, which does not implement the `Copy` trait [INFO] [stderr] [INFO] [stderr] error[E0507]: cannot move out of `*src` which is behind a shared reference [INFO] [stderr] --> src/zn.rs:57:91 [INFO] [stderr] | [INFO] [stderr] 57 | BUFFER[dest.token.parse::().unwrap()] = getval(BUFFER, REGSTR, DSTACK, *src, [INFO] [stderr] | ^^^^ move occurs because `*src` has type `types::Token`, which does not implement the `Copy` trait [INFO] [stderr] [INFO] [stderr] error[E0507]: cannot move out of `*dest` which is behind a shared reference [INFO] [stderr] --> src/zn.rs:60:56 [INFO] [stderr] | [INFO] [stderr] 60 | TokenType::Register => if !Registers::is_valid(*dest) { [INFO] [stderr] | ^^^^^ move occurs because `*dest` has type `types::Token`, which does not implement the `Copy` trait [INFO] [stderr] [INFO] [stderr] error[E0507]: cannot move out of `*src` which is behind a shared reference [INFO] [stderr] --> src/zn.rs:64:66 [INFO] [stderr] | [INFO] [stderr] 64 | "r" => REGSTR.R = getval(BUFFER, REGSTR, DSTACK, *src, [INFO] [stderr] | ^^^^ move occurs because `*src` has type `types::Token`, which does not implement the `Copy` trait [INFO] [stderr] [INFO] [stderr] error[E0507]: cannot move out of `*src` which is behind a shared reference [INFO] [stderr] --> src/zn.rs:66:66 [INFO] [stderr] | [INFO] [stderr] 66 | "c" => REGSTR.C = getval(BUFFER, REGSTR, DSTACK, *src, [INFO] [stderr] | ^^^^ move occurs because `*src` has type `types::Token`, which does not implement the `Copy` trait [INFO] [stderr] [INFO] [stderr] error[E0507]: cannot move out of `*src` which is behind a shared reference [INFO] [stderr] --> src/zn.rs:68:66 [INFO] [stderr] | [INFO] [stderr] 68 | "i" => REGSTR.I = getval(BUFFER, REGSTR, DSTACK, *src, [INFO] [stderr] | ^^^^ move occurs because `*src` has type `types::Token`, which does not implement the `Copy` trait [INFO] [stderr] [INFO] [stderr] error[E0507]: cannot move out of `*src` which is behind a shared reference [INFO] [stderr] --> src/zn.rs:70:66 [INFO] [stderr] | [INFO] [stderr] 70 | "h" => REGSTR.H = getval(BUFFER, REGSTR, DSTACK, *src, [INFO] [stderr] | ^^^^ move occurs because `*src` has type `types::Token`, which does not implement the `Copy` trait [INFO] [stderr] [INFO] [stderr] error[E0507]: cannot move out of `*src` which is behind a shared reference [INFO] [stderr] --> src/zn.rs:72:66 [INFO] [stderr] | [INFO] [stderr] 72 | "x" => REGSTR.X = getval(BUFFER, REGSTR, DSTACK, *src, [INFO] [stderr] | ^^^^ move occurs because `*src` has type `types::Token`, which does not implement the `Copy` trait [INFO] [stderr] [INFO] [stderr] error[E0507]: cannot move out of `*src` which is behind a shared reference [INFO] [stderr] --> src/zn.rs:74:66 [INFO] [stderr] | [INFO] [stderr] 74 | "a" => REGSTR.A = getval(BUFFER, REGSTR, DSTACK, *src, [INFO] [stderr] | ^^^^ move occurs because `*src` has type `types::Token`, which does not implement the `Copy` trait [INFO] [stderr] [INFO] [stderr] error[E0507]: cannot move out of `*src` which is behind a shared reference [INFO] [stderr] --> src/zn.rs:76:66 [INFO] [stderr] | [INFO] [stderr] 76 | "d" => REGSTR.D = getval(BUFFER, REGSTR, DSTACK, *src, [INFO] [stderr] | ^^^^ move occurs because `*src` has type `types::Token`, which does not implement the `Copy` trait [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/zn.rs:14:9 [INFO] [stderr] | [INFO] [stderr] 14 | for mut ctr in 0..commands.len() { [INFO] [stderr] | ----^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] error[E0507]: cannot move out of `*dest` which is behind a shared reference [INFO] [stderr] --> src/zn.rs:54:54 [INFO] [stderr] | [INFO] [stderr] 54 | TokenType::Address => if !Address::is_valid(*dest, BUFFER) { [INFO] [stderr] | ^^^^^ move occurs because `*dest` has type `types::Token`, which does not implement the `Copy` trait [INFO] [stderr] [INFO] [stderr] error[E0507]: cannot move out of `*src` which is behind a shared reference [INFO] [stderr] --> src/zn.rs:57:91 [INFO] [stderr] | [INFO] [stderr] 57 | BUFFER[dest.token.parse::().unwrap()] = getval(BUFFER, REGSTR, DSTACK, *src, [INFO] [stderr] | ^^^^ move occurs because `*src` has type `types::Token`, which does not implement the `Copy` trait [INFO] [stderr] [INFO] [stderr] error[E0507]: cannot move out of `*dest` which is behind a shared reference [INFO] [stderr] --> src/zn.rs:60:56 [INFO] [stderr] | [INFO] [stderr] 60 | TokenType::Register => if !Registers::is_valid(*dest) { [INFO] [stderr] | ^^^^^ move occurs because `*dest` has type `types::Token`, which does not implement the `Copy` trait [INFO] [stderr] [INFO] [stderr] error[E0507]: cannot move out of `*src` which is behind a shared reference [INFO] [stderr] --> src/zn.rs:64:66 [INFO] [stderr] | [INFO] [stderr] 64 | "r" => REGSTR.R = getval(BUFFER, REGSTR, DSTACK, *src, [INFO] [stderr] | ^^^^ move occurs because `*src` has type `types::Token`, which does not implement the `Copy` trait [INFO] [stderr] [INFO] [stderr] error[E0507]: cannot move out of `*src` which is behind a shared reference [INFO] [stderr] --> src/zn.rs:66:66 [INFO] [stderr] | [INFO] [stderr] 66 | "c" => REGSTR.C = getval(BUFFER, REGSTR, DSTACK, *src, [INFO] [stderr] | ^^^^ move occurs because `*src` has type `types::Token`, which does not implement the `Copy` trait [INFO] [stderr] [INFO] [stderr] error[E0507]: cannot move out of `*src` which is behind a shared reference [INFO] [stderr] --> src/zn.rs:68:66 [INFO] [stderr] | [INFO] [stderr] 68 | "i" => REGSTR.I = getval(BUFFER, REGSTR, DSTACK, *src, [INFO] [stderr] | ^^^^ move occurs because `*src` has type `types::Token`, which does not implement the `Copy` trait [INFO] [stderr] [INFO] [stderr] error[E0507]: cannot move out of `*src` which is behind a shared reference [INFO] [stderr] --> src/zn.rs:70:66 [INFO] [stderr] | [INFO] [stderr] 70 | "h" => REGSTR.H = getval(BUFFER, REGSTR, DSTACK, *src, [INFO] [stderr] | ^^^^ move occurs because `*src` has type `types::Token`, which does not implement the `Copy` trait [INFO] [stderr] [INFO] [stderr] error[E0382]: borrow of moved value: `token` [INFO] [stderr] --> src/zn.rs:100:33 [INFO] [stderr] | [INFO] [stderr] 89 | token: Token, [INFO] [stderr] | ----- move occurs because `token` has type `types::Token`, which does not implement the `Copy` trait [INFO] [stderr] ... [INFO] [stderr] 98 | TokenType::Address => if !Address::is_valid(token, BUFFER) { [INFO] [stderr] | ----- value moved here [INFO] [stderr] 99 | die(ErrorCause::InvalidTokenError, file, commands, command); [INFO] [stderr] 100 | } else { parsed_token = token.token.parse::().unwrap(); }, [INFO] [stderr] | ^^^^^^^^^^^ value borrowed here after move [INFO] [stderr] [INFO] [stderr] error[E0382]: borrow of moved value: `token` [INFO] [stderr] --> src/zn.rs:103:33 [INFO] [stderr] | [INFO] [stderr] 89 | token: Token, [INFO] [stderr] | ----- move occurs because `token` has type `types::Token`, which does not implement the `Copy` trait [INFO] [stderr] ... [INFO] [stderr] 101 | TokenType::Register => if !Registers::is_valid(token) { [INFO] [stderr] | ----- value moved here [INFO] [stderr] 102 | die(ErrorCause::InvalidRegisterError, file, commands, command); [INFO] [stderr] 103 | } else { parsed_token = token.token.parse::().unwrap(); }, [INFO] [stderr] | ^^^^^^^^^^^ value borrowed here after move [INFO] [stderr] [INFO] [stderr] error[E0382]: borrow of moved value: `token` [INFO] [stderr] --> src/zn.rs:106:33 [INFO] [stderr] | [INFO] [stderr] 89 | token: Token, [INFO] [stderr] | ----- move occurs because `token` has type `types::Token`, which does not implement the `Copy` trait [INFO] [stderr] ... [INFO] [stderr] 104 | TokenType::RawValue => if !RawValue::is_valid(token) { [INFO] [stderr] | ----- value moved here [INFO] [stderr] 105 | die(ErrorCause::InvalidTokenError, file, commands, command); [INFO] [stderr] 106 | } else { parsed_token = token.token.parse::().unwrap(); }, [INFO] [stderr] | ^^^^^^^^^^^ value borrowed here after move [INFO] [stderr] [INFO] [stderr] error[E0382]: borrow of moved value: `token` [INFO] [stderr] --> src/zn.rs:112:38 [INFO] [stderr] | [INFO] [stderr] 89 | token: Token, [INFO] [stderr] | ----- move occurs because `token` has type `types::Token`, which does not implement the `Copy` trait [INFO] [stderr] ... [INFO] [stderr] 98 | TokenType::Address => if !Address::is_valid(token, BUFFER) { [INFO] [stderr] | ----- value moved here [INFO] [stderr] ... [INFO] [stderr] 101 | TokenType::Register => if !Registers::is_valid(token) { [INFO] [stderr] | ----- value moved here [INFO] [stderr] ... [INFO] [stderr] 104 | TokenType::RawValue => if !RawValue::is_valid(token) { [INFO] [stderr] | ----- value moved here [INFO] [stderr] ... [INFO] [stderr] 112 | TokenType::Register => match token.token.as_ref() { [INFO] [stderr] | ^^^^^^^^^^^ value borrowed here after move [INFO] [stderr] [INFO] [stderr] error[E0381]: use of possibly-uninitialized variable: `parsed_token` [INFO] [stderr] --> src/zn.rs:124:37 [INFO] [stderr] | [INFO] [stderr] 124 | TokenType::RawValue => Some(parsed_token as u8), [INFO] [stderr] | ^^^^^^^^^^^^ use of possibly-uninitialized `parsed_token` [INFO] [stderr] [INFO] [stderr] error[E0507]: cannot move out of `*src` which is behind a shared reference [INFO] [stderr] --> src/zn.rs:72:66 [INFO] [stderr] | [INFO] [stderr] 72 | "x" => REGSTR.X = getval(BUFFER, REGSTR, DSTACK, *src, [INFO] [stderr] | ^^^^ move occurs because `*src` has type `types::Token`, which does not implement the `Copy` trait [INFO] [stderr] [INFO] [stderr] error[E0507]: cannot move out of `*src` which is behind a shared reference [INFO] [stderr] --> src/zn.rs:74:66 [INFO] [stderr] | [INFO] [stderr] 74 | "a" => REGSTR.A = getval(BUFFER, REGSTR, DSTACK, *src, [INFO] [stderr] | ^^^^ move occurs because `*src` has type `types::Token`, which does not implement the `Copy` trait [INFO] [stderr] [INFO] [stderr] error[E0507]: cannot move out of `*src` which is behind a shared reference [INFO] [stderr] --> src/zn.rs:76:66 [INFO] [stderr] | [INFO] [stderr] 76 | "d" => REGSTR.D = getval(BUFFER, REGSTR, DSTACK, *src, [INFO] [stderr] | ^^^^ move occurs because `*src` has type `types::Token`, which does not implement the `Copy` trait [INFO] [stderr] [INFO] [stderr] error[E0382]: borrow of moved value: `token` [INFO] [stderr] --> src/zn.rs:100:33 [INFO] [stderr] | [INFO] [stderr] 89 | token: Token, [INFO] [stderr] | ----- move occurs because `token` has type `types::Token`, which does not implement the `Copy` trait [INFO] [stderr] ... [INFO] [stderr] 98 | TokenType::Address => if !Address::is_valid(token, BUFFER) { [INFO] [stderr] | ----- value moved here [INFO] [stderr] 99 | die(ErrorCause::InvalidTokenError, file, commands, command); [INFO] [stderr] 100 | } else { parsed_token = token.token.parse::().unwrap(); }, [INFO] [stderr] | ^^^^^^^^^^^ value borrowed here after move [INFO] [stderr] [INFO] [stderr] error[E0382]: borrow of moved value: `token` [INFO] [stderr] --> src/zn.rs:103:33 [INFO] [stderr] | [INFO] [stderr] 89 | token: Token, [INFO] [stderr] | ----- move occurs because `token` has type `types::Token`, which does not implement the `Copy` trait [INFO] [stderr] ... [INFO] [stderr] 101 | TokenType::Register => if !Registers::is_valid(token) { [INFO] [stderr] | ----- value moved here [INFO] [stderr] 102 | die(ErrorCause::InvalidRegisterError, file, commands, command); [INFO] [stderr] 103 | } else { parsed_token = token.token.parse::().unwrap(); }, [INFO] [stderr] | ^^^^^^^^^^^ value borrowed here after move [INFO] [stderr] [INFO] [stderr] error[E0382]: borrow of moved value: `token` [INFO] [stderr] --> src/zn.rs:106:33 [INFO] [stderr] | [INFO] [stderr] 89 | token: Token, [INFO] [stderr] | ----- move occurs because `token` has type `types::Token`, which does not implement the `Copy` trait [INFO] [stderr] ... [INFO] [stderr] 104 | TokenType::RawValue => if !RawValue::is_valid(token) { [INFO] [stderr] | ----- value moved here [INFO] [stderr] 105 | die(ErrorCause::InvalidTokenError, file, commands, command); [INFO] [stderr] 106 | } else { parsed_token = token.token.parse::().unwrap(); }, [INFO] [stderr] | ^^^^^^^^^^^ value borrowed here after move [INFO] [stderr] [INFO] [stderr] error[E0382]: borrow of moved value: `token` [INFO] [stderr] --> src/zn.rs:112:38 [INFO] [stderr] | [INFO] [stderr] 89 | token: Token, [INFO] [stderr] | ----- move occurs because `token` has type `types::Token`, which does not implement the `Copy` trait [INFO] [stderr] ... [INFO] [stderr] 98 | TokenType::Address => if !Address::is_valid(token, BUFFER) { [INFO] [stderr] | ----- value moved here [INFO] [stderr] ... [INFO] [stderr] 101 | TokenType::Register => if !Registers::is_valid(token) { [INFO] [stderr] | ----- value moved here [INFO] [stderr] ... [INFO] [stderr] 104 | TokenType::RawValue => if !RawValue::is_valid(token) { [INFO] [stderr] | ----- value moved here [INFO] [stderr] ... [INFO] [stderr] 112 | TokenType::Register => match token.token.as_ref() { [INFO] [stderr] | ^^^^^^^^^^^ value borrowed here after move [INFO] [stderr] [INFO] [stderr] error[E0381]: use of possibly-uninitialized variable: `parsed_token` [INFO] [stderr] --> src/zn.rs:124:37 [INFO] [stderr] | [INFO] [stderr] 124 | TokenType::RawValue => Some(parsed_token as u8), [INFO] [stderr] | ^^^^^^^^^^^^ use of possibly-uninitialized `parsed_token` [INFO] [stderr] [INFO] [stderr] error[E0507]: cannot move out of index of `std::vec::Vec` [INFO] [stderr] --> src/zn.rs:142:19 [INFO] [stderr] | [INFO] [stderr] 142 | let context = commands[command]; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | move occurs because value has type `std::string::String`, which does not implement the `Copy` trait [INFO] [stderr] | help: consider borrowing here: `&commands[command]` [INFO] [stderr] [INFO] [stderr] error[E0507]: cannot move out of index of `std::vec::Vec` [INFO] [stderr] --> src/zn.rs:146:9 [INFO] [stderr] | [INFO] [stderr] 146 | commands[command-1] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | move occurs because value has type `std::string::String`, which does not implement the `Copy` trait [INFO] [stderr] | help: consider borrowing here: `&commands[command-1]` [INFO] [stderr] [INFO] [stderr] error[E0507]: cannot move out of index of `std::vec::Vec` [INFO] [stderr] --> src/zn.rs:151:9 [INFO] [stderr] | [INFO] [stderr] 151 | commands[command+1] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | move occurs because value has type `std::string::String`, which does not implement the `Copy` trait [INFO] [stderr] | help: consider borrowing here: `&commands[command+1]` [INFO] [stderr] [INFO] [stderr] error: aborting due to 20 previous errors [INFO] [stderr] [INFO] [stderr] Some errors have detailed explanations: E0381, E0382, E0507, E0716. [INFO] [stderr] For more information about an error, try `rustc --explain E0381`. [INFO] [stderr] error[E0507]: cannot move out of index of `std::vec::Vec` [INFO] [stderr] --> src/zn.rs:142:19 [INFO] [stderr] | [INFO] [stderr] 142 | let context = commands[command]; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | move occurs because value has type `std::string::String`, which does not implement the `Copy` trait [INFO] [stderr] | help: consider borrowing here: `&commands[command]` [INFO] [stderr] [INFO] [stderr] error[E0507]: cannot move out of index of `std::vec::Vec` [INFO] [stderr] --> src/zn.rs:146:9 [INFO] [stderr] | [INFO] [stderr] 146 | commands[command-1] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | move occurs because value has type `std::string::String`, which does not implement the `Copy` trait [INFO] [stderr] | help: consider borrowing here: `&commands[command-1]` [INFO] [stderr] [INFO] [stderr] error[E0507]: cannot move out of index of `std::vec::Vec` [INFO] [stderr] --> src/zn.rs:151:9 [INFO] [stderr] | [INFO] [stderr] 151 | commands[command+1] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | move occurs because value has type `std::string::String`, which does not implement the `Copy` trait [INFO] [stderr] | help: consider borrowing here: `&commands[command+1]` [INFO] [stderr] [INFO] [stderr] error: aborting due to 20 previous errors [INFO] [stderr] [INFO] [stderr] Some errors have detailed explanations: E0381, E0382, E0507, E0716. [INFO] [stderr] For more information about an error, try `rustc --explain E0381`. [INFO] [stderr] error: could not compile `zn`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] error: could not compile `zn`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "a4e611287175ca534438eddd9cbe76553658b99a0e51ca88f1977f9dd1046e29"` [INFO] running `"docker" "rm" "-f" "a4e611287175ca534438eddd9cbe76553658b99a0e51ca88f1977f9dd1046e29"` [INFO] [stdout] a4e611287175ca534438eddd9cbe76553658b99a0e51ca88f1977f9dd1046e29