remove method call receiver special casing in unused_async lint

This commit is contained in:
y21 2024-09-27 21:38:38 +00:00
parent c771204ffb
commit d24a63199a
3 changed files with 28 additions and 15 deletions

View file

@ -55,6 +55,22 @@ mod issue9695 {
}
}
mod issue13466 {
use std::future::Future;
struct Wrap<F>(F);
impl<F> From<F> for Wrap<F> {
fn from(f: F) -> Self {
Self(f)
}
}
fn takes_fut<F: Fn() -> Fut, Fut: Future>(_: Wrap<F>) {}
async fn unused_async() {}
fn fp() {
takes_fut(unused_async.into());
}
}
async fn foo() -> i32 {
//~^ ERROR: unused `async` for function with no await statements
4

View file

@ -27,7 +27,7 @@ LL | async fn f3() {}
= help: consider removing the `async` from this function
error: unused `async` for function with no await statements
--> tests/ui/unused_async.rs:58:1
--> tests/ui/unused_async.rs:74:1
|
LL | / async fn foo() -> i32 {
LL | |
@ -38,7 +38,7 @@ LL | | }
= help: consider removing the `async` from this function
error: unused `async` for function with no await statements
--> tests/ui/unused_async.rs:70:5
--> tests/ui/unused_async.rs:86:5
|
LL | / async fn unused(&self) -> i32 {
LL | |