[INFO] cloning repository https://github.com/abesto/toy-rust-shell [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/abesto/toy-rust-shell" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fabesto%2Ftoy-rust-shell", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fabesto%2Ftoy-rust-shell'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 27bf5f1708ba8e0f3d03b9442c69a7f4224660bf [INFO] building abesto/toy-rust-shell against master#11663cd3bfefef7d34e8f0892c250bf698049392+rustflags=-Dtail-expr-drop-order for pr-134523 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fabesto%2Ftoy-rust-shell" "/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/abesto/toy-rust-shell on toolchain 11663cd3bfefef7d34e8f0892c250bf698049392 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+11663cd3bfefef7d34e8f0892c250bf698049392" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/abesto/toy-rust-shell [INFO] finished tweaking git repo https://github.com/abesto/toy-rust-shell [INFO] tweaked toml for git repo https://github.com/abesto/toy-rust-shell written to /workspace/builds/worker-1-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/abesto/toy-rust-shell 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" "+11663cd3bfefef7d34e8f0892c250bf698049392" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded im v12.2.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+11663cd3bfefef7d34e8f0892c250bf698049392" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 86e8e4b23bbae2d32cbc6e69a5d0010a5e5e58a56b7d51f6e79e197cb37dd97e [INFO] running `Command { std: "docker" "start" "-a" "86e8e4b23bbae2d32cbc6e69a5d0010a5e5e58a56b7d51f6e79e197cb37dd97e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "86e8e4b23bbae2d32cbc6e69a5d0010a5e5e58a56b7d51f6e79e197cb37dd97e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "86e8e4b23bbae2d32cbc6e69a5d0010a5e5e58a56b7d51f6e79e197cb37dd97e", kill_on_drop: false }` [INFO] [stdout] 86e8e4b23bbae2d32cbc6e69a5d0010a5e5e58a56b7d51f6e79e197cb37dd97e [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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 -Dtail-expr-drop-order" "-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:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+11663cd3bfefef7d34e8f0892c250bf698049392" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 2bcab2e65d9e9bcdd2532889de05102231408e25b370cd89ebaaa95948967b70 [INFO] running `Command { std: "docker" "start" "-a" "2bcab2e65d9e9bcdd2532889de05102231408e25b370cd89ebaaa95948967b70", kill_on_drop: false }` [INFO] [stderr] Compiling semver-parser v0.7.0 [INFO] [stderr] Compiling libc v0.2.47 [INFO] [stderr] Compiling typenum v1.10.0 [INFO] [stderr] Compiling nix v0.13.0 [INFO] [stderr] Compiling semver v0.9.0 [INFO] [stderr] Compiling rustc_version v0.2.3 [INFO] [stderr] Compiling im v12.2.0 [INFO] [stderr] Compiling termion v1.5.1 [INFO] [stderr] Compiling toy-rust-shell v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `Stdout` [INFO] [stdout] --> src/main.rs:6:22 [INFO] [stdout] | [INFO] [stdout] 6 | use std::io::{stdin, Stdout}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `l` [INFO] [stdout] --> src/main.rs:122:38 [INFO] [stdout] | [INFO] [stdout] 122 | CompleteCommand::WithSep(l, op) => {} [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_l` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `op` [INFO] [stdout] --> src/main.rs:122:41 [INFO] [stdout] | [INFO] [stdout] 122 | CompleteCommand::WithSep(l, op) => {} [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_op` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `last_exit_code` is never read [INFO] [stdout] --> src/main.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct State { [INFO] [stdout] | ----- field in this struct [INFO] [stdout] ... [INFO] [stdout] 17 | last_exit_code: u8, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `input` is never read [INFO] [stdout] --> src/parser.rs:251:9 [INFO] [stdout] | [INFO] [stdout] 250 | struct Lexer<'a> { [INFO] [stdout] | ----- field in this struct [INFO] [stdout] 251 | input: &'a Vec, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `And` and `Or` are never constructed [INFO] [stdout] --> src/parser.rs:559:9 [INFO] [stdout] | [INFO] [stdout] 557 | pub enum AndOr<'a> { [INFO] [stdout] | ----- variants in this enum [INFO] [stdout] 558 | Single(Pipeline), [INFO] [stdout] 559 | And(&'a AndOr<'a>, Pipeline), [INFO] [stdout] | ^^^ [INFO] [stdout] 560 | Or(&'a AndOr<'a>, Pipeline), [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = note: `AndOr` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `CompoundCommand`, `CompoundCommandWithRedirects`, and `FunctionDefinition` are never constructed [INFO] [stdout] --> src/parser.rs:574:9 [INFO] [stdout] | [INFO] [stdout] 572 | pub enum Command { [INFO] [stdout] | ------- variants in this enum [INFO] [stdout] 573 | SimpleCommand(SimpleCommandData), [INFO] [stdout] 574 | CompoundCommand(CompoundCommandData), [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 575 | CompoundCommandWithRedirects(CompoundCommandWithRedirectsData), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 576 | FunctionDefinition(FunctionDefinitionData), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Command` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `PrefixWordSuffix`, `PrefixWord`, and `Prefix` are never constructed [INFO] [stdout] --> src/parser.rs:581:9 [INFO] [stdout] | [INFO] [stdout] 580 | pub enum SimpleCommandData { [INFO] [stdout] | ----------------- variants in this enum [INFO] [stdout] 581 | PrefixWordSuffix(CmdPrefix, CmdWord, CmdSuffix), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 582 | PrefixWord(CmdPrefix, CmdWord), [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 583 | Prefix(CmdPrefix), [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `SimpleCommandData` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `quote` is never used [INFO] [stdout] --> src/main.rs:44:12 [INFO] [stdout] | [INFO] [stdout] 44 | pub fn quote(string: &String) -> String { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `set` is never used [INFO] [stdout] --> src/main.rs:96:12 [INFO] [stdout] | [INFO] [stdout] 96 | pub fn set(state: &State) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:174:9 [INFO] [stdout] | [INFO] [stdout] 174 | / std::env::set_current_dir(std::path::Path::new( [INFO] [stdout] 175 | | &std::env::var("HOME").unwrap_or("/".to_string()) [INFO] [stdout] 176 | | )); [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)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 174 | let _ = std::env::set_current_dir(std::path::Path::new( [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:180:9 [INFO] [stdout] | [INFO] [stdout] 180 | / std::env::set_current_dir(std::path::Path::new( [INFO] [stdout] 181 | | dir [INFO] [stdout] 182 | | )); [INFO] [stdout] | |__________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 180 | let _ = std::env::set_current_dir(std::path::Path::new( [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 3.28s [INFO] running `Command { std: "docker" "inspect" "2bcab2e65d9e9bcdd2532889de05102231408e25b370cd89ebaaa95948967b70", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "2bcab2e65d9e9bcdd2532889de05102231408e25b370cd89ebaaa95948967b70", kill_on_drop: false }` [INFO] [stdout] 2bcab2e65d9e9bcdd2532889de05102231408e25b370cd89ebaaa95948967b70 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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 -Dtail-expr-drop-order" "-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:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+11663cd3bfefef7d34e8f0892c250bf698049392" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] b8ef2c83fc49bf259acaf735c85e843c2c72adf5cf5cc31b6f78c84b2c4057cb [INFO] running `Command { std: "docker" "start" "-a" "b8ef2c83fc49bf259acaf735c85e843c2c72adf5cf5cc31b6f78c84b2c4057cb", kill_on_drop: false }` [INFO] [stderr] Compiling toy-rust-shell v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `Stdout` [INFO] [stdout] --> src/main.rs:6:22 [INFO] [stdout] | [INFO] [stdout] 6 | use std::io::{stdin, Stdout}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `l` [INFO] [stdout] --> src/main.rs:122:38 [INFO] [stdout] | [INFO] [stdout] 122 | CompleteCommand::WithSep(l, op) => {} [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_l` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `op` [INFO] [stdout] --> src/main.rs:122:41 [INFO] [stdout] | [INFO] [stdout] 122 | CompleteCommand::WithSep(l, op) => {} [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_op` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `last_exit_code` is never read [INFO] [stdout] --> src/main.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct State { [INFO] [stdout] | ----- field in this struct [INFO] [stdout] ... [INFO] [stdout] 17 | last_exit_code: u8, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `input` is never read [INFO] [stdout] --> src/parser.rs:251:9 [INFO] [stdout] | [INFO] [stdout] 250 | struct Lexer<'a> { [INFO] [stdout] | ----- field in this struct [INFO] [stdout] 251 | input: &'a Vec, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `And` and `Or` are never constructed [INFO] [stdout] --> src/parser.rs:559:9 [INFO] [stdout] | [INFO] [stdout] 557 | pub enum AndOr<'a> { [INFO] [stdout] | ----- variants in this enum [INFO] [stdout] 558 | Single(Pipeline), [INFO] [stdout] 559 | And(&'a AndOr<'a>, Pipeline), [INFO] [stdout] | ^^^ [INFO] [stdout] 560 | Or(&'a AndOr<'a>, Pipeline), [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = note: `AndOr` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `CompoundCommand`, `CompoundCommandWithRedirects`, and `FunctionDefinition` are never constructed [INFO] [stdout] --> src/parser.rs:574:9 [INFO] [stdout] | [INFO] [stdout] 572 | pub enum Command { [INFO] [stdout] | ------- variants in this enum [INFO] [stdout] 573 | SimpleCommand(SimpleCommandData), [INFO] [stdout] 574 | CompoundCommand(CompoundCommandData), [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 575 | CompoundCommandWithRedirects(CompoundCommandWithRedirectsData), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 576 | FunctionDefinition(FunctionDefinitionData), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Command` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `PrefixWordSuffix`, `PrefixWord`, and `Prefix` are never constructed [INFO] [stdout] --> src/parser.rs:581:9 [INFO] [stdout] | [INFO] [stdout] 580 | pub enum SimpleCommandData { [INFO] [stdout] | ----------------- variants in this enum [INFO] [stdout] 581 | PrefixWordSuffix(CmdPrefix, CmdWord, CmdSuffix), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 582 | PrefixWord(CmdPrefix, CmdWord), [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 583 | Prefix(CmdPrefix), [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `SimpleCommandData` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `quote` is never used [INFO] [stdout] --> src/main.rs:44:12 [INFO] [stdout] | [INFO] [stdout] 44 | pub fn quote(string: &String) -> String { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `set` is never used [INFO] [stdout] --> src/main.rs:96:12 [INFO] [stdout] | [INFO] [stdout] 96 | pub fn set(state: &State) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:174:9 [INFO] [stdout] | [INFO] [stdout] 174 | / std::env::set_current_dir(std::path::Path::new( [INFO] [stdout] 175 | | &std::env::var("HOME").unwrap_or("/".to_string()) [INFO] [stdout] 176 | | )); [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)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 174 | let _ = std::env::set_current_dir(std::path::Path::new( [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:180:9 [INFO] [stdout] | [INFO] [stdout] 180 | / std::env::set_current_dir(std::path::Path::new( [INFO] [stdout] 181 | | dir [INFO] [stdout] 182 | | )); [INFO] [stdout] | |__________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 180 | let _ = std::env::set_current_dir(std::path::Path::new( [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.38s [INFO] running `Command { std: "docker" "inspect" "b8ef2c83fc49bf259acaf735c85e843c2c72adf5cf5cc31b6f78c84b2c4057cb", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b8ef2c83fc49bf259acaf735c85e843c2c72adf5cf5cc31b6f78c84b2c4057cb", kill_on_drop: false }` [INFO] [stdout] b8ef2c83fc49bf259acaf735c85e843c2c72adf5cf5cc31b6f78c84b2c4057cb