[INFO] cloning repository https://github.com/spacedragon/rlox [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/spacedragon/rlox" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fspacedragon%2Frlox", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fspacedragon%2Frlox'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] eebac6e303acaa764ec31c16239e530679a5ec7d [INFO] checking spacedragon/rlox against master#385fa9d845dd326c6bbfd58c22244215e431948a for absurd-question-mark-desugar [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fspacedragon%2Frlox" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/spacedragon/rlox on toolchain 385fa9d845dd326c6bbfd58c22244215e431948a [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+385fa9d845dd326c6bbfd58c22244215e431948a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/spacedragon/rlox [INFO] finished tweaking git repo https://github.com/spacedragon/rlox [INFO] tweaked toml for git repo https://github.com/spacedragon/rlox written to /workspace/builds/worker-0-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/spacedragon/rlox 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" "+385fa9d845dd326c6bbfd58c22244215e431948a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded proc-macro-error-attr v0.4.9 [INFO] [stderr] Downloaded proc-macro-error v0.4.9 [INFO] [stderr] Downloaded structopt-derive v0.4.2 [INFO] [stderr] Downloaded strum v0.17.1 [INFO] [stderr] Downloaded structopt v0.3.9 [INFO] [stderr] Downloaded num_enum_derive v0.4.2 [INFO] [stderr] Downloaded num_enum v0.4.2 [INFO] [stderr] Downloaded strum_macros v0.17.1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+385fa9d845dd326c6bbfd58c22244215e431948a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 81b5a6af73a5708aa3c98d17e981c438180c83b37beb0718d7ee89e2cd457666 [INFO] running `Command { std: "docker" "start" "-a" "81b5a6af73a5708aa3c98d17e981c438180c83b37beb0718d7ee89e2cd457666", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "81b5a6af73a5708aa3c98d17e981c438180c83b37beb0718d7ee89e2cd457666", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "81b5a6af73a5708aa3c98d17e981c438180c83b37beb0718d7ee89e2cd457666", kill_on_drop: false }` [INFO] [stdout] 81b5a6af73a5708aa3c98d17e981c438180c83b37beb0718d7ee89e2cd457666 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+385fa9d845dd326c6bbfd58c22244215e431948a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 39970657b0ed6d12bbbe37d310c28e0e8e74b2f0dc8152567cf9acd4318a1b70 [INFO] running `Command { std: "docker" "start" "-a" "39970657b0ed6d12bbbe37d310c28e0e8e74b2f0dc8152567cf9acd4318a1b70", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.8 [INFO] [stderr] Compiling syn v1.0.14 [INFO] [stderr] Compiling rustversion v1.0.2 [INFO] [stderr] Compiling libc v0.2.66 [INFO] [stderr] Compiling serde v1.0.104 [INFO] [stderr] Compiling memchr v2.3.2 [INFO] [stderr] Compiling syn v0.15.44 [INFO] [stderr] Compiling unicode-segmentation v1.6.0 [INFO] [stderr] Compiling log v0.4.8 [INFO] [stderr] Checking unicode-width v0.1.7 [INFO] [stderr] Checking regex-syntax v0.6.14 [INFO] [stderr] Checking termcolor v1.1.0 [INFO] [stderr] Checking strum v0.17.1 [INFO] [stderr] Checking textwrap v0.11.0 [INFO] [stderr] Compiling heck v0.3.1 [INFO] [stderr] Checking aho-corasick v0.7.8 [INFO] [stderr] Compiling quote v1.0.2 [INFO] [stderr] Checking atty v0.2.14 [INFO] [stderr] Checking clap v2.33.0 [INFO] [stderr] Checking regex v1.3.4 [INFO] [stderr] Checking env_logger v0.7.1 [INFO] [stderr] Compiling derivative v1.0.3 [INFO] [stderr] Compiling toml v0.5.6 [INFO] [stderr] Compiling syn-mid v0.5.0 [INFO] [stderr] Compiling proc-macro-crate v0.1.4 [INFO] [stderr] Compiling strum_macros v0.17.1 [INFO] [stderr] Compiling num_enum_derive v0.4.2 [INFO] [stderr] Compiling proc-macro-error v0.4.9 [INFO] [stderr] Compiling proc-macro-error-attr v0.4.9 [INFO] [stderr] Checking num_enum v0.4.2 [INFO] [stderr] Compiling structopt-derive v0.4.2 [INFO] [stderr] Checking structopt v0.3.9 [INFO] [stderr] Checking rlox v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: the item `RefCell` is imported redundantly [INFO] [stdout] --> src/value/callable.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 1 | use super::*; [INFO] [stdout] | -------- the item `RefCell` is already imported here [INFO] [stdout] ... [INFO] [stdout] 5 | use std::cell::RefCell; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Call` [INFO] [stdout] --> src/value/mod.rs:3:31 [INFO] [stdout] | [INFO] [stdout] 3 | pub use self::callable::{Fun, Call}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `Token` is imported redundantly [INFO] [stdout] --> src/ast_printer.rs:209:42 [INFO] [stdout] | [INFO] [stdout] 208 | use super::*; [INFO] [stdout] | -------- the item `Token` is already imported here [INFO] [stdout] 209 | use crate::scanner::{TokenType, Pos, Token}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `RefCell` is imported redundantly [INFO] [stdout] --> src/value/callable.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 1 | use super::*; [INFO] [stdout] | -------- the item `RefCell` is already imported here [INFO] [stdout] ... [INFO] [stdout] 5 | use std::cell::RefCell; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Call` [INFO] [stdout] --> src/value/mod.rs:3:31 [INFO] [stdout] | [INFO] [stdout] 3 | pub use self::callable::{Fun, Call}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> src/resolver.rs:101:13 [INFO] [stdout] | [INFO] [stdout] 101 | std::mem::replace(&mut self.current_function, prev); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 101 | let _ = std::mem::replace(&mut self.current_function, prev); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> src/resolver.rs:311:17 [INFO] [stdout] | [INFO] [stdout] 311 | mem::replace(&mut self.current_class, ClassType::SUBCLASS); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 311 | let _ = mem::replace(&mut self.current_class, ClassType::SUBCLASS); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> src/resolver.rs:332:13 [INFO] [stdout] | [INFO] [stdout] 332 | mem::replace(&mut self.current_class, class_type); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 332 | let _ = mem::replace(&mut self.current_class, class_type); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> src/bytecode/compiler.rs:101:9 [INFO] [stdout] | [INFO] [stdout] 101 | mem::replace(&mut self.previous, self.current.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 101 | let _ = mem::replace(&mut self.previous, self.current.clone()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> src/bytecode/compiler.rs:106:21 [INFO] [stdout] | [INFO] [stdout] 106 | mem::replace(&mut self.current, t); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 106 | let _ = mem::replace(&mut self.current, t); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 7 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> src/resolver.rs:101:13 [INFO] [stdout] | [INFO] [stdout] 101 | std::mem::replace(&mut self.current_function, prev); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 101 | let _ = std::mem::replace(&mut self.current_function, prev); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> src/resolver.rs:311:17 [INFO] [stdout] | [INFO] [stdout] 311 | mem::replace(&mut self.current_class, ClassType::SUBCLASS); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 311 | let _ = mem::replace(&mut self.current_class, ClassType::SUBCLASS); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> src/resolver.rs:332:13 [INFO] [stdout] | [INFO] [stdout] 332 | mem::replace(&mut self.current_class, class_type); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 332 | let _ = mem::replace(&mut self.current_class, class_type); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> src/bytecode/compiler.rs:101:9 [INFO] [stdout] | [INFO] [stdout] 101 | mem::replace(&mut self.previous, self.current.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 101 | let _ = mem::replace(&mut self.previous, self.current.clone()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used [INFO] [stdout] --> src/bytecode/compiler.rs:106:21 [INFO] [stdout] | [INFO] [stdout] 106 | mem::replace(&mut self.current, t); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: if you don't need the old value, you can just assign the new value directly [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 106 | let _ = mem::replace(&mut self.current, t); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 8 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 8.55s [INFO] running `Command { std: "docker" "inspect" "39970657b0ed6d12bbbe37d310c28e0e8e74b2f0dc8152567cf9acd4318a1b70", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "39970657b0ed6d12bbbe37d310c28e0e8e74b2f0dc8152567cf9acd4318a1b70", kill_on_drop: false }` [INFO] [stdout] 39970657b0ed6d12bbbe37d310c28e0e8e74b2f0dc8152567cf9acd4318a1b70