[INFO] fetching crate tokio 0.2.9... [INFO] checking tokio-0.2.9 against master#6250d56355d72264ece721e8d0dc95b16a6824b1 for pr-68350 [INFO] extracting crate tokio 0.2.9 into /workspace/builds/worker-2/source [INFO] validating manifest of crates.io crate tokio 0.2.9 on toolchain 6250d56355d72264ece721e8d0dc95b16a6824b1 [INFO] running `"/workspace/cargo-home/bin/cargo" "+6250d56355d72264ece721e8d0dc95b16a6824b1" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started tweaking crates.io crate tokio 0.2.9 [INFO] finished tweaking crates.io crate tokio 0.2.9 [INFO] tweaked toml for crates.io crate tokio 0.2.9 written to /workspace/builds/worker-2/source/Cargo.toml [INFO] running `"/workspace/cargo-home/bin/cargo" "+6250d56355d72264ece721e8d0dc95b16a6824b1" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/workspace/cargo-home/bin/cargo" "+6250d56355d72264ece721e8d0dc95b16a6824b1" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/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" "MAP_USER_ID=0" "-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" "+6250d56355d72264ece721e8d0dc95b16a6824b1" "check" "--frozen" "--all" "--all-targets"` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 23a3c7b55c24368a71d01a91620010444afa400670aabc0f599a833545ddee63 [INFO] running `"docker" "start" "-a" "23a3c7b55c24368a71d01a91620010444afa400670aabc0f599a833545ddee63"` [INFO] [stderr] Checking tokio v0.2.10 [INFO] [stderr] Checking tokio v0.2.9 (/opt/rustwide/workdir) [INFO] [stderr] Compiling generator v0.6.19 [INFO] [stderr] Checking futures-util v0.3.1 [INFO] [stderr] Checking proptest v0.9.5 [INFO] [stderr] Checking tokio-test v0.2.0 [INFO] [stderr] Checking futures-executor v0.3.1 [INFO] [stderr] Checking loom v0.2.14 [INFO] [stderr] Checking futures v0.3.1 [INFO] [stderr] error[E0433]: failed to resolve: could not find `test` in `tokio` [INFO] [stderr] --> tests/net_lookup_host.rs:7:10 [INFO] [stderr] | [INFO] [stderr] 7 | #[tokio::test] [INFO] [stderr] | ^^^^ could not find `test` in `tokio` [INFO] [stderr] [INFO] [stderr] error[E0433]: failed to resolve: could not find `test` in `tokio` [INFO] [stderr] --> tests/net_lookup_host.rs:15:10 [INFO] [stderr] | [INFO] [stderr] 15 | #[tokio::test] [INFO] [stderr] | ^^^^ could not find `test` in `tokio` [INFO] [stderr] [INFO] [stderr] error[E0433]: failed to resolve: could not find `test` in `tokio` [INFO] [stderr] --> tests/net_lookup_host.rs:23:10 [INFO] [stderr] | [INFO] [stderr] 23 | #[tokio::test] [INFO] [stderr] | ^^^^ could not find `test` in `tokio` [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find function `lookup_host` in module `net` [INFO] [stderr] --> tests/net_lookup_host.rs:11:34 [INFO] [stderr] | [INFO] [stderr] 11 | let actual = assert_ok!(net::lookup_host(addr).await).collect::>(); [INFO] [stderr] | ^^^^^^^^^^^ not found in `net` [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find function `lookup_host` in module `net` [INFO] [stderr] --> tests/net_lookup_host.rs:19:34 [INFO] [stderr] | [INFO] [stderr] 19 | let actual = assert_ok!(net::lookup_host("127.0.0.1:8000").await).collect::>(); [INFO] [stderr] | ^^^^^^^^^^^ not found in `net` [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find function `lookup_host` in module `net` [INFO] [stderr] --> tests/net_lookup_host.rs:25:26 [INFO] [stderr] | [INFO] [stderr] 25 | let mut hosts = net::lookup_host("localhost:3000").await?; [INFO] [stderr] | ^^^^^^^^^^^ not found in `net` [INFO] [stderr] [INFO] [stderr] error: aborting due to 6 previous errors [INFO] [stderr] [INFO] [stderr] Some errors have detailed explanations: E0425, E0433. [INFO] [stderr] For more information about an error, try `rustc --explain E0425`. [INFO] [stderr] error: could not compile `tokio`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] error[E0432]: unresolved imports `tokio::sync::Barrier`, `tokio::sync::RwLock` [INFO] [stderr] --> tests/sync_rwlock.rs:10:19 [INFO] [stderr] | [INFO] [stderr] 10 | use tokio::sync::{Barrier, RwLock}; [INFO] [stderr] | ^^^^^^^ ^^^^^^ no `RwLock` in `sync` [INFO] [stderr] | | [INFO] [stderr] | no `Barrier` in `sync` [INFO] [stderr] [INFO] [stderr] error[E0433]: failed to resolve: could not find `test` in `tokio` [INFO] [stderr] --> tests/sync_rwlock.rs:132:10 [INFO] [stderr] | [INFO] [stderr] 132 | #[tokio::test] [INFO] [stderr] | ^^^^ could not find `test` in `tokio` [INFO] [stderr] [INFO] [stderr] error[E0433]: failed to resolve: could not find `test` in `tokio` [INFO] [stderr] --> tests/sync_rwlock.rs:141:10 [INFO] [stderr] | [INFO] [stderr] 141 | #[tokio::test] [INFO] [stderr] | ^^^^ could not find `test` in `tokio` [INFO] [stderr] [INFO] [stderr] error[E0433]: failed to resolve: could not find `test` in `tokio` [INFO] [stderr] --> tests/sync_rwlock.rs:150:10 [INFO] [stderr] | [INFO] [stderr] 150 | #[tokio::test] [INFO] [stderr] | ^^^^ could not find `test` in `tokio` [INFO] [stderr] [INFO] [stderr] error[E0433]: failed to resolve: could not find `test` in `tokio` [INFO] [stderr] --> tests/sync_rwlock.rs:163:10 [INFO] [stderr] | [INFO] [stderr] 163 | #[tokio::test(threaded_scheduler)] [INFO] [stderr] | ^^^^ could not find `test` in `tokio` [INFO] [stderr] [INFO] [stderr] error[E0432]: unresolved import `crate::task` [INFO] [stderr] --> src/tests/mock_schedule.rs:2:12 [INFO] [stderr] | [INFO] [stderr] 2 | use crate::task::{Header, Schedule, ScheduleSendOnly, Task}; [INFO] [stderr] | ^^^^ [INFO] [stderr] | | [INFO] [stderr] | unresolved import [INFO] [stderr] | help: a similar path exists: `core::task` [INFO] [stderr] [INFO] [stderr] error[E0432]: unresolved import `crate::sync::AtomicWaker` [INFO] [stderr] --> src/sync/tests/atomic_waker.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use crate::sync::AtomicWaker; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ no `AtomicWaker` in `sync` [INFO] [stderr] [INFO] [stderr] error[E0432]: unresolved import `crate::sync::semaphore_ll` [INFO] [stderr] --> src/sync/tests/semaphore_ll.rs:1:18 [INFO] [stderr] | [INFO] [stderr] 1 | use crate::sync::semaphore_ll::{Permit, Semaphore}; [INFO] [stderr] | ^^^^^^^^^^^^ could not find `semaphore_ll` in `sync` [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find function `spawn` in crate `tokio` [INFO] [stderr] --> tests/sync_rwlock.rs:173:12 [INFO] [stderr] | [INFO] [stderr] 173 | tokio::spawn(async move { [INFO] [stderr] | ^^^^^ not found in `tokio` [INFO] [stderr] | [INFO] [stderr] help: possible candidates are found in other modules, you can import them into scope [INFO] [stderr] | [INFO] [stderr] 3 | use loom::thread::spawn; [INFO] [stderr] | [INFO] [stderr] 3 | use std::thread::spawn; [INFO] [stderr] | [INFO] [stderr] 3 | use tokio_test::task::spawn; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find function `spawn` in crate `tokio` [INFO] [stderr] --> tests/sync_rwlock.rs:187:12 [INFO] [stderr] | [INFO] [stderr] 187 | tokio::spawn(async move { [INFO] [stderr] | ^^^^^ not found in `tokio` [INFO] [stderr] | [INFO] [stderr] help: possible candidates are found in other modules, you can import them into scope [INFO] [stderr] | [INFO] [stderr] 3 | use loom::thread::spawn; [INFO] [stderr] | [INFO] [stderr] 3 | use std::thread::spawn; [INFO] [stderr] | [INFO] [stderr] 3 | use tokio_test::task::spawn; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] error: aborting due to 3 previous errors [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find function `spawn` in crate `tokio` [INFO] [stderr] --> tests/sync_rwlock.rs:201:12 [INFO] [stderr] | [INFO] [stderr] 201 | tokio::spawn(async move { [INFO] [stderr] | ^^^^^ not found in `tokio` [INFO] [stderr] | [INFO] [stderr] help: possible candidates are found in other modules, you can import them into scope [INFO] [stderr] | [INFO] [stderr] 3 | use loom::thread::spawn; [INFO] [stderr] | [INFO] [stderr] 3 | use std::thread::spawn; [INFO] [stderr] | [INFO] [stderr] 3 | use tokio_test::task::spawn; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] error[E0425]: cannot find function `spawn` in crate `tokio` [INFO] [stderr] --> tests/sync_rwlock.rs:215:12 [INFO] [stderr] | [INFO] [stderr] 215 | tokio::spawn(async move { [INFO] [stderr] | ^^^^^ not found in `tokio` [INFO] [stderr] | [INFO] [stderr] help: possible candidates are found in other modules, you can import them into scope [INFO] [stderr] | [INFO] [stderr] 3 | use loom::thread::spawn; [INFO] [stderr] | [INFO] [stderr] 3 | use std::thread::spawn; [INFO] [stderr] | [INFO] [stderr] 3 | use tokio_test::task::spawn; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] error[E0603]: module `sync` is private [INFO] [stderr] --> tests/sync_rwlock.rs:10:12 [INFO] [stderr] | [INFO] [stderr] 10 | use tokio::sync::{Barrier, RwLock}; [INFO] [stderr] | ^^^^ this module is private [INFO] [stderr] | [INFO] [stderr] note: the module `sync` is defined here [INFO] [stderr] --> /opt/rustwide/workdir/src/lib.rs:317:5 [INFO] [stderr] | [INFO] [stderr] 317 | mod sync; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] For more information about this error, try `rustc --explain E0432`. [INFO] [stderr] error: could not compile `tokio`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] error[E0599]: no method named `clone` found for struct `std::sync::Arc<_>` in the current scope [INFO] [stderr] --> tests/sync_rwlock.rs:167:27 [INFO] [stderr] | [INFO] [stderr] 167 | let rwclone1 = rwlock.clone(); [INFO] [stderr] | ^^^^^ method not found in `std::sync::Arc<_>` [INFO] [stderr] | [INFO] [stderr] = note: `rwlock` is a function, perhaps you wish to call it [INFO] [stderr] [INFO] [stderr] error[E0599]: no method named `clone` found for struct `std::sync::Arc<_>` in the current scope [INFO] [stderr] --> tests/sync_rwlock.rs:168:27 [INFO] [stderr] | [INFO] [stderr] 168 | let rwclone2 = rwlock.clone(); [INFO] [stderr] | ^^^^^ method not found in `std::sync::Arc<_>` [INFO] [stderr] | [INFO] [stderr] = note: `rwlock` is a function, perhaps you wish to call it [INFO] [stderr] [INFO] [stderr] error[E0599]: no method named `clone` found for struct `std::sync::Arc<_>` in the current scope [INFO] [stderr] --> tests/sync_rwlock.rs:169:27 [INFO] [stderr] | [INFO] [stderr] 169 | let rwclone3 = rwlock.clone(); [INFO] [stderr] | ^^^^^ method not found in `std::sync::Arc<_>` [INFO] [stderr] | [INFO] [stderr] = note: `rwlock` is a function, perhaps you wish to call it [INFO] [stderr] [INFO] [stderr] error[E0599]: no method named `clone` found for struct `std::sync::Arc<_>` in the current scope [INFO] [stderr] --> tests/sync_rwlock.rs:170:27 [INFO] [stderr] | [INFO] [stderr] 170 | let rwclone4 = rwlock.clone(); [INFO] [stderr] | ^^^^^ method not found in `std::sync::Arc<_>` [INFO] [stderr] | [INFO] [stderr] = note: `rwlock` is a function, perhaps you wish to call it [INFO] [stderr] [INFO] [stderr] error[E0599]: no method named `clone` found for struct `std::sync::Arc<_>` in the current scope [INFO] [stderr] --> tests/sync_rwlock.rs:172:22 [INFO] [stderr] | [INFO] [stderr] 172 | let b1 = barrier.clone(); [INFO] [stderr] | ^^^^^ method not found in `std::sync::Arc<_>` [INFO] [stderr] | [INFO] [stderr] = note: `barrier` is a function, perhaps you wish to call it [INFO] [stderr] [INFO] [stderr] error[E0599]: no method named `clone` found for struct `std::sync::Arc<_>` in the current scope [INFO] [stderr] --> tests/sync_rwlock.rs:186:22 [INFO] [stderr] | [INFO] [stderr] 186 | let b2 = barrier.clone(); [INFO] [stderr] | ^^^^^ method not found in `std::sync::Arc<_>` [INFO] [stderr] | [INFO] [stderr] = note: `barrier` is a function, perhaps you wish to call it [INFO] [stderr] [INFO] [stderr] error[E0599]: no method named `clone` found for struct `std::sync::Arc<_>` in the current scope [INFO] [stderr] --> tests/sync_rwlock.rs:200:22 [INFO] [stderr] | [INFO] [stderr] 200 | let b3 = barrier.clone(); [INFO] [stderr] | ^^^^^ method not found in `std::sync::Arc<_>` [INFO] [stderr] | [INFO] [stderr] = note: `barrier` is a function, perhaps you wish to call it [INFO] [stderr] [INFO] [stderr] error[E0599]: no method named `clone` found for struct `std::sync::Arc<_>` in the current scope [INFO] [stderr] --> tests/sync_rwlock.rs:214:22 [INFO] [stderr] | [INFO] [stderr] 214 | let b4 = barrier.clone(); [INFO] [stderr] | ^^^^^ method not found in `std::sync::Arc<_>` [INFO] [stderr] | [INFO] [stderr] = note: `barrier` is a function, perhaps you wish to call it [INFO] [stderr] [INFO] [stderr] error[E0599]: no method named `wait` found for struct `std::sync::Arc<_>` in the current scope [INFO] [stderr] --> tests/sync_rwlock.rs:228:13 [INFO] [stderr] | [INFO] [stderr] 228 | barrier.wait().await; [INFO] [stderr] | ^^^^ method not found in `std::sync::Arc<_>` [INFO] [stderr] | [INFO] [stderr] = note: `barrier` is a function, perhaps you wish to call it [INFO] [stderr] [INFO] [stderr] error[E0599]: no method named `read` found for struct `std::sync::Arc<_>` in the current scope [INFO] [stderr] --> tests/sync_rwlock.rs:229:20 [INFO] [stderr] | [INFO] [stderr] 229 | let g = rwlock.read().await; [INFO] [stderr] | ^^^^ method not found in `std::sync::Arc<_>` [INFO] [stderr] | [INFO] [stderr] = note: `rwlock` is a function, perhaps you wish to call it [INFO] [stderr] [INFO] [stderr] error[E0698]: type inside `async` block must be known in this context [INFO] [stderr] --> tests/sync_rwlock.rs:174:22 [INFO] [stderr] | [INFO] [stderr] 174 | stream::iter(0..1000) [INFO] [stderr] | ^ cannot infer type for type `{integer}` [INFO] [stderr] | [INFO] [stderr] note: the type is part of the `async` block because of this `await` [INFO] [stderr] --> tests/sync_rwlock.rs:174:9 [INFO] [stderr] | [INFO] [stderr] 174 | / stream::iter(0..1000) [INFO] [stderr] 175 | | .for_each(move |_| { [INFO] [stderr] 176 | | let rwlock = rwclone1.clone(); [INFO] [stderr] 177 | | async move { [INFO] [stderr] ... | [INFO] [stderr] 181 | | }) [INFO] [stderr] 182 | | .await; [INFO] [stderr] | |__________________^ [INFO] [stderr] [INFO] [stderr] error[E0698]: type inside `async` block must be known in this context [INFO] [stderr] --> tests/sync_rwlock.rs:174:25 [INFO] [stderr] | [INFO] [stderr] 174 | stream::iter(0..1000) [INFO] [stderr] | ^^^^ cannot infer type for type `{integer}` [INFO] [stderr] | [INFO] [stderr] note: the type is part of the `async` block because of this `await` [INFO] [stderr] --> tests/sync_rwlock.rs:174:9 [INFO] [stderr] | [INFO] [stderr] 174 | / stream::iter(0..1000) [INFO] [stderr] 175 | | .for_each(move |_| { [INFO] [stderr] 176 | | let rwlock = rwclone1.clone(); [INFO] [stderr] 177 | | async move { [INFO] [stderr] ... | [INFO] [stderr] 181 | | }) [INFO] [stderr] 182 | | .await; [INFO] [stderr] | |__________________^ [INFO] [stderr] [INFO] [stderr] error[E0698]: type inside `async` block must be known in this context [INFO] [stderr] --> tests/sync_rwlock.rs:174:22 [INFO] [stderr] | [INFO] [stderr] 174 | stream::iter(0..1000) [INFO] [stderr] | ^^^^^^^ cannot infer type for type `{integer}` [INFO] [stderr] | [INFO] [stderr] note: the type is part of the `async` block because of this `await` [INFO] [stderr] --> tests/sync_rwlock.rs:174:9 [INFO] [stderr] | [INFO] [stderr] 174 | / stream::iter(0..1000) [INFO] [stderr] 175 | | .for_each(move |_| { [INFO] [stderr] 176 | | let rwlock = rwclone1.clone(); [INFO] [stderr] 177 | | async move { [INFO] [stderr] ... | [INFO] [stderr] 181 | | }) [INFO] [stderr] 182 | | .await; [INFO] [stderr] | |__________________^ [INFO] [stderr] [INFO] [stderr] error[E0698]: type inside `async` block must be known in this context [INFO] [stderr] --> tests/sync_rwlock.rs:174:9 [INFO] [stderr] | [INFO] [stderr] 174 | stream::iter(0..1000) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ cannot infer type for type `{integer}` [INFO] [stderr] | [INFO] [stderr] note: the type is part of the `async` block because of this `await` [INFO] [stderr] --> tests/sync_rwlock.rs:174:9 [INFO] [stderr] | [INFO] [stderr] 174 | / stream::iter(0..1000) [INFO] [stderr] 175 | | .for_each(move |_| { [INFO] [stderr] 176 | | let rwlock = rwclone1.clone(); [INFO] [stderr] 177 | | async move { [INFO] [stderr] ... | [INFO] [stderr] 181 | | }) [INFO] [stderr] 182 | | .await; [INFO] [stderr] | |__________________^ [INFO] [stderr] [INFO] [stderr] error[E0698]: type inside `async` block must be known in this context [INFO] [stderr] --> tests/sync_rwlock.rs:175:23 [INFO] [stderr] | [INFO] [stderr] 175 | .for_each(move |_| { [INFO] [stderr] | _______________________^ [INFO] [stderr] 176 | | let rwlock = rwclone1.clone(); [INFO] [stderr] 177 | | async move { [INFO] [stderr] 178 | | let mut guard = rwlock.write().await; [INFO] [stderr] 179 | | *guard += 2; [INFO] [stderr] 180 | | } [INFO] [stderr] 181 | | }) [INFO] [stderr] | |_____________^ cannot infer type for type `{integer}` [INFO] [stderr] | [INFO] [stderr] note: the type is part of the `async` block because of this `await` [INFO] [stderr] --> tests/sync_rwlock.rs:174:9 [INFO] [stderr] | [INFO] [stderr] 174 | / stream::iter(0..1000) [INFO] [stderr] 175 | | .for_each(move |_| { [INFO] [stderr] 176 | | let rwlock = rwclone1.clone(); [INFO] [stderr] 177 | | async move { [INFO] [stderr] ... | [INFO] [stderr] 181 | | }) [INFO] [stderr] 182 | | .await; [INFO] [stderr] | |__________________^ [INFO] [stderr] [INFO] [stderr] error[E0698]: type inside `async` block must be known in this context [INFO] [stderr] --> tests/sync_rwlock.rs:174:9 [INFO] [stderr] | [INFO] [stderr] 174 | / stream::iter(0..1000) [INFO] [stderr] 175 | | .for_each(move |_| { [INFO] [stderr] 176 | | let rwlock = rwclone1.clone(); [INFO] [stderr] 177 | | async move { [INFO] [stderr] ... | [INFO] [stderr] 180 | | } [INFO] [stderr] 181 | | }) [INFO] [stderr] | |______________^ cannot infer type for type `{integer}` [INFO] [stderr] | [INFO] [stderr] note: the type is part of the `async` block because of this `await` [INFO] [stderr] --> tests/sync_rwlock.rs:174:9 [INFO] [stderr] | [INFO] [stderr] 174 | / stream::iter(0..1000) [INFO] [stderr] 175 | | .for_each(move |_| { [INFO] [stderr] 176 | | let rwlock = rwclone1.clone(); [INFO] [stderr] 177 | | async move { [INFO] [stderr] ... | [INFO] [stderr] 181 | | }) [INFO] [stderr] 182 | | .await; [INFO] [stderr] | |__________________^ [INFO] [stderr] [INFO] [stderr] error[E0698]: type inside `async` block must be known in this context [INFO] [stderr] --> tests/sync_rwlock.rs:174:9 [INFO] [stderr] | [INFO] [stderr] 174 | / stream::iter(0..1000) [INFO] [stderr] 175 | | .for_each(move |_| { [INFO] [stderr] 176 | | let rwlock = rwclone1.clone(); [INFO] [stderr] 177 | | async move { [INFO] [stderr] ... | [INFO] [stderr] 181 | | }) [INFO] [stderr] 182 | | .await; [INFO] [stderr] | |__________________^ cannot infer type for type `{integer}` [INFO] [stderr] | [INFO] [stderr] note: the type is part of the `async` block because of this `await` [INFO] [stderr] --> tests/sync_rwlock.rs:174:9 [INFO] [stderr] | [INFO] [stderr] 174 | / stream::iter(0..1000) [INFO] [stderr] 175 | | .for_each(move |_| { [INFO] [stderr] 176 | | let rwlock = rwclone1.clone(); [INFO] [stderr] 177 | | async move { [INFO] [stderr] ... | [INFO] [stderr] 181 | | }) [INFO] [stderr] 182 | | .await; [INFO] [stderr] | |__________________^ [INFO] [stderr] [INFO] [stderr] error[E0698]: type inside `async` block must be known in this context [INFO] [stderr] --> tests/sync_rwlock.rs:188:22 [INFO] [stderr] | [INFO] [stderr] 188 | stream::iter(0..1000) [INFO] [stderr] | ^ cannot infer type for type `{integer}` [INFO] [stderr] | [INFO] [stderr] note: the type is part of the `async` block because of this `await` [INFO] [stderr] --> tests/sync_rwlock.rs:188:9 [INFO] [stderr] | [INFO] [stderr] 188 | / stream::iter(0..1000) [INFO] [stderr] 189 | | .for_each(move |_| { [INFO] [stderr] 190 | | let rwlock = rwclone2.clone(); [INFO] [stderr] 191 | | async move { [INFO] [stderr] ... | [INFO] [stderr] 195 | | }) [INFO] [stderr] 196 | | .await; [INFO] [stderr] | |__________________^ [INFO] [stderr] [INFO] [stderr] error[E0698]: type inside `async` block must be known in this context [INFO] [stderr] --> tests/sync_rwlock.rs:188:25 [INFO] [stderr] | [INFO] [stderr] 188 | stream::iter(0..1000) [INFO] [stderr] | ^^^^ cannot infer type for type `{integer}` [INFO] [stderr] | [INFO] [stderr] note: the type is part of the `async` block because of this `await` [INFO] [stderr] --> tests/sync_rwlock.rs:188:9 [INFO] [stderr] | [INFO] [stderr] 188 | / stream::iter(0..1000) [INFO] [stderr] 189 | | .for_each(move |_| { [INFO] [stderr] 190 | | let rwlock = rwclone2.clone(); [INFO] [stderr] 191 | | async move { [INFO] [stderr] ... | [INFO] [stderr] 195 | | }) [INFO] [stderr] 196 | | .await; [INFO] [stderr] | |__________________^ [INFO] [stderr] [INFO] [stderr] error[E0698]: type inside `async` block must be known in this context [INFO] [stderr] --> tests/sync_rwlock.rs:188:22 [INFO] [stderr] | [INFO] [stderr] 188 | stream::iter(0..1000) [INFO] [stderr] | ^^^^^^^ cannot infer type for type `{integer}` [INFO] [stderr] | [INFO] [stderr] note: the type is part of the `async` block because of this `await` [INFO] [stderr] --> tests/sync_rwlock.rs:188:9 [INFO] [stderr] | [INFO] [stderr] 188 | / stream::iter(0..1000) [INFO] [stderr] 189 | | .for_each(move |_| { [INFO] [stderr] 190 | | let rwlock = rwclone2.clone(); [INFO] [stderr] 191 | | async move { [INFO] [stderr] ... | [INFO] [stderr] 195 | | }) [INFO] [stderr] 196 | | .await; [INFO] [stderr] | |__________________^ [INFO] [stderr] [INFO] [stderr] error[E0698]: type inside `async` block must be known in this context [INFO] [stderr] --> tests/sync_rwlock.rs:188:9 [INFO] [stderr] | [INFO] [stderr] 188 | stream::iter(0..1000) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ cannot infer type for type `{integer}` [INFO] [stderr] | [INFO] [stderr] note: the type is part of the `async` block because of this `await` [INFO] [stderr] --> tests/sync_rwlock.rs:188:9 [INFO] [stderr] | [INFO] [stderr] 188 | / stream::iter(0..1000) [INFO] [stderr] 189 | | .for_each(move |_| { [INFO] [stderr] 190 | | let rwlock = rwclone2.clone(); [INFO] [stderr] 191 | | async move { [INFO] [stderr] ... | [INFO] [stderr] 195 | | }) [INFO] [stderr] 196 | | .await; [INFO] [stderr] | |__________________^ [INFO] [stderr] [INFO] [stderr] error[E0698]: type inside `async` block must be known in this context [INFO] [stderr] --> tests/sync_rwlock.rs:189:23 [INFO] [stderr] | [INFO] [stderr] 189 | .for_each(move |_| { [INFO] [stderr] | _______________________^ [INFO] [stderr] 190 | | let rwlock = rwclone2.clone(); [INFO] [stderr] 191 | | async move { [INFO] [stderr] 192 | | let mut guard = rwlock.write().await; [INFO] [stderr] 193 | | *guard += 3; [INFO] [stderr] 194 | | } [INFO] [stderr] 195 | | }) [INFO] [stderr] | |_____________^ cannot infer type for type `{integer}` [INFO] [stderr] | [INFO] [stderr] note: the type is part of the `async` block because of this `await` [INFO] [stderr] --> tests/sync_rwlock.rs:188:9 [INFO] [stderr] | [INFO] [stderr] 188 | / stream::iter(0..1000) [INFO] [stderr] 189 | | .for_each(move |_| { [INFO] [stderr] 190 | | let rwlock = rwclone2.clone(); [INFO] [stderr] 191 | | async move { [INFO] [stderr] ... | [INFO] [stderr] 195 | | }) [INFO] [stderr] 196 | | .await; [INFO] [stderr] | |__________________^ [INFO] [stderr] [INFO] [stderr] error[E0698]: type inside `async` block must be known in this context [INFO] [stderr] --> tests/sync_rwlock.rs:188:9 [INFO] [stderr] | [INFO] [stderr] 188 | / stream::iter(0..1000) [INFO] [stderr] 189 | | .for_each(move |_| { [INFO] [stderr] 190 | | let rwlock = rwclone2.clone(); [INFO] [stderr] 191 | | async move { [INFO] [stderr] ... | [INFO] [stderr] 194 | | } [INFO] [stderr] 195 | | }) [INFO] [stderr] | |______________^ cannot infer type for type `{integer}` [INFO] [stderr] | [INFO] [stderr] note: the type is part of the `async` block because of this `await` [INFO] [stderr] --> tests/sync_rwlock.rs:188:9 [INFO] [stderr] | [INFO] [stderr] 188 | / stream::iter(0..1000) [INFO] [stderr] 189 | | .for_each(move |_| { [INFO] [stderr] 190 | | let rwlock = rwclone2.clone(); [INFO] [stderr] 191 | | async move { [INFO] [stderr] ... | [INFO] [stderr] 195 | | }) [INFO] [stderr] 196 | | .await; [INFO] [stderr] | |__________________^ [INFO] [stderr] [INFO] [stderr] error[E0698]: type inside `async` block must be known in this context [INFO] [stderr] --> tests/sync_rwlock.rs:188:9 [INFO] [stderr] | [INFO] [stderr] 188 | / stream::iter(0..1000) [INFO] [stderr] 189 | | .for_each(move |_| { [INFO] [stderr] 190 | | let rwlock = rwclone2.clone(); [INFO] [stderr] 191 | | async move { [INFO] [stderr] ... | [INFO] [stderr] 195 | | }) [INFO] [stderr] 196 | | .await; [INFO] [stderr] | |__________________^ cannot infer type for type `{integer}` [INFO] [stderr] | [INFO] [stderr] note: the type is part of the `async` block because of this `await` [INFO] [stderr] --> tests/sync_rwlock.rs:188:9 [INFO] [stderr] | [INFO] [stderr] 188 | / stream::iter(0..1000) [INFO] [stderr] 189 | | .for_each(move |_| { [INFO] [stderr] 190 | | let rwlock = rwclone2.clone(); [INFO] [stderr] 191 | | async move { [INFO] [stderr] ... | [INFO] [stderr] 195 | | }) [INFO] [stderr] 196 | | .await; [INFO] [stderr] | |__________________^ [INFO] [stderr] [INFO] [stderr] error[E0698]: type inside `async` block must be known in this context [INFO] [stderr] --> tests/sync_rwlock.rs:202:22 [INFO] [stderr] | [INFO] [stderr] 202 | stream::iter(0..1000) [INFO] [stderr] | ^ cannot infer type for type `{integer}` [INFO] [stderr] | [INFO] [stderr] note: the type is part of the `async` block because of this `await` [INFO] [stderr] --> tests/sync_rwlock.rs:202:9 [INFO] [stderr] | [INFO] [stderr] 202 | / stream::iter(0..1000) [INFO] [stderr] 203 | | .for_each(move |_| { [INFO] [stderr] 204 | | let rwlock = rwclone3.clone(); [INFO] [stderr] 205 | | async move { [INFO] [stderr] ... | [INFO] [stderr] 209 | | }) [INFO] [stderr] 210 | | .await; [INFO] [stderr] | |__________________^ [INFO] [stderr] [INFO] [stderr] error[E0698]: type inside `async` block must be known in this context [INFO] [stderr] --> tests/sync_rwlock.rs:202:25 [INFO] [stderr] | [INFO] [stderr] 202 | stream::iter(0..1000) [INFO] [stderr] | ^^^^ cannot infer type for type `{integer}` [INFO] [stderr] | [INFO] [stderr] note: the type is part of the `async` block because of this `await` [INFO] [stderr] --> tests/sync_rwlock.rs:202:9 [INFO] [stderr] | [INFO] [stderr] 202 | / stream::iter(0..1000) [INFO] [stderr] 203 | | .for_each(move |_| { [INFO] [stderr] 204 | | let rwlock = rwclone3.clone(); [INFO] [stderr] 205 | | async move { [INFO] [stderr] ... | [INFO] [stderr] 209 | | }) [INFO] [stderr] 210 | | .await; [INFO] [stderr] | |__________________^ [INFO] [stderr] [INFO] [stderr] error[E0698]: type inside `async` block must be known in this context [INFO] [stderr] --> tests/sync_rwlock.rs:202:22 [INFO] [stderr] | [INFO] [stderr] 202 | stream::iter(0..1000) [INFO] [stderr] | ^^^^^^^ cannot infer type for type `{integer}` [INFO] [stderr] | [INFO] [stderr] note: the type is part of the `async` block because of this `await` [INFO] [stderr] --> tests/sync_rwlock.rs:202:9 [INFO] [stderr] | [INFO] [stderr] 202 | / stream::iter(0..1000) [INFO] [stderr] 203 | | .for_each(move |_| { [INFO] [stderr] 204 | | let rwlock = rwclone3.clone(); [INFO] [stderr] 205 | | async move { [INFO] [stderr] ... | [INFO] [stderr] 209 | | }) [INFO] [stderr] 210 | | .await; [INFO] [stderr] | |__________________^ [INFO] [stderr] [INFO] [stderr] error[E0698]: type inside `async` block must be known in this context [INFO] [stderr] --> tests/sync_rwlock.rs:202:9 [INFO] [stderr] | [INFO] [stderr] 202 | stream::iter(0..1000) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ cannot infer type for type `{integer}` [INFO] [stderr] | [INFO] [stderr] note: the type is part of the `async` block because of this `await` [INFO] [stderr] --> tests/sync_rwlock.rs:202:9 [INFO] [stderr] | [INFO] [stderr] 202 | / stream::iter(0..1000) [INFO] [stderr] 203 | | .for_each(move |_| { [INFO] [stderr] 204 | | let rwlock = rwclone3.clone(); [INFO] [stderr] 205 | | async move { [INFO] [stderr] ... | [INFO] [stderr] 209 | | }) [INFO] [stderr] 210 | | .await; [INFO] [stderr] | |__________________^ [INFO] [stderr] [INFO] [stderr] error[E0698]: type inside `async` block must be known in this context [INFO] [stderr] --> tests/sync_rwlock.rs:203:23 [INFO] [stderr] | [INFO] [stderr] 203 | .for_each(move |_| { [INFO] [stderr] | _______________________^ [INFO] [stderr] 204 | | let rwlock = rwclone3.clone(); [INFO] [stderr] 205 | | async move { [INFO] [stderr] 206 | | let mut guard = rwlock.write().await; [INFO] [stderr] 207 | | *guard += 5; [INFO] [stderr] 208 | | } [INFO] [stderr] 209 | | }) [INFO] [stderr] | |_____________^ cannot infer type for type `{integer}` [INFO] [stderr] | [INFO] [stderr] note: the type is part of the `async` block because of this `await` [INFO] [stderr] --> tests/sync_rwlock.rs:202:9 [INFO] [stderr] | [INFO] [stderr] 202 | / stream::iter(0..1000) [INFO] [stderr] 203 | | .for_each(move |_| { [INFO] [stderr] 204 | | let rwlock = rwclone3.clone(); [INFO] [stderr] 205 | | async move { [INFO] [stderr] ... | [INFO] [stderr] 209 | | }) [INFO] [stderr] 210 | | .await; [INFO] [stderr] | |__________________^ [INFO] [stderr] [INFO] [stderr] error[E0698]: type inside `async` block must be known in this context [INFO] [stderr] --> tests/sync_rwlock.rs:202:9 [INFO] [stderr] | [INFO] [stderr] 202 | / stream::iter(0..1000) [INFO] [stderr] 203 | | .for_each(move |_| { [INFO] [stderr] 204 | | let rwlock = rwclone3.clone(); [INFO] [stderr] 205 | | async move { [INFO] [stderr] ... | [INFO] [stderr] 208 | | } [INFO] [stderr] 209 | | }) [INFO] [stderr] | |______________^ cannot infer type for type `{integer}` [INFO] [stderr] | [INFO] [stderr] note: the type is part of the `async` block because of this `await` [INFO] [stderr] --> tests/sync_rwlock.rs:202:9 [INFO] [stderr] | [INFO] [stderr] 202 | / stream::iter(0..1000) [INFO] [stderr] 203 | | .for_each(move |_| { [INFO] [stderr] 204 | | let rwlock = rwclone3.clone(); [INFO] [stderr] 205 | | async move { [INFO] [stderr] ... | [INFO] [stderr] 209 | | }) [INFO] [stderr] 210 | | .await; [INFO] [stderr] | |__________________^ [INFO] [stderr] [INFO] [stderr] error[E0698]: type inside `async` block must be known in this context [INFO] [stderr] --> tests/sync_rwlock.rs:202:9 [INFO] [stderr] | [INFO] [stderr] 202 | / stream::iter(0..1000) [INFO] [stderr] 203 | | .for_each(move |_| { [INFO] [stderr] 204 | | let rwlock = rwclone3.clone(); [INFO] [stderr] 205 | | async move { [INFO] [stderr] ... | [INFO] [stderr] 209 | | }) [INFO] [stderr] 210 | | .await; [INFO] [stderr] | |__________________^ cannot infer type for type `{integer}` [INFO] [stderr] | [INFO] [stderr] note: the type is part of the `async` block because of this `await` [INFO] [stderr] --> tests/sync_rwlock.rs:202:9 [INFO] [stderr] | [INFO] [stderr] 202 | / stream::iter(0..1000) [INFO] [stderr] 203 | | .for_each(move |_| { [INFO] [stderr] 204 | | let rwlock = rwclone3.clone(); [INFO] [stderr] 205 | | async move { [INFO] [stderr] ... | [INFO] [stderr] 209 | | }) [INFO] [stderr] 210 | | .await; [INFO] [stderr] | |__________________^ [INFO] [stderr] [INFO] [stderr] error[E0698]: type inside `async` block must be known in this context [INFO] [stderr] --> tests/sync_rwlock.rs:216:22 [INFO] [stderr] | [INFO] [stderr] 216 | stream::iter(0..1000) [INFO] [stderr] | ^ cannot infer type for type `{integer}` [INFO] [stderr] | [INFO] [stderr] note: the type is part of the `async` block because of this `await` [INFO] [stderr] --> tests/sync_rwlock.rs:216:9 [INFO] [stderr] | [INFO] [stderr] 216 | / stream::iter(0..1000) [INFO] [stderr] 217 | | .for_each(move |_| { [INFO] [stderr] 218 | | let rwlock = rwclone4.clone(); [INFO] [stderr] 219 | | async move { [INFO] [stderr] ... | [INFO] [stderr] 223 | | }) [INFO] [stderr] 224 | | .await; [INFO] [stderr] | |__________________^ [INFO] [stderr] [INFO] [stderr] error[E0698]: type inside `async` block must be known in this context [INFO] [stderr] --> tests/sync_rwlock.rs:216:25 [INFO] [stderr] | [INFO] [stderr] 216 | stream::iter(0..1000) [INFO] [stderr] | ^^^^ cannot infer type for type `{integer}` [INFO] [stderr] | [INFO] [stderr] note: the type is part of the `async` block because of this `await` [INFO] [stderr] --> tests/sync_rwlock.rs:216:9 [INFO] [stderr] | [INFO] [stderr] 216 | / stream::iter(0..1000) [INFO] [stderr] 217 | | .for_each(move |_| { [INFO] [stderr] 218 | | let rwlock = rwclone4.clone(); [INFO] [stderr] 219 | | async move { [INFO] [stderr] ... | [INFO] [stderr] 223 | | }) [INFO] [stderr] 224 | | .await; [INFO] [stderr] | |__________________^ [INFO] [stderr] [INFO] [stderr] error[E0698]: type inside `async` block must be known in this context [INFO] [stderr] --> tests/sync_rwlock.rs:216:22 [INFO] [stderr] | [INFO] [stderr] 216 | stream::iter(0..1000) [INFO] [stderr] | ^^^^^^^ cannot infer type for type `{integer}` [INFO] [stderr] | [INFO] [stderr] note: the type is part of the `async` block because of this `await` [INFO] [stderr] --> tests/sync_rwlock.rs:216:9 [INFO] [stderr] | [INFO] [stderr] 216 | / stream::iter(0..1000) [INFO] [stderr] 217 | | .for_each(move |_| { [INFO] [stderr] 218 | | let rwlock = rwclone4.clone(); [INFO] [stderr] 219 | | async move { [INFO] [stderr] ... | [INFO] [stderr] 223 | | }) [INFO] [stderr] 224 | | .await; [INFO] [stderr] | |__________________^ [INFO] [stderr] [INFO] [stderr] error[E0698]: type inside `async` block must be known in this context [INFO] [stderr] --> tests/sync_rwlock.rs:216:9 [INFO] [stderr] | [INFO] [stderr] 216 | stream::iter(0..1000) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ cannot infer type for type `{integer}` [INFO] [stderr] | [INFO] [stderr] note: the type is part of the `async` block because of this `await` [INFO] [stderr] --> tests/sync_rwlock.rs:216:9 [INFO] [stderr] | [INFO] [stderr] 216 | / stream::iter(0..1000) [INFO] [stderr] 217 | | .for_each(move |_| { [INFO] [stderr] 218 | | let rwlock = rwclone4.clone(); [INFO] [stderr] 219 | | async move { [INFO] [stderr] ... | [INFO] [stderr] 223 | | }) [INFO] [stderr] 224 | | .await; [INFO] [stderr] | |__________________^ [INFO] [stderr] [INFO] [stderr] error[E0698]: type inside `async` block must be known in this context [INFO] [stderr] --> tests/sync_rwlock.rs:217:23 [INFO] [stderr] | [INFO] [stderr] 217 | .for_each(move |_| { [INFO] [stderr] | _______________________^ [INFO] [stderr] 218 | | let rwlock = rwclone4.clone(); [INFO] [stderr] 219 | | async move { [INFO] [stderr] 220 | | let mut guard = rwlock.write().await; [INFO] [stderr] 221 | | *guard += 7; [INFO] [stderr] 222 | | } [INFO] [stderr] 223 | | }) [INFO] [stderr] | |_____________^ cannot infer type for type `{integer}` [INFO] [stderr] | [INFO] [stderr] note: the type is part of the `async` block because of this `await` [INFO] [stderr] --> tests/sync_rwlock.rs:216:9 [INFO] [stderr] | [INFO] [stderr] 216 | / stream::iter(0..1000) [INFO] [stderr] 217 | | .for_each(move |_| { [INFO] [stderr] 218 | | let rwlock = rwclone4.clone(); [INFO] [stderr] 219 | | async move { [INFO] [stderr] ... | [INFO] [stderr] 223 | | }) [INFO] [stderr] 224 | | .await; [INFO] [stderr] | |__________________^ [INFO] [stderr] [INFO] [stderr] error[E0698]: type inside `async` block must be known in this context [INFO] [stderr] --> tests/sync_rwlock.rs:216:9 [INFO] [stderr] | [INFO] [stderr] 216 | / stream::iter(0..1000) [INFO] [stderr] 217 | | .for_each(move |_| { [INFO] [stderr] 218 | | let rwlock = rwclone4.clone(); [INFO] [stderr] 219 | | async move { [INFO] [stderr] ... | [INFO] [stderr] 222 | | } [INFO] [stderr] 223 | | }) [INFO] [stderr] | |______________^ cannot infer type for type `{integer}` [INFO] [stderr] | [INFO] [stderr] note: the type is part of the `async` block because of this `await` [INFO] [stderr] --> tests/sync_rwlock.rs:216:9 [INFO] [stderr] | [INFO] [stderr] 216 | / stream::iter(0..1000) [INFO] [stderr] 217 | | .for_each(move |_| { [INFO] [stderr] 218 | | let rwlock = rwclone4.clone(); [INFO] [stderr] 219 | | async move { [INFO] [stderr] ... | [INFO] [stderr] 223 | | }) [INFO] [stderr] 224 | | .await; [INFO] [stderr] | |__________________^ [INFO] [stderr] [INFO] [stderr] error[E0698]: type inside `async` block must be known in this context [INFO] [stderr] --> tests/sync_rwlock.rs:216:9 [INFO] [stderr] | [INFO] [stderr] 216 | / stream::iter(0..1000) [INFO] [stderr] 217 | | .for_each(move |_| { [INFO] [stderr] 218 | | let rwlock = rwclone4.clone(); [INFO] [stderr] 219 | | async move { [INFO] [stderr] ... | [INFO] [stderr] 223 | | }) [INFO] [stderr] 224 | | .await; [INFO] [stderr] | |__________________^ cannot infer type for type `{integer}` [INFO] [stderr] | [INFO] [stderr] note: the type is part of the `async` block because of this `await` [INFO] [stderr] --> tests/sync_rwlock.rs:216:9 [INFO] [stderr] | [INFO] [stderr] 216 | / stream::iter(0..1000) [INFO] [stderr] 217 | | .for_each(move |_| { [INFO] [stderr] 218 | | let rwlock = rwclone4.clone(); [INFO] [stderr] 219 | | async move { [INFO] [stderr] ... | [INFO] [stderr] 223 | | }) [INFO] [stderr] 224 | | .await; [INFO] [stderr] | |__________________^ [INFO] [stderr] [INFO] [stderr] error: aborting due to 48 previous errors [INFO] [stderr] [INFO] [stderr] Some errors have detailed explanations: E0425, E0432, E0433, E0599, E0603, E0698. [INFO] [stderr] For more information about an error, try `rustc --explain E0425`. [INFO] [stderr] error: could not compile `tokio`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "23a3c7b55c24368a71d01a91620010444afa400670aabc0f599a833545ddee63"` [INFO] running `"docker" "rm" "-f" "23a3c7b55c24368a71d01a91620010444afa400670aabc0f599a833545ddee63"` [INFO] [stdout] 23a3c7b55c24368a71d01a91620010444afa400670aabc0f599a833545ddee63