[INFO] cloning repository https://github.com/dodomorandi/lending-async-iterators-rustlab2024 [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/dodomorandi/lending-async-iterators-rustlab2024" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdodomorandi%2Flending-async-iterators-rustlab2024", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdodomorandi%2Flending-async-iterators-rustlab2024'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 6613e08dd4ba89b7c8d7236b815bae54dd69872a [INFO] checking dodomorandi/lending-async-iterators-rustlab2024 against try#2277c63fa464d237b17b68d3b87f9fbb89e58a3e for pr-133570-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdodomorandi%2Flending-async-iterators-rustlab2024" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/dodomorandi/lending-async-iterators-rustlab2024 on toolchain 2277c63fa464d237b17b68d3b87f9fbb89e58a3e [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+2277c63fa464d237b17b68d3b87f9fbb89e58a3e" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] removed /workspace/builds/worker-4-tc2/source/rust-toolchain.toml [INFO] started tweaking git repo https://github.com/dodomorandi/lending-async-iterators-rustlab2024 [INFO] finished tweaking git repo https://github.com/dodomorandi/lending-async-iterators-rustlab2024 [INFO] tweaked toml for git repo https://github.com/dodomorandi/lending-async-iterators-rustlab2024 written to /workspace/builds/worker-4-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/dodomorandi/lending-async-iterators-rustlab2024 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" "+2277c63fa464d237b17b68d3b87f9fbb89e58a3e" "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-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+2277c63fa464d237b17b68d3b87f9fbb89e58a3e" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 305a3b9cc3aa9385ff54a0d11330ccf4c875a422708fcabd65dea67d6420f4cf [INFO] running `Command { std: "docker" "start" "-a" "305a3b9cc3aa9385ff54a0d11330ccf4c875a422708fcabd65dea67d6420f4cf", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "305a3b9cc3aa9385ff54a0d11330ccf4c875a422708fcabd65dea67d6420f4cf", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "305a3b9cc3aa9385ff54a0d11330ccf4c875a422708fcabd65dea67d6420f4cf", kill_on_drop: false }` [INFO] [stdout] 305a3b9cc3aa9385ff54a0d11330ccf4c875a422708fcabd65dea67d6420f4cf [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+2277c63fa464d237b17b68d3b87f9fbb89e58a3e" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 7f1619394ae5d28bafeb05d4f3b08068106548755eb1b02ef9d8f078d956f148 [INFO] running `Command { std: "docker" "start" "-a" "7f1619394ae5d28bafeb05d4f3b08068106548755eb1b02ef9d8f078d956f148", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.86 [INFO] [stderr] Compiling unicode-ident v1.0.13 [INFO] [stderr] Checking byteorder v1.5.0 [INFO] [stderr] Checking stable_deref_trait v1.2.0 [INFO] [stderr] Compiling heapless v0.8.0 [INFO] [stderr] Checking futures-core v0.3.30 [INFO] [stderr] Checking pin-project-lite v0.2.14 [INFO] [stderr] Checking futures-sink v0.3.30 [INFO] [stderr] Checking nb v1.1.0 [INFO] [stderr] Compiling generic-array v0.14.7 [INFO] [stderr] Compiling libc v0.2.158 [INFO] [stderr] Checking pin-utils v0.1.0 [INFO] [stderr] Compiling embedded-io-async v0.6.1 [INFO] [stderr] Checking futures-task v0.3.30 [INFO] [stderr] Checking hash32 v0.3.1 [INFO] [stderr] Checking critical-section v1.1.3 [INFO] [stderr] Compiling atomic-polyfill v1.0.3 [INFO] [stderr] Checking embedded-io v0.6.1 [INFO] [stderr] Compiling embedded-hal-async v1.0.0 [INFO] [stderr] Compiling embassy-time-queue-driver v0.1.0 [INFO] [stderr] Compiling litrs v0.4.1 [INFO] [stderr] Compiling embassy-time-driver v0.1.0 [INFO] [stderr] Checking nb v0.1.3 [INFO] [stderr] Checking generic-array v0.13.3 [INFO] [stderr] Checking generic-array v0.12.4 [INFO] [stderr] Compiling smoltcp v0.11.0 [INFO] [stderr] Compiling embedded-nal-async v0.7.1 [INFO] [stderr] Checking void v1.0.2 [INFO] [stderr] Compiling embassy-sync v0.5.0 [INFO] [stderr] Checking embedded-hal v1.0.0 [INFO] [stderr] Checking no-std-net v0.6.0 [INFO] [stderr] Checking embedded-hal v0.2.7 [INFO] [stderr] Compiling document-features v0.2.10 [INFO] [stderr] Checking as-slice v0.1.5 [INFO] [stderr] Compiling quote v1.0.37 [INFO] [stderr] Checking futures-channel v0.3.30 [INFO] [stderr] Checking embedded-nal v0.8.0 [INFO] [stderr] Checking getrandom v0.2.15 [INFO] [stderr] Checking as-slice v0.2.1 [INFO] [stderr] Compiling syn v2.0.77 [INFO] [stderr] Checking bitflags v1.3.2 [INFO] [stderr] Checking futures-io v0.3.30 [INFO] [stderr] Checking managed v0.8.0 [INFO] [stderr] Checking embassy-net-driver v0.2.0 [INFO] [stderr] Checking atomic-pool v1.0.1 [INFO] [stderr] Checking rand_core v0.6.4 [INFO] [stderr] Compiling futures-macro v0.3.30 [INFO] [stderr] Compiling zerocopy-derive v0.7.35 [INFO] [stderr] Compiling pin-project-internal v1.1.5 [INFO] [stderr] Compiling tokio-macros v2.4.0 [INFO] [stderr] Checking tokio v1.40.0 [INFO] [stderr] Checking zerocopy v0.7.35 [INFO] [stderr] Checking futures-util v0.3.30 [INFO] [stderr] Checking pin-project v1.1.5 [INFO] [stderr] Checking ppv-lite86 v0.2.20 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Checking futures v0.3.30 [INFO] [stderr] Checking embassy-time v0.3.2 [INFO] [stderr] Checking embassy-net v0.4.0 [INFO] [stderr] Checking lending-async-iterator v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] error[E0499]: cannot borrow `*async_iter` as mutable more than once at a time [INFO] [stdout] --> src/lib.rs:282:54 [INFO] [stdout] | [INFO] [stdout] 271 | fn poll_next<'a>( [INFO] [stdout] | -- lifetime `'a` defined here [INFO] [stdout] ... [INFO] [stdout] 282 | task::ready!(unsafe { Pin::new_unchecked(&mut *async_iter) }.poll_next(cx)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ `*async_iter` was mutably borrowed here in the previous iteration of the loop [INFO] [stdout] ... [INFO] [stdout] 285 | return Poll::Ready(Some(element)); [INFO] [stdout] | -------------------------- returning this value requires that `*async_iter` is borrowed for `'a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0499`. [INFO] [stdout] [INFO] [stderr] error: could not compile `lending-async-iterator` (lib) due to 1 previous error [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] error[E0499]: cannot borrow `*async_iter` as mutable more than once at a time [INFO] [stdout] --> src/lib.rs:282:54 [INFO] [stdout] | [INFO] [stdout] 271 | fn poll_next<'a>( [INFO] [stdout] | -- lifetime `'a` defined here [INFO] [stdout] ... [INFO] [stdout] 282 | task::ready!(unsafe { Pin::new_unchecked(&mut *async_iter) }.poll_next(cx)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ `*async_iter` was mutably borrowed here in the previous iteration of the loop [INFO] [stdout] ... [INFO] [stdout] 285 | return Poll::Ready(Some(element)); [INFO] [stdout] | -------------------------- returning this value requires that `*async_iter` is borrowed for `'a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `nums` does not live long enough [INFO] [stdout] --> src/lib.rs:482:13 [INFO] [stdout] | [INFO] [stdout] 480 | let mut nums = [1, 2, 3].map(|x| A(x, PhantomPinned)); [INFO] [stdout] | -------- binding `nums` declared here [INFO] [stdout] 481 | let mut demo = pin!(DemoLendingAsyncIterator::new( [INFO] [stdout] 482 | nums.iter_mut(), [INFO] [stdout] | ^^^^ borrowed value does not live long enough [INFO] [stdout] ... [INFO] [stdout] 487 | / demo.next() [INFO] [stdout] 488 | | .detach(|value| { [INFO] [stdout] 489 | | assert_eq!(value.unwrap().0, 1); [INFO] [stdout] 490 | | }) [INFO] [stdout] | |______________- argument requires that `nums` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 507 | } [INFO] [stdout] | - `nums` dropped here while still borrowed [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/lending_future.rs:20:20 [INFO] [stdout] | [INFO] [stdout] 20 | for<'b> F: FnMut(Self::Output<'b>) -> O, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `demo` does not live long enough [INFO] [stdout] --> src/lib.rs:487:9 [INFO] [stdout] | [INFO] [stdout] 481 | let mut demo = pin!(DemoLendingAsyncIterator::new( [INFO] [stdout] | -------- binding `demo` declared here [INFO] [stdout] ... [INFO] [stdout] 487 | demo.next() [INFO] [stdout] | -^^^ [INFO] [stdout] | | [INFO] [stdout] | _________borrowed value does not live long enough [INFO] [stdout] | | [INFO] [stdout] 488 | | .detach(|value| { [INFO] [stdout] 489 | | assert_eq!(value.unwrap().0, 1); [INFO] [stdout] 490 | | }) [INFO] [stdout] | |______________- argument requires that `demo` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 507 | } [INFO] [stdout] | - `demo` dropped here while still borrowed [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/lending_future.rs:20:20 [INFO] [stdout] | [INFO] [stdout] 20 | for<'b> F: FnMut(Self::Output<'b>) -> O, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0499]: cannot borrow `demo` as mutable more than once at a time [INFO] [stdout] --> src/lib.rs:492:9 [INFO] [stdout] | [INFO] [stdout] 487 | demo.next() [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | _________first mutable borrow occurs here [INFO] [stdout] | | [INFO] [stdout] 488 | | .detach(|value| { [INFO] [stdout] 489 | | assert_eq!(value.unwrap().0, 1); [INFO] [stdout] 490 | | }) [INFO] [stdout] | |______________- argument requires that `demo` is borrowed for `'static` [INFO] [stdout] 491 | .await; [INFO] [stdout] 492 | demo.next() [INFO] [stdout] | ^^^^ second mutable borrow occurs here [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/lending_future.rs:20:20 [INFO] [stdout] | [INFO] [stdout] 20 | for<'b> F: FnMut(Self::Output<'b>) -> O, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0499]: cannot borrow `demo` as mutable more than once at a time [INFO] [stdout] --> src/lib.rs:497:9 [INFO] [stdout] | [INFO] [stdout] 487 | demo.next() [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | _________first mutable borrow occurs here [INFO] [stdout] | | [INFO] [stdout] 488 | | .detach(|value| { [INFO] [stdout] 489 | | assert_eq!(value.unwrap().0, 1); [INFO] [stdout] 490 | | }) [INFO] [stdout] | |______________- argument requires that `demo` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 497 | demo.next() [INFO] [stdout] | ^^^^ second mutable borrow occurs here [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/lending_future.rs:20:20 [INFO] [stdout] | [INFO] [stdout] 20 | for<'b> F: FnMut(Self::Output<'b>) -> O, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0499]: cannot borrow `demo` as mutable more than once at a time [INFO] [stdout] --> src/lib.rs:502:9 [INFO] [stdout] | [INFO] [stdout] 487 | demo.next() [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | _________first mutable borrow occurs here [INFO] [stdout] | | [INFO] [stdout] 488 | | .detach(|value| { [INFO] [stdout] 489 | | assert_eq!(value.unwrap().0, 1); [INFO] [stdout] 490 | | }) [INFO] [stdout] | |______________- argument requires that `demo` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 502 | demo.next() [INFO] [stdout] | ^^^^ second mutable borrow occurs here [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/lending_future.rs:20:20 [INFO] [stdout] | [INFO] [stdout] 20 | for<'b> F: FnMut(Self::Output<'b>) -> O, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0716]: temporary value dropped while borrowed [INFO] [stdout] --> src/lib.rs:481:24 [INFO] [stdout] | [INFO] [stdout] 481 | let mut demo = pin!(DemoLendingAsyncIterator::new( [INFO] [stdout] | ________________________^ [INFO] [stdout] 482 | | nums.iter_mut(), [INFO] [stdout] 483 | | 2, [INFO] [stdout] 484 | | Duration::from_millis(0)..Duration::from_millis(50), [INFO] [stdout] 485 | | )); [INFO] [stdout] | |__________^ creates a temporary value which is freed while still in use [INFO] [stdout] 486 | [INFO] [stdout] 487 | / demo.next() [INFO] [stdout] 488 | | .detach(|value| { [INFO] [stdout] 489 | | assert_eq!(value.unwrap().0, 1); [INFO] [stdout] 490 | | }) [INFO] [stdout] | |______________- argument requires that borrow lasts for `'static` [INFO] [stdout] ... [INFO] [stdout] 507 | } [INFO] [stdout] | - temporary value is freed at the end of this statement [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/lending_future.rs:20:20 [INFO] [stdout] | [INFO] [stdout] 20 | for<'b> F: FnMut(Self::Output<'b>) -> O, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: this error originates in the macro `pin` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `nums` does not live long enough [INFO] [stdout] --> src/lib.rs:516:13 [INFO] [stdout] | [INFO] [stdout] 514 | let mut nums = [1, 2, 3, 4, 5, 6, 7, 8].map(A); [INFO] [stdout] | -------- binding `nums` declared here [INFO] [stdout] 515 | / DemoLendingAsyncIterator::new( [INFO] [stdout] 516 | | nums.iter_mut(), [INFO] [stdout] | | ^^^^ borrowed value does not live long enough [INFO] [stdout] 517 | | 4, [INFO] [stdout] 518 | | Duration::from_millis(0)..Duration::from_millis(50), [INFO] [stdout] 519 | | ) [INFO] [stdout] 520 | | .filter(|value| value.0 % 2 != 0) [INFO] [stdout] | |_________________________________________- argument requires that `nums` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 527 | } [INFO] [stdout] | - `nums` dropped here while still borrowed [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/lib.rs:58:20 [INFO] [stdout] | [INFO] [stdout] 58 | for<'a> P: FnMut(&Self::Item<'a>) -> bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0502]: cannot borrow `nums` as immutable because it is also borrowed as mutable [INFO] [stdout] --> src/lib.rs:526:9 [INFO] [stdout] | [INFO] [stdout] 515 | / DemoLendingAsyncIterator::new( [INFO] [stdout] 516 | | nums.iter_mut(), [INFO] [stdout] | | ---- mutable borrow occurs here [INFO] [stdout] 517 | | 4, [INFO] [stdout] 518 | | Duration::from_millis(0)..Duration::from_millis(50), [INFO] [stdout] 519 | | ) [INFO] [stdout] 520 | | .filter(|value| value.0 % 2 != 0) [INFO] [stdout] | |_________________________________________- argument requires that `nums` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 526 | assert_eq!(nums, [4, 2, 12, 4, 20, 6, 28, 8].map(A)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ immutable borrow occurs here [INFO] [stdout] | [INFO] [stdout] note: due to current limitations in the borrow checker, this implies a `'static` lifetime [INFO] [stdout] --> src/lib.rs:58:20 [INFO] [stdout] | [INFO] [stdout] 58 | for<'a> P: FnMut(&Self::Item<'a>) -> bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: this error originates in the macro `assert_eq` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `nums` does not live long enough [INFO] [stdout] --> src/lib.rs:533:13 [INFO] [stdout] | [INFO] [stdout] 531 | let mut nums = [1, 2, 3, 4, 5, 6, 7, 8]; [INFO] [stdout] | -------- binding `nums` declared here [INFO] [stdout] 532 | let result = DemoLendingAsyncIterator::new( [INFO] [stdout] | ______________________- [INFO] [stdout] 533 | | nums.iter_mut(), [INFO] [stdout] | | ^^^^ borrowed value does not live long enough [INFO] [stdout] 534 | | 4, [INFO] [stdout] 535 | | Duration::from_millis(0)..Duration::from_millis(50), [INFO] [stdout] 536 | | ) [INFO] [stdout] 537 | | .all(|&mut &mut n| n < 10) [INFO] [stdout] | |__________________________________- argument requires that `nums` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 551 | } [INFO] [stdout] | - `nums` dropped here while still borrowed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0499]: cannot borrow `nums` as mutable more than once at a time [INFO] [stdout] --> src/lib.rs:543:13 [INFO] [stdout] | [INFO] [stdout] 532 | let result = DemoLendingAsyncIterator::new( [INFO] [stdout] | ______________________- [INFO] [stdout] 533 | | nums.iter_mut(), [INFO] [stdout] | | ---- first mutable borrow occurs here [INFO] [stdout] 534 | | 4, [INFO] [stdout] 535 | | Duration::from_millis(0)..Duration::from_millis(50), [INFO] [stdout] 536 | | ) [INFO] [stdout] 537 | | .all(|&mut &mut n| n < 10) [INFO] [stdout] | |__________________________________- argument requires that `nums` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 543 | nums.iter_mut(), [INFO] [stdout] | ^^^^ second mutable borrow occurs here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0597]: `nums` does not live long enough [INFO] [stdout] --> src/lib.rs:557:13 [INFO] [stdout] | [INFO] [stdout] 555 | let mut nums = [1, 2, 3, 4, 5, 6, 7, 8]; [INFO] [stdout] | -------- binding `nums` declared here [INFO] [stdout] 556 | let result = DemoLendingAsyncIterator::new( [INFO] [stdout] | ______________________- [INFO] [stdout] 557 | | nums.iter_mut(), [INFO] [stdout] | | ^^^^ borrowed value does not live long enough [INFO] [stdout] 558 | | 4, [INFO] [stdout] 559 | | Duration::from_millis(0)..Duration::from_millis(50), [INFO] [stdout] 560 | | ) [INFO] [stdout] 561 | | .any(|&mut &mut n| n > 7) [INFO] [stdout] | |_________________________________- argument requires that `nums` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 575 | } [INFO] [stdout] | - `nums` dropped here while still borrowed [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0499]: cannot borrow `nums` as mutable more than once at a time [INFO] [stdout] --> src/lib.rs:567:13 [INFO] [stdout] | [INFO] [stdout] 556 | let result = DemoLendingAsyncIterator::new( [INFO] [stdout] | ______________________- [INFO] [stdout] 557 | | nums.iter_mut(), [INFO] [stdout] | | ---- first mutable borrow occurs here [INFO] [stdout] 558 | | 4, [INFO] [stdout] 559 | | Duration::from_millis(0)..Duration::from_millis(50), [INFO] [stdout] 560 | | ) [INFO] [stdout] 561 | | .any(|&mut &mut n| n > 7) [INFO] [stdout] | |_________________________________- argument requires that `nums` is borrowed for `'static` [INFO] [stdout] ... [INFO] [stdout] 567 | nums.iter_mut(), [INFO] [stdout] | ^^^^ second mutable borrow occurs here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0499, E0502, E0597, E0716. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0499`. [INFO] [stdout] [INFO] [stderr] error: could not compile `lending-async-iterator` (lib test) due to 13 previous errors [INFO] running `Command { std: "docker" "inspect" "7f1619394ae5d28bafeb05d4f3b08068106548755eb1b02ef9d8f078d956f148", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "7f1619394ae5d28bafeb05d4f3b08068106548755eb1b02ef9d8f078d956f148", kill_on_drop: false }` [INFO] [stdout] 7f1619394ae5d28bafeb05d4f3b08068106548755eb1b02ef9d8f078d956f148