[INFO] crate ardop_interface 0.2.1-alpha.1 is already in cache [INFO] checking ardop_interface-0.2.1-alpha.1 against master#9b9d2aff8de4d499b4ba7ca406e000f8d3754ea7 for pr-64564 [INFO] extracting crate ardop_interface 0.2.1-alpha.1 into work/builds/worker-3/source [INFO] validating manifest of crates.io crate ardop_interface 0.2.1-alpha.1 on toolchain 9b9d2aff8de4d499b4ba7ca406e000f8d3754ea7-alt [INFO] running `"/mnt/big/crater/work/cargo-home/bin/cargo" "+9b9d2aff8de4d499b4ba7ca406e000f8d3754ea7-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started tweaking crates.io crate ardop_interface 0.2.1-alpha.1 [INFO] finished tweaking crates.io crate ardop_interface 0.2.1-alpha.1 [INFO] tweaked toml for crates.io crate ardop_interface 0.2.1-alpha.1 written to work/builds/worker-3/source/Cargo.toml [INFO] running `"/mnt/big/crater/work/cargo-home/bin/cargo" "+9b9d2aff8de4d499b4ba7ca406e000f8d3754ea7-alt" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/big/crater/work/cargo-home/bin/cargo" "+9b9d2aff8de4d499b4ba7ca406e000f8d3754ea7-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/builds/worker-3/target:/opt/rustwide/target:rw,Z" "-v" "/mnt/big/crater/work/builds/worker-3/source:/opt/rustwide/workdir:ro,Z" "-v" "/mnt/big/crater/work/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "MAP_USER_ID=1000" "-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" "+9b9d2aff8de4d499b4ba7ca406e000f8d3754ea7-alt" "check" "--frozen" "--all" "--all-targets"` [INFO] [stdout] 39be11c35f9cd4e7a244f070f820e1a0029567f3653540db7d35c6cf241f4eb6 [INFO] running `"docker" "start" "-a" "39be11c35f9cd4e7a244f070f820e1a0029567f3653540db7d35c6cf241f4eb6"` [INFO] [stderr] Checking futures-core-preview v0.3.0-alpha.17 [INFO] [stderr] Checking futures-io-preview v0.3.0-alpha.17 [INFO] [stderr] Checking futures-sink-preview v0.3.0-alpha.17 [INFO] [stderr] Checking futures-channel-preview v0.3.0-alpha.17 [INFO] [stderr] Checking futures-util-preview v0.3.0-alpha.17 [INFO] [stderr] Checking futures-executor-preview v0.3.0-alpha.17 [INFO] [stderr] Checking futures-preview v0.3.0-alpha.17 [INFO] [stderr] Checking romio v0.3.0-alpha.9 [INFO] [stderr] Checking juliex v0.3.0-alpha.8 [INFO] [stderr] Checking runtime-raw v0.3.0-alpha.4 [INFO] [stderr] Checking futures-timer v0.2.1 [INFO] [stderr] Checking runtime-native v0.3.0-alpha.5 [INFO] [stderr] Checking runtime v0.3.0-alpha.6 [INFO] [stderr] Checking ardop_interface v0.2.1-alpha.1 (/opt/rustwide/workdir) [INFO] [stderr] warning: unreachable expression [INFO] [stderr] --> src/tncio/asynctnc.rs:346:5 [INFO] [stderr] | [INFO] [stderr] 346 | / { [INFO] [stderr] 347 | | let target_string = target.into(); [INFO] [stderr] 348 | | [INFO] [stderr] 349 | | // configure the ARQ mode [INFO] [stderr] ... | [INFO] [stderr] 394 | | } [INFO] [stderr] 395 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unreachable_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unreachable expression [INFO] [stderr] --> src/tncio/asynctnc.rs:418:91 [INFO] [stderr] | [INFO] [stderr] 418 | pub async fn listen(&mut self, bw: u16, bw_forced: bool) -> TncResult { [INFO] [stderr] | ___________________________________________________________________________________________^ [INFO] [stderr] 419 | | loop { [INFO] [stderr] 420 | | match self.listen_monitor(bw, bw_forced).await? { [INFO] [stderr] 421 | | ConnectionInfoOrPeerDiscovery::Connection(conn_info) => return Ok(conn_info), [INFO] [stderr] ... | [INFO] [stderr] 424 | | } [INFO] [stderr] 425 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] [INFO] [stderr] warning: unreachable expression [INFO] [stderr] --> src/tncio/asynctnc.rs:444:66 [INFO] [stderr] | [INFO] [stderr] 444 | pub async fn monitor(&mut self) -> TncResult { [INFO] [stderr] | __________________________________________________________________^ [INFO] [stderr] 445 | | // disable listening [INFO] [stderr] 446 | | self.command(command::protocolmode(ProtocolMode::ARQ)) [INFO] [stderr] 447 | | .await?; [INFO] [stderr] ... | [INFO] [stderr] 467 | | } [INFO] [stderr] 468 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] [INFO] [stderr] warning: unreachable expression [INFO] [stderr] --> src/tncio/asynctnc.rs:497:51 [INFO] [stderr] | [INFO] [stderr] 497 | ) -> TncResult { [INFO] [stderr] | ___________________________________________________^ [INFO] [stderr] 498 | | // configure the ARQ mode and start listening [INFO] [stderr] 499 | | self.command(command::protocolmode(ProtocolMode::ARQ)) [INFO] [stderr] 500 | | .await?; [INFO] [stderr] ... | [INFO] [stderr] 532 | | } [INFO] [stderr] 533 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] [INFO] [stderr] warning: unreachable expression [INFO] [stderr] --> src/tncio/asynctnc.rs:645:43 [INFO] [stderr] | [INFO] [stderr] 645 | ) -> TncResult { [INFO] [stderr] | ___________________________________________^ [INFO] [stderr] 646 | | loop { [INFO] [stderr] 647 | | let res = if timeout == Duration::from_secs(0) { [INFO] [stderr] 648 | | self.data_stream.next().await [INFO] [stderr] ... | [INFO] [stderr] 660 | | } [INFO] [stderr] 661 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] [INFO] [stderr] warning: unreachable expression [INFO] [stderr] --> src/tncio/asynctnc.rs:346:5 [INFO] [stderr] | [INFO] [stderr] 346 | / { [INFO] [stderr] 347 | | let target_string = target.into(); [INFO] [stderr] 348 | | [INFO] [stderr] 349 | | // configure the ARQ mode [INFO] [stderr] ... | [INFO] [stderr] 394 | | } [INFO] [stderr] 395 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unreachable_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unreachable expression [INFO] [stderr] --> src/tncio/asynctnc.rs:418:91 [INFO] [stderr] | [INFO] [stderr] 418 | pub async fn listen(&mut self, bw: u16, bw_forced: bool) -> TncResult { [INFO] [stderr] | ___________________________________________________________________________________________^ [INFO] [stderr] 419 | | loop { [INFO] [stderr] 420 | | match self.listen_monitor(bw, bw_forced).await? { [INFO] [stderr] 421 | | ConnectionInfoOrPeerDiscovery::Connection(conn_info) => return Ok(conn_info), [INFO] [stderr] ... | [INFO] [stderr] 424 | | } [INFO] [stderr] 425 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] [INFO] [stderr] warning: unreachable expression [INFO] [stderr] --> src/tncio/asynctnc.rs:444:66 [INFO] [stderr] | [INFO] [stderr] 444 | pub async fn monitor(&mut self) -> TncResult { [INFO] [stderr] | __________________________________________________________________^ [INFO] [stderr] 445 | | // disable listening [INFO] [stderr] 446 | | self.command(command::protocolmode(ProtocolMode::ARQ)) [INFO] [stderr] 447 | | .await?; [INFO] [stderr] ... | [INFO] [stderr] 467 | | } [INFO] [stderr] 468 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] [INFO] [stderr] warning: unreachable expression [INFO] [stderr] --> src/tncio/asynctnc.rs:497:51 [INFO] [stderr] | [INFO] [stderr] 497 | ) -> TncResult { [INFO] [stderr] | ___________________________________________________^ [INFO] [stderr] 498 | | // configure the ARQ mode and start listening [INFO] [stderr] 499 | | self.command(command::protocolmode(ProtocolMode::ARQ)) [INFO] [stderr] 500 | | .await?; [INFO] [stderr] ... | [INFO] [stderr] 532 | | } [INFO] [stderr] 533 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] [INFO] [stderr] warning: unreachable expression [INFO] [stderr] --> src/tncio/asynctnc.rs:645:43 [INFO] [stderr] | [INFO] [stderr] 645 | ) -> TncResult { [INFO] [stderr] | ___________________________________________^ [INFO] [stderr] 646 | | loop { [INFO] [stderr] 647 | | let res = if timeout == Duration::from_secs(0) { [INFO] [stderr] 648 | | self.data_stream.next().await [INFO] [stderr] ... | [INFO] [stderr] 660 | | } [INFO] [stderr] 661 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] [INFO] [stderr] error[E0597]: `tnc` does not live long enough [INFO] [stderr] --> src/tnc/ardoptnc.rs:102:9 [INFO] [stderr] | [INFO] [stderr] 102 | tnc.ping(target, attempts).await [INFO] [stderr] | ^^^----------------------- [INFO] [stderr] | | [INFO] [stderr] | borrowed value does not live long enough [INFO] [stderr] | a temporary with access to the borrow is created here ... [INFO] [stderr] 103 | } [INFO] [stderr] | - [INFO] [stderr] | | [INFO] [stderr] | `tnc` dropped here while still borrowed [INFO] [stderr] | ... and the borrow might be used here, when that temporary is dropped and runs the destructor for type `impl futures::Future` [INFO] [stderr] | [INFO] [stderr] = note: The temporary is part of an expression at the end of a block. Consider forcing this temporary to be dropped sooner, before the block's local variables are dropped. 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] [stderr] [INFO] [stderr] error[E0597]: `tnc` does not live long enough [INFO] [stderr] --> src/tnc/ardoptnc.rs:143:15 [INFO] [stderr] | [INFO] [stderr] 143 | match tnc.connect(target, bw, bw_forced, attempts).await? { [INFO] [stderr] | ^^^----------------------------------------- [INFO] [stderr] | | [INFO] [stderr] | borrowed value does not live long enough [INFO] [stderr] | a temporary with access to the borrow is created here ... [INFO] [stderr] ... [INFO] [stderr] 147 | } [INFO] [stderr] | - [INFO] [stderr] | | [INFO] [stderr] | `tnc` dropped here while still borrowed [INFO] [stderr] | ... and the borrow might be used here, when that temporary is dropped and runs the destructor for type `impl futures::Future` [INFO] [stderr] | [INFO] [stderr] = note: The temporary is part of an expression at the end of a block. Consider forcing this temporary to be dropped sooner, before the block's local variables are dropped. 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] [stderr] [INFO] [stderr] error[E0597]: `tnc` does not live long enough [INFO] [stderr] --> src/tnc/ardoptnc.rs:499:9 [INFO] [stderr] | [INFO] [stderr] 499 | tnc.command(cmd).await [INFO] [stderr] | ^^^------------- [INFO] [stderr] | | [INFO] [stderr] | borrowed value does not live long enough [INFO] [stderr] | a temporary with access to the borrow is created here ... [INFO] [stderr] 500 | } [INFO] [stderr] | - [INFO] [stderr] | | [INFO] [stderr] | `tnc` dropped here while still borrowed [INFO] [stderr] | ... and the borrow might be used here, when that temporary is dropped and runs the destructor for type `impl futures::Future` [INFO] [stderr] | [INFO] [stderr] = note: The temporary is part of an expression at the end of a block. Consider forcing this temporary to be dropped sooner, before the block's local variables are dropped. 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] [stderr] [INFO] [stderr] error: aborting due to 3 previous errors [INFO] [stderr] [INFO] [stderr] For more information about this error, try `rustc --explain E0597`. [INFO] [stderr] error: could not compile `ardop_interface`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] error[E0597]: `tnc` does not live long enough [INFO] [stderr] --> src/tnc/ardoptnc.rs:102:9 [INFO] [stderr] | [INFO] [stderr] 102 | tnc.ping(target, attempts).await [INFO] [stderr] | ^^^----------------------- [INFO] [stderr] | | [INFO] [stderr] | borrowed value does not live long enough [INFO] [stderr] | a temporary with access to the borrow is created here ... [INFO] [stderr] 103 | } [INFO] [stderr] | - [INFO] [stderr] | | [INFO] [stderr] | `tnc` dropped here while still borrowed [INFO] [stderr] | ... and the borrow might be used here, when that temporary is dropped and runs the destructor for type `impl futures::Future` [INFO] [stderr] | [INFO] [stderr] = note: The temporary is part of an expression at the end of a block. Consider forcing this temporary to be dropped sooner, before the block's local variables are dropped. 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] [stderr] [INFO] [stderr] error[E0597]: `tnc` does not live long enough [INFO] [stderr] --> src/tnc/ardoptnc.rs:143:15 [INFO] [stderr] | [INFO] [stderr] 143 | match tnc.connect(target, bw, bw_forced, attempts).await? { [INFO] [stderr] | ^^^----------------------------------------- [INFO] [stderr] | | [INFO] [stderr] | borrowed value does not live long enough [INFO] [stderr] | a temporary with access to the borrow is created here ... [INFO] [stderr] ... [INFO] [stderr] 147 | } [INFO] [stderr] | - [INFO] [stderr] | | [INFO] [stderr] | `tnc` dropped here while still borrowed [INFO] [stderr] | ... and the borrow might be used here, when that temporary is dropped and runs the destructor for type `impl futures::Future` [INFO] [stderr] | [INFO] [stderr] = note: The temporary is part of an expression at the end of a block. Consider forcing this temporary to be dropped sooner, before the block's local variables are dropped. 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] [stderr] [INFO] [stderr] error[E0597]: `tnc` does not live long enough [INFO] [stderr] --> src/tnc/ardoptnc.rs:499:9 [INFO] [stderr] | [INFO] [stderr] 499 | tnc.command(cmd).await [INFO] [stderr] | ^^^------------- [INFO] [stderr] | | [INFO] [stderr] | borrowed value does not live long enough [INFO] [stderr] | a temporary with access to the borrow is created here ... [INFO] [stderr] 500 | } [INFO] [stderr] | - [INFO] [stderr] | | [INFO] [stderr] | `tnc` dropped here while still borrowed [INFO] [stderr] | ... and the borrow might be used here, when that temporary is dropped and runs the destructor for type `impl futures::Future` [INFO] [stderr] | [INFO] [stderr] = note: The temporary is part of an expression at the end of a block. Consider forcing this temporary to be dropped sooner, before the block's local variables are dropped. 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] [stderr] [INFO] [stderr] error: aborting due to 3 previous errors [INFO] [stderr] [INFO] [stderr] For more information about this error, try `rustc --explain E0597`. [INFO] [stderr] error: could not compile `ardop_interface`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "39be11c35f9cd4e7a244f070f820e1a0029567f3653540db7d35c6cf241f4eb6"` [INFO] running `"docker" "rm" "-f" "39be11c35f9cd4e7a244f070f820e1a0029567f3653540db7d35c6cf241f4eb6"` [INFO] [stdout] 39be11c35f9cd4e7a244f070f820e1a0029567f3653540db7d35c6cf241f4eb6