error: this `MutexGuard` is held across an `await` point --> $DIR/await_holding_lock.rs:9:13 | LL | let guard = x.lock().unwrap(); | ^^^^^ | = note: `-D clippy::await-holding-lock` implied by `-D warnings` = help: consider using an async-aware `Mutex` type or ensuring the `MutexGuard` is dropped before calling await note: these are all the `await` points this lock is held through --> $DIR/await_holding_lock.rs:9:9 | LL | / let guard = x.lock().unwrap(); LL | | baz().await LL | | } | |_____^ error: this `MutexGuard` is held across an `await` point --> $DIR/await_holding_lock.rs:24:13 | LL | let guard = x.read().unwrap(); | ^^^^^ | = help: consider using an async-aware `Mutex` type or ensuring the `MutexGuard` is dropped before calling await note: these are all the `await` points this lock is held through --> $DIR/await_holding_lock.rs:24:9 | LL | / let guard = x.read().unwrap(); LL | | baz().await LL | | } | |_____^ error: this `MutexGuard` is held across an `await` point --> $DIR/await_holding_lock.rs:29:13 | LL | let mut guard = x.write().unwrap(); | ^^^^^^^^^ | = help: consider using an async-aware `Mutex` type or ensuring the `MutexGuard` is dropped before calling await note: these are all the `await` points this lock is held through --> $DIR/await_holding_lock.rs:29:9 | LL | / let mut guard = x.write().unwrap(); LL | | baz().await LL | | } | |_____^ error: this `MutexGuard` is held across an `await` point --> $DIR/await_holding_lock.rs:50:13 | LL | let guard = x.lock().unwrap(); | ^^^^^ | = help: consider using an async-aware `Mutex` type or ensuring the `MutexGuard` is dropped before calling await note: these are all the `await` points this lock is held through --> $DIR/await_holding_lock.rs:50:9 | LL | / let guard = x.lock().unwrap(); LL | | LL | | let second = baz().await; LL | | ... | LL | | first + second + third LL | | } | |_____^ error: this `MutexGuard` is held across an `await` point --> $DIR/await_holding_lock.rs:63:17 | LL | let guard = x.lock().unwrap(); | ^^^^^ | = help: consider using an async-aware `Mutex` type or ensuring the `MutexGuard` is dropped before calling await note: these are all the `await` points this lock is held through --> $DIR/await_holding_lock.rs:63:13 | LL | / let guard = x.lock().unwrap(); LL | | baz().await LL | | }; | |_________^ error: this `MutexGuard` is held across an `await` point --> $DIR/await_holding_lock.rs:75:17 | LL | let guard = x.lock().unwrap(); | ^^^^^ | = help: consider using an async-aware `Mutex` type or ensuring the `MutexGuard` is dropped before calling await note: these are all the `await` points this lock is held through --> $DIR/await_holding_lock.rs:75:13 | LL | / let guard = x.lock().unwrap(); LL | | baz().await LL | | } | |_________^ error: this `MutexGuard` is held across an `await` point --> $DIR/await_holding_lock.rs:87:13 | LL | let guard = x.lock(); | ^^^^^ | = help: consider using an async-aware `Mutex` type or ensuring the `MutexGuard` is dropped before calling await note: these are all the `await` points this lock is held through --> $DIR/await_holding_lock.rs:87:9 | LL | / let guard = x.lock(); LL | | baz().await LL | | } | |_____^ error: this `MutexGuard` is held across an `await` point --> $DIR/await_holding_lock.rs:102:13 | LL | let guard = x.read(); | ^^^^^ | = help: consider using an async-aware `Mutex` type or ensuring the `MutexGuard` is dropped before calling await note: these are all the `await` points this lock is held through --> $DIR/await_holding_lock.rs:102:9 | LL | / let guard = x.read(); LL | | baz().await LL | | } | |_____^ error: this `MutexGuard` is held across an `await` point --> $DIR/await_holding_lock.rs:107:13 | LL | let mut guard = x.write(); | ^^^^^^^^^ | = help: consider using an async-aware `Mutex` type or ensuring the `MutexGuard` is dropped before calling await note: these are all the `await` points this lock is held through --> $DIR/await_holding_lock.rs:107:9 | LL | / let mut guard = x.write(); LL | | baz().await LL | | } | |_____^ error: this `MutexGuard` is held across an `await` point --> $DIR/await_holding_lock.rs:128:13 | LL | let guard = x.lock(); | ^^^^^ | = help: consider using an async-aware `Mutex` type or ensuring the `MutexGuard` is dropped before calling await note: these are all the `await` points this lock is held through --> $DIR/await_holding_lock.rs:128:9 | LL | / let guard = x.lock(); LL | | LL | | let second = baz().await; LL | | ... | LL | | first + second + third LL | | } | |_____^ error: this `MutexGuard` is held across an `await` point --> $DIR/await_holding_lock.rs:141:17 | LL | let guard = x.lock(); | ^^^^^ | = help: consider using an async-aware `Mutex` type or ensuring the `MutexGuard` is dropped before calling await note: these are all the `await` points this lock is held through --> $DIR/await_holding_lock.rs:141:13 | LL | / let guard = x.lock(); LL | | baz().await LL | | }; | |_________^ error: this `MutexGuard` is held across an `await` point --> $DIR/await_holding_lock.rs:153:17 | LL | let guard = x.lock(); | ^^^^^ | = help: consider using an async-aware `Mutex` type or ensuring the `MutexGuard` is dropped before calling await note: these are all the `await` points this lock is held through --> $DIR/await_holding_lock.rs:153:13 | LL | / let guard = x.lock(); LL | | baz().await LL | | } | |_________^ error: this `MutexGuard` is held across an `await` point --> $DIR/await_holding_lock.rs:173:9 | LL | let mut guard = x.lock().unwrap(); | ^^^^^^^^^ | = help: consider using an async-aware `Mutex` type or ensuring the `MutexGuard` is dropped before calling await note: these are all the `await` points this lock is held through --> $DIR/await_holding_lock.rs:173:5 | LL | / let mut guard = x.lock().unwrap(); LL | | *guard += 1; LL | | drop(guard); LL | | baz().await; LL | | } | |_^ error: aborting due to 13 previous errors