[INFO] cloning repository https://github.com/JuniorBecari10/Star [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/JuniorBecari10/Star" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJuniorBecari10%2FStar", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJuniorBecari10%2FStar'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 13fd1b2b81fe0951f553cd9be5c91bb8b8bca9e8 [INFO] checking JuniorBecari10/Star against master#c1feb3eceef7d5f0126c309a87062cf413fe0a25 for pr-121053 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJuniorBecari10%2FStar" "/workspace/builds/worker-1-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/JuniorBecari10/Star on toolchain c1feb3eceef7d5f0126c309a87062cf413fe0a25 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c1feb3eceef7d5f0126c309a87062cf413fe0a25" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/JuniorBecari10/Star [INFO] finished tweaking git repo https://github.com/JuniorBecari10/Star [INFO] tweaked toml for git repo https://github.com/JuniorBecari10/Star written to /workspace/builds/worker-1-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/JuniorBecari10/Star 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" "+c1feb3eceef7d5f0126c309a87062cf413fe0a25" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [ERROR] error running command: no output for 300 seconds [ERROR] this task or one of its parent failed! [ERROR] no output for 300 seconds [ERROR] note: run with `RUST_BACKTRACE=1` to display a backtrace. [INFO] checking JuniorBecari10/Star against try#0d3c0c4551bd9d6b6a4bd51e251b596e0195adf5 for pr-121053 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJuniorBecari10%2FStar" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/JuniorBecari10/Star on toolchain 0d3c0c4551bd9d6b6a4bd51e251b596e0195adf5 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0d3c0c4551bd9d6b6a4bd51e251b596e0195adf5" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/JuniorBecari10/Star [INFO] finished tweaking git repo https://github.com/JuniorBecari10/Star [INFO] tweaked toml for git repo https://github.com/JuniorBecari10/Star written to /workspace/builds/worker-1-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/JuniorBecari10/Star 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" "+0d3c0c4551bd9d6b6a4bd51e251b596e0195adf5" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [ERROR] error running command: no output for 300 seconds [INFO] checking JuniorBecari10/Star against try#0d3c0c4551bd9d6b6a4bd51e251b596e0195adf5 for pr-121053 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJuniorBecari10%2FStar" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/JuniorBecari10/Star on toolchain 0d3c0c4551bd9d6b6a4bd51e251b596e0195adf5 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0d3c0c4551bd9d6b6a4bd51e251b596e0195adf5" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/JuniorBecari10/Star [INFO] finished tweaking git repo https://github.com/JuniorBecari10/Star [INFO] tweaked toml for git repo https://github.com/JuniorBecari10/Star written to /workspace/builds/worker-1-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/JuniorBecari10/Star 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" "+0d3c0c4551bd9d6b6a4bd51e251b596e0195adf5" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [ERROR] error running command: no output for 300 seconds [INFO] checking JuniorBecari10/Star against try#0d3c0c4551bd9d6b6a4bd51e251b596e0195adf5 for pr-121053 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJuniorBecari10%2FStar" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/JuniorBecari10/Star on toolchain 0d3c0c4551bd9d6b6a4bd51e251b596e0195adf5 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0d3c0c4551bd9d6b6a4bd51e251b596e0195adf5" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/JuniorBecari10/Star [INFO] finished tweaking git repo https://github.com/JuniorBecari10/Star [INFO] tweaked toml for git repo https://github.com/JuniorBecari10/Star written to /workspace/builds/worker-1-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/JuniorBecari10/Star 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" "+0d3c0c4551bd9d6b6a4bd51e251b596e0195adf5" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:99613afd962a8cfa530ec1899472a458bd015a1ab0af876cf7eb06f6006d81ea" "/opt/rustwide/cargo-home/bin/cargo" "+0d3c0c4551bd9d6b6a4bd51e251b596e0195adf5" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 67b1594bfbbab6c93c87ac46b0459cdf3a57ec7e0b219c8d51dfd501110201f2 [INFO] running `Command { std: "docker" "start" "-a" "67b1594bfbbab6c93c87ac46b0459cdf3a57ec7e0b219c8d51dfd501110201f2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "67b1594bfbbab6c93c87ac46b0459cdf3a57ec7e0b219c8d51dfd501110201f2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "67b1594bfbbab6c93c87ac46b0459cdf3a57ec7e0b219c8d51dfd501110201f2", kill_on_drop: false }` [INFO] [stdout] 67b1594bfbbab6c93c87ac46b0459cdf3a57ec7e0b219c8d51dfd501110201f2 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:99613afd962a8cfa530ec1899472a458bd015a1ab0af876cf7eb06f6006d81ea" "/opt/rustwide/cargo-home/bin/cargo" "+0d3c0c4551bd9d6b6a4bd51e251b596e0195adf5" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] a965d607c3e1018922ecf767492a44a5d5874484b87a550a30c135a9013d28ff [INFO] running `Command { std: "docker" "start" "-a" "a965d607c3e1018922ecf767492a44a5d5874484b87a550a30c135a9013d28ff", kill_on_drop: false }` [INFO] [stderr] Checking star v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] error[E0015]: cannot call non-const fn `::to_string` in statics [INFO] [stdout] --> src/lexer/token.rs:54:9 [INFO] [stdout] | [INFO] [stdout] 54 | ("fn".to_string(), TokenKind::FnKw), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: calls in statics are limited to constant functions, tuple structs and tuple variants [INFO] [stdout] = note: consider wrapping this expression in `Lazy::new(|| ...)` from the `once_cell` crate: https://crates.io/crates/once_cell [INFO] [stdout] help: add `#![feature(const_trait_impl)]` to the crate attributes to enable [INFO] [stdout] --> src/main.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 + #![feature(const_trait_impl)] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0015]: cannot call non-const fn `::to_string` in statics [INFO] [stdout] --> src/lexer/token.rs:55:10 [INFO] [stdout] | [INFO] [stdout] 55 | ("var".to_string(), TokenKind::VarKw), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: calls in statics are limited to constant functions, tuple structs and tuple variants [INFO] [stdout] = note: consider wrapping this expression in `Lazy::new(|| ...)` from the `once_cell` crate: https://crates.io/crates/once_cell [INFO] [stdout] help: add `#![feature(const_trait_impl)]` to the crate attributes to enable [INFO] [stdout] --> src/main.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 + #![feature(const_trait_impl)] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0015]: cannot call non-const fn `::to_string` in statics [INFO] [stdout] --> src/lexer/token.rs:56:12 [INFO] [stdout] | [INFO] [stdout] 56 | ("const".to_string(), TokenKind::ConstKw), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: calls in statics are limited to constant functions, tuple structs and tuple variants [INFO] [stdout] = note: consider wrapping this expression in `Lazy::new(|| ...)` from the `once_cell` crate: https://crates.io/crates/once_cell [INFO] [stdout] help: add `#![feature(const_trait_impl)]` to the crate attributes to enable [INFO] [stdout] --> src/main.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 + #![feature(const_trait_impl)] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0015]: cannot call non-const fn ` as From<[(String, token::TokenKind); 3]>>::from` in statics [INFO] [stdout] --> src/lexer/token.rs:53:51 [INFO] [stdout] | [INFO] [stdout] 53 | pub static keywords: HashMap = HashMap::from([ [INFO] [stdout] | ___________________________________________________^ [INFO] [stdout] 54 | | ("fn".to_string(), TokenKind::FnKw), [INFO] [stdout] 55 | | ("var".to_string(), TokenKind::VarKw), [INFO] [stdout] 56 | | ("const".to_string(), TokenKind::ConstKw), [INFO] [stdout] 57 | | ]); [INFO] [stdout] | |__^ [INFO] [stdout] | [INFO] [stdout] = note: calls in statics are limited to constant functions, tuple structs and tuple variants [INFO] [stdout] = note: consider wrapping this expression in `Lazy::new(|| ...)` from the `once_cell` crate: https://crates.io/crates/once_cell [INFO] [stdout] help: add `#![feature(const_trait_impl)]` to the crate attributes to enable [INFO] [stdout] --> src/main.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 + #![feature(const_trait_impl)] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0015]: cannot call non-const fn `::to_string` in statics [INFO] [stdout] --> src/lexer/token.rs:54:9 [INFO] [stdout] | [INFO] [stdout] 54 | ("fn".to_string(), TokenKind::FnKw), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: calls in statics are limited to constant functions, tuple structs and tuple variants [INFO] [stdout] = note: consider wrapping this expression in `Lazy::new(|| ...)` from the `once_cell` crate: https://crates.io/crates/once_cell [INFO] [stdout] help: add `#![feature(const_trait_impl)]` to the crate attributes to enable [INFO] [stdout] --> src/main.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 + #![feature(const_trait_impl)] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0015]: cannot call non-const fn `::to_string` in statics [INFO] [stdout] --> src/lexer/token.rs:55:10 [INFO] [stdout] | [INFO] [stdout] 55 | ("var".to_string(), TokenKind::VarKw), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: calls in statics are limited to constant functions, tuple structs and tuple variants [INFO] [stdout] = note: consider wrapping this expression in `Lazy::new(|| ...)` from the `once_cell` crate: https://crates.io/crates/once_cell [INFO] [stdout] help: add `#![feature(const_trait_impl)]` to the crate attributes to enable [INFO] [stdout] --> src/main.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 + #![feature(const_trait_impl)] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0015]: cannot call non-const fn `::to_string` in statics [INFO] [stdout] --> src/lexer/token.rs:56:12 [INFO] [stdout] | [INFO] [stdout] 56 | ("const".to_string(), TokenKind::ConstKw), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: calls in statics are limited to constant functions, tuple structs and tuple variants [INFO] [stdout] = note: consider wrapping this expression in `Lazy::new(|| ...)` from the `once_cell` crate: https://crates.io/crates/once_cell [INFO] [stdout] help: add `#![feature(const_trait_impl)]` to the crate attributes to enable [INFO] [stdout] --> src/main.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 + #![feature(const_trait_impl)] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0015]: cannot call non-const fn ` as From<[(String, lexer::token::TokenKind); 3]>>::from` in statics [INFO] [stdout] --> src/lexer/token.rs:53:51 [INFO] [stdout] | [INFO] [stdout] 53 | pub static keywords: HashMap = HashMap::from([ [INFO] [stdout] | ___________________________________________________^ [INFO] [stdout] 54 | | ("fn".to_string(), TokenKind::FnKw), [INFO] [stdout] 55 | | ("var".to_string(), TokenKind::VarKw), [INFO] [stdout] 56 | | ("const".to_string(), TokenKind::ConstKw), [INFO] [stdout] 57 | | ]); [INFO] [stdout] | |__^ [INFO] [stdout] | [INFO] [stdout] = note: calls in statics are limited to constant functions, tuple structs and tuple variants [INFO] [stdout] = note: consider wrapping this expression in `Lazy::new(|| ...)` from the `once_cell` crate: https://crates.io/crates/once_cell [INFO] [stdout] help: add `#![feature(const_trait_impl)]` to the crate attributes to enable [INFO] [stdout] --> src/main.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 + #![feature(const_trait_impl)] [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `f64: Eq` is not satisfied [INFO] [stdout] --> src/parser/ast.rs:29:15 [INFO] [stdout] | [INFO] [stdout] 26 | #[derive(Eq, PartialEq)] [INFO] [stdout] | -- in this derive macro expansion [INFO] [stdout] ... [INFO] [stdout] 29 | NumberExp(f64), [INFO] [stdout] | ^^^ the trait `Eq` is not implemented for `f64` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Eq`: [INFO] [stdout] i128 [INFO] [stdout] i16 [INFO] [stdout] i32 [INFO] [stdout] i64 [INFO] [stdout] i8 [INFO] [stdout] isize [INFO] [stdout] u128 [INFO] [stdout] u16 [INFO] [stdout] and 4 others [INFO] [stdout] note: required by a bound in `AssertParamIsEq` [INFO] [stdout] --> /rustc/0d3c0c4551bd9d6b6a4bd51e251b596e0195adf5/library/core/src/cmp.rs:360:1 [INFO] [stdout] = note: this error originates in the derive macro `Eq` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `f64: Eq` is not satisfied [INFO] [stdout] --> src/parser/ast.rs:29:15 [INFO] [stdout] | [INFO] [stdout] 26 | #[derive(Eq, PartialEq)] [INFO] [stdout] | -- in this derive macro expansion [INFO] [stdout] ... [INFO] [stdout] 29 | NumberExp(f64), [INFO] [stdout] | ^^^ the trait `Eq` is not implemented for `f64` [INFO] [stdout] | [INFO] [stdout] = help: the following other types implement trait `Eq`: [INFO] [stdout] i128 [INFO] [stdout] i16 [INFO] [stdout] i32 [INFO] [stdout] i64 [INFO] [stdout] i8 [INFO] [stdout] isize [INFO] [stdout] u128 [INFO] [stdout] u16 [INFO] [stdout] and 4 others [INFO] [stdout] note: required by a bound in `AssertParamIsEq` [INFO] [stdout] --> /rustc/0d3c0c4551bd9d6b6a4bd51e251b596e0195adf5/library/core/src/cmp.rs:360:1 [INFO] [stdout] = note: this error originates in the derive macro `Eq` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0384]: cannot assign twice to immutable variable `kind` [INFO] [stdout] --> src/lexer/mod.rs:154:9 [INFO] [stdout] | [INFO] [stdout] 101 | let kind = match self.char() { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | first assignment to `kind` [INFO] [stdout] | help: consider making this binding mutable: `mut kind` [INFO] [stdout] ... [INFO] [stdout] 154 | kind = *(token::keywords.get(key).expect("this will never happen, i think")); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot assign twice to immutable variable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0507]: cannot move out of a shared reference [INFO] [stdout] --> src/lexer/mod.rs:154:16 [INFO] [stdout] | [INFO] [stdout] 154 | kind = *(token::keywords.get(key).expect("this will never happen, i think")); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ move occurs because value has type `token::TokenKind`, which does not implement the `Copy` trait [INFO] [stdout] | [INFO] [stdout] help: consider cloning the value if the performance cost is acceptable [INFO] [stdout] | [INFO] [stdout] 154 - kind = *(token::keywords.get(key).expect("this will never happen, i think")); [INFO] [stdout] 154 + kind = (token::keywords.get(key).expect("this will never happen, i think")).clone(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0716]: temporary value dropped while borrowed [INFO] [stdout] --> src/lexer/mod.rs:158:17 [INFO] [stdout] | [INFO] [stdout] 158 | let s = buf.into_iter().collect::().as_str(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - temporary value is freed at the end of this statement [INFO] [stdout] | | [INFO] [stdout] | creates a temporary value which is freed while still in use [INFO] [stdout] 159 | [INFO] [stdout] 160 | kind = match s { [INFO] [stdout] | - borrow later used here [INFO] [stdout] | [INFO] [stdout] = note: consider using a `let` binding to create a longer lived value [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0384]: cannot assign twice to immutable variable `kind` [INFO] [stdout] --> src/lexer/mod.rs:160:9 [INFO] [stdout] | [INFO] [stdout] 101 | let kind = match self.char() { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | first assignment to `kind` [INFO] [stdout] | help: consider making this binding mutable: `mut kind` [INFO] [stdout] ... [INFO] [stdout] 160 | / kind = match s { [INFO] [stdout] 161 | | "i8" | "byte" => token::TokenKind::ByteType, [INFO] [stdout] 162 | | "i16" | "short" => token::TokenKind::ShortType, [INFO] [stdout] 163 | | "i32" | "int" => token::TokenKind::IntType, [INFO] [stdout] ... | [INFO] [stdout] 180 | | _ => prev [INFO] [stdout] 181 | | } [INFO] [stdout] | |_________^ cannot assign twice to immutable variable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0384]: cannot assign twice to immutable variable `kind` [INFO] [stdout] --> src/lexer/mod.rs:154:9 [INFO] [stdout] | [INFO] [stdout] 101 | let kind = match self.char() { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | first assignment to `kind` [INFO] [stdout] | help: consider making this binding mutable: `mut kind` [INFO] [stdout] ... [INFO] [stdout] 154 | kind = *(token::keywords.get(key).expect("this will never happen, i think")); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot assign twice to immutable variable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0382]: borrow of moved value: `buf` [INFO] [stdout] --> src/lexer/mod.rs:187:16 [INFO] [stdout] | [INFO] [stdout] 95 | let mut buf: Vec = vec![self.char()]; [INFO] [stdout] | ------- move occurs because `buf` has type `Vec`, which does not implement the `Copy` trait [INFO] [stdout] ... [INFO] [stdout] 158 | let s = buf.into_iter().collect::().as_str(); [INFO] [stdout] | ----------- `buf` moved due to this method call [INFO] [stdout] ... [INFO] [stdout] 187 | content: buf.clone(), [INFO] [stdout] | ^^^ value borrowed here after move [INFO] [stdout] | [INFO] [stdout] note: `into_iter` takes ownership of the receiver `self`, which moves `buf` [INFO] [stdout] --> /rustc/0d3c0c4551bd9d6b6a4bd51e251b596e0195adf5/library/core/src/iter/traits/collect.rs:344:18 [INFO] [stdout] help: you can `clone` the value and consume it, but this might not be your desired behavior [INFO] [stdout] | [INFO] [stdout] 158 | let s = buf.clone().into_iter().collect::().as_str(); [INFO] [stdout] | ++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0507]: cannot move out of a shared reference [INFO] [stdout] --> src/lexer/mod.rs:154:16 [INFO] [stdout] | [INFO] [stdout] 154 | kind = *(token::keywords.get(key).expect("this will never happen, i think")); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ move occurs because value has type `lexer::token::TokenKind`, which does not implement the `Copy` trait [INFO] [stdout] | [INFO] [stdout] help: consider cloning the value if the performance cost is acceptable [INFO] [stdout] | [INFO] [stdout] 154 - kind = *(token::keywords.get(key).expect("this will never happen, i think")); [INFO] [stdout] 154 + kind = (token::keywords.get(key).expect("this will never happen, i think")).clone(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0716]: temporary value dropped while borrowed [INFO] [stdout] --> src/lexer/mod.rs:158:17 [INFO] [stdout] | [INFO] [stdout] 158 | let s = buf.into_iter().collect::().as_str(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - temporary value is freed at the end of this statement [INFO] [stdout] | | [INFO] [stdout] | creates a temporary value which is freed while still in use [INFO] [stdout] 159 | [INFO] [stdout] 160 | kind = match s { [INFO] [stdout] | - borrow later used here [INFO] [stdout] | [INFO] [stdout] = note: consider using a `let` binding to create a longer lived value [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0384]: cannot assign twice to immutable variable `kind` [INFO] [stdout] --> src/lexer/mod.rs:160:9 [INFO] [stdout] | [INFO] [stdout] 101 | let kind = match self.char() { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | first assignment to `kind` [INFO] [stdout] | help: consider making this binding mutable: `mut kind` [INFO] [stdout] ... [INFO] [stdout] 160 | / kind = match s { [INFO] [stdout] 161 | | "i8" | "byte" => token::TokenKind::ByteType, [INFO] [stdout] 162 | | "i16" | "short" => token::TokenKind::ShortType, [INFO] [stdout] 163 | | "i32" | "int" => token::TokenKind::IntType, [INFO] [stdout] ... | [INFO] [stdout] 180 | | _ => prev [INFO] [stdout] 181 | | } [INFO] [stdout] | |_________^ cannot assign twice to immutable variable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0382]: borrow of moved value: `buf` [INFO] [stdout] --> src/lexer/mod.rs:187:16 [INFO] [stdout] | [INFO] [stdout] 95 | let mut buf: Vec = vec![self.char()]; [INFO] [stdout] | ------- move occurs because `buf` has type `Vec`, which does not implement the `Copy` trait [INFO] [stdout] ... [INFO] [stdout] 158 | let s = buf.into_iter().collect::().as_str(); [INFO] [stdout] | ----------- `buf` moved due to this method call [INFO] [stdout] ... [INFO] [stdout] 187 | content: buf.clone(), [INFO] [stdout] | ^^^ value borrowed here after move [INFO] [stdout] | [INFO] [stdout] note: `into_iter` takes ownership of the receiver `self`, which moves `buf` [INFO] [stdout] --> /rustc/0d3c0c4551bd9d6b6a4bd51e251b596e0195adf5/library/core/src/iter/traits/collect.rs:344:18 [INFO] [stdout] help: you can `clone` the value and consume it, but this might not be your desired behavior [INFO] [stdout] | [INFO] [stdout] 158 | let s = buf.clone().into_iter().collect::().as_str(); [INFO] [stdout] | ++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0507]: cannot move out of index of `Vec` [INFO] [stdout] --> src/parser/mod.rs:38:5 [INFO] [stdout] | [INFO] [stdout] 38 | self.input[self.cursor] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ move occurs because value has type `token::Token`, which does not implement the `Copy` trait [INFO] [stdout] | [INFO] [stdout] help: consider cloning the value if the performance cost is acceptable [INFO] [stdout] | [INFO] [stdout] 38 | self.input[self.cursor].clone() [INFO] [stdout] | ++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0507]: cannot move out of index of `Vec` [INFO] [stdout] --> src/parser/mod.rs:38:5 [INFO] [stdout] | [INFO] [stdout] 38 | self.input[self.cursor] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ move occurs because value has type `lexer::token::Token`, which does not implement the `Copy` trait [INFO] [stdout] | [INFO] [stdout] help: consider cloning the value if the performance cost is acceptable [INFO] [stdout] | [INFO] [stdout] 38 | self.input[self.cursor].clone() [INFO] [stdout] | ++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tokens` [INFO] [stdout] --> src/main.rs:28:13 [INFO] [stdout] | [INFO] [stdout] 28 | let tokens = lexer::lex(contents); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_tokens` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tokens` [INFO] [stdout] --> src/main.rs:28:13 [INFO] [stdout] | [INFO] [stdout] 28 | let tokens = lexer::lex(contents); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_tokens` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 11 previous errors; 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0015, E0277, E0382, E0384, E0507, E0716. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0015`. [INFO] [stdout] [INFO] [stdout] error: aborting due to 11 previous errors; 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0015, E0277, E0382, E0384, E0507, E0716. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0015`. [INFO] [stdout] [INFO] [stderr] error: could not compile `star` (bin "star") due to 12 previous errors; 1 warning emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] error: could not compile `star` (bin "star" test) due to 12 previous errors; 1 warning emitted [INFO] running `Command { std: "docker" "inspect" "a965d607c3e1018922ecf767492a44a5d5874484b87a550a30c135a9013d28ff", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a965d607c3e1018922ecf767492a44a5d5874484b87a550a30c135a9013d28ff", kill_on_drop: false }` [INFO] [stdout] a965d607c3e1018922ecf767492a44a5d5874484b87a550a30c135a9013d28ff