[INFO] cloning repository https://github.com/eikopf/impc [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/eikopf/impc" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Feikopf%2Fimpc", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Feikopf%2Fimpc'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 29dc0d63650de61f0d66629ad04c286ff8889756 [INFO] checking eikopf/impc against try#901e6d56697c79b2e80df6a487b2318ec6f57ee3 for pr-142287 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Feikopf%2Fimpc" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/eikopf/impc on toolchain 901e6d56697c79b2e80df6a487b2318ec6f57ee3 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+901e6d56697c79b2e80df6a487b2318ec6f57ee3" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/eikopf/impc [INFO] finished tweaking git repo https://github.com/eikopf/impc [INFO] tweaked toml for git repo https://github.com/eikopf/impc written to /workspace/builds/worker-7-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/eikopf/impc 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" "+901e6d56697c79b2e80df6a487b2318ec6f57ee3" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:eea15d5475069c3ef791f10c2c6b5af2ee421ef2da1e680ecce1cba46243983b" "/opt/rustwide/cargo-home/bin/cargo" "+901e6d56697c79b2e80df6a487b2318ec6f57ee3" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] b1fb1fb42d9764bef5f70c1aab3cf6b949db4b18f9e406ab4c20b41e47dd81d3 [INFO] running `Command { std: "docker" "start" "-a" "b1fb1fb42d9764bef5f70c1aab3cf6b949db4b18f9e406ab4c20b41e47dd81d3", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "b1fb1fb42d9764bef5f70c1aab3cf6b949db4b18f9e406ab4c20b41e47dd81d3", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b1fb1fb42d9764bef5f70c1aab3cf6b949db4b18f9e406ab4c20b41e47dd81d3", kill_on_drop: false }` [INFO] [stdout] b1fb1fb42d9764bef5f70c1aab3cf6b949db4b18f9e406ab4c20b41e47dd81d3 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:eea15d5475069c3ef791f10c2c6b5af2ee421ef2da1e680ecce1cba46243983b" "/opt/rustwide/cargo-home/bin/cargo" "+901e6d56697c79b2e80df6a487b2318ec6f57ee3" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] df6fd69cb188cd55c4d13aa2539ad6a914c432aa0fe2591bbe72307ae6ddb04a [INFO] running `Command { std: "docker" "start" "-a" "df6fd69cb188cd55c4d13aa2539ad6a914c432aa0fe2591bbe72307ae6ddb04a", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.82 [INFO] [stderr] Compiling unicode-ident v1.0.12 [INFO] [stderr] Compiling serde v1.0.201 [INFO] [stderr] Checking memchr v2.7.2 [INFO] [stderr] Compiling libc v0.2.154 [INFO] [stderr] Compiling autocfg v1.3.0 [INFO] [stderr] Compiling cc v1.0.97 [INFO] [stderr] Checking gimli v0.28.1 [INFO] [stderr] Checking adler v1.0.2 [INFO] [stderr] Checking miniz_oxide v0.7.2 [INFO] [stderr] Checking minimal-lexical v0.2.1 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling thiserror v1.0.60 [INFO] [stderr] Checking rustc-demangle v0.1.24 [INFO] [stderr] Checking object v0.32.2 [INFO] [stderr] Compiling anyhow v1.0.83 [INFO] [stderr] Checking arrayvec v0.7.4 [INFO] [stderr] Checking cfg-if v1.0.0 [INFO] [stderr] Compiling quote v1.0.36 [INFO] [stderr] Checking brownstone v3.0.0 [INFO] [stderr] Checking nom v7.1.3 [INFO] [stderr] Compiling syn v2.0.61 [INFO] [stderr] Checking console v0.15.8 [INFO] [stderr] Checking indent_write v2.2.0 [INFO] [stderr] Checking joinery v2.1.0 [INFO] [stderr] Checking num-integer v0.1.46 [INFO] [stderr] Checking static_assertions v1.1.0 [INFO] [stderr] Checking num-bigint v0.4.5 [INFO] [stderr] Compiling backtrace v0.3.71 [INFO] [stderr] Checking addr2line v0.21.0 [INFO] [stderr] Checking nom-supreme v0.8.0 [INFO] [stderr] Compiling serde_derive v1.0.201 [INFO] [stderr] Compiling thiserror-impl v1.0.60 [INFO] [stderr] Checking better-panic v0.3.0 [INFO] [stderr] Checking argh_shared v0.1.12 [INFO] [stderr] Compiling argh_derive v0.1.12 [INFO] [stderr] Checking argh v0.1.12 [INFO] [stderr] Checking impc v0.2.2 (/opt/rustwide/workdir) [INFO] [stdout] error[E0716]: temporary value dropped while borrowed [INFO] [stdout] --> src/parser/bexp.rs:240:26 [INFO] [stdout] | [INFO] [stdout] 240 | let not_eq_tokens = &[Token::LeftAngleBracket, Token::RightAngleBracket]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use [INFO] [stdout] 241 | [INFO] [stdout] 242 | / alt(( [INFO] [stdout] 243 | | binary_expr(aexp, tokens(not_eq_tokens), aexp, |lhs, rhs| { [INFO] [stdout] 244 | | !Bexp::eq(lhs, rhs) [INFO] [stdout] 245 | | }), [INFO] [stdout] ... | [INFO] [stdout] 249 | | atom, [INFO] [stdout] 250 | | )) [INFO] [stdout] | |______- a temporary with access to the borrow is created here ... [INFO] [stdout] 251 | .parse(input) [INFO] [stdout] 252 | } [INFO] [stdout] | - [INFO] [stdout] | | [INFO] [stdout] | temporary value is freed at the end of this statement [INFO] [stdout] | ... and the borrow might be used here, when that temporary is dropped and runs the destructor for type `impl FnMut(&[lexer::token::Token<&str, T>]) -> Result<(&[lexer::token::Token<&str, T>], parser::bexp::Bexp<&str, T>), nom::Err]>>>` [INFO] [stdout] | [INFO] [stdout] = note: the temporary is part of an expression at the end of a block; [INFO] [stdout] consider forcing this temporary to be dropped sooner, before the block's local variables are dropped [INFO] [stdout] help: consider using a `let` binding to create a longer lived value [INFO] [stdout] | [INFO] [stdout] 240 ~ let binding = [Token::LeftAngleBracket, Token::RightAngleBracket]; [INFO] [stdout] 241 ~ let not_eq_tokens = &binding; [INFO] [stdout] | [INFO] [stdout] help: for example, you could save the expression's value in a new local variable `x` and then make `x` be the expression at the end of the block [INFO] [stdout] | [INFO] [stdout] 242 ~ let x = alt(( [INFO] [stdout] 243 | binary_expr(aexp, tokens(not_eq_tokens), aexp, |lhs, rhs| { [INFO] [stdout] ... [INFO] [stdout] 250 | )) [INFO] [stdout] 251 ~ .parse(input); x [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0716`. [INFO] [stdout] [INFO] [stderr] error: could not compile `impc` (bin "impc" test) due to 1 previous error [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] error[E0716]: temporary value dropped while borrowed [INFO] [stdout] --> src/parser/bexp.rs:240:26 [INFO] [stdout] | [INFO] [stdout] 240 | let not_eq_tokens = &[Token::LeftAngleBracket, Token::RightAngleBracket]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ creates a temporary value which is freed while still in use [INFO] [stdout] 241 | [INFO] [stdout] 242 | / alt(( [INFO] [stdout] 243 | | binary_expr(aexp, tokens(not_eq_tokens), aexp, |lhs, rhs| { [INFO] [stdout] 244 | | !Bexp::eq(lhs, rhs) [INFO] [stdout] 245 | | }), [INFO] [stdout] ... | [INFO] [stdout] 249 | | atom, [INFO] [stdout] 250 | | )) [INFO] [stdout] | |______- a temporary with access to the borrow is created here ... [INFO] [stdout] 251 | .parse(input) [INFO] [stdout] 252 | } [INFO] [stdout] | - [INFO] [stdout] | | [INFO] [stdout] | temporary value is freed at the end of this statement [INFO] [stdout] | ... and the borrow might be used here, when that temporary is dropped and runs the destructor for type `impl FnMut(&[Token<&str, T>]) -> Result<(&[Token<&str, T>], Bexp<&str, T>), nom::Err]>>>` [INFO] [stdout] | [INFO] [stdout] = note: the temporary is part of an expression at the end of a block; [INFO] [stdout] consider forcing this temporary to be dropped sooner, before the block's local variables are dropped [INFO] [stdout] help: consider using a `let` binding to create a longer lived value [INFO] [stdout] | [INFO] [stdout] 240 ~ let binding = [Token::LeftAngleBracket, Token::RightAngleBracket]; [INFO] [stdout] 241 ~ let not_eq_tokens = &binding; [INFO] [stdout] | [INFO] [stdout] help: for example, you could save the expression's value in a new local variable `x` and then make `x` be the expression at the end of the block [INFO] [stdout] | [INFO] [stdout] 242 ~ let x = alt(( [INFO] [stdout] 243 | binary_expr(aexp, tokens(not_eq_tokens), aexp, |lhs, rhs| { [INFO] [stdout] ... [INFO] [stdout] 250 | )) [INFO] [stdout] 251 ~ .parse(input); x [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0716`. [INFO] [stdout] [INFO] [stderr] error: could not compile `impc` (bin "impc") due to 1 previous error [INFO] running `Command { std: "docker" "inspect" "df6fd69cb188cd55c4d13aa2539ad6a914c432aa0fe2591bbe72307ae6ddb04a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "df6fd69cb188cd55c4d13aa2539ad6a914c432aa0fe2591bbe72307ae6ddb04a", kill_on_drop: false }` [INFO] [stdout] df6fd69cb188cd55c4d13aa2539ad6a914c432aa0fe2591bbe72307ae6ddb04a