diff options
| author | Michael Goulet <michael@errs.io> | 2023-09-15 05:00:39 +0000 |
|---|---|---|
| committer | Michael Goulet <michael@errs.io> | 2023-09-21 19:18:14 +0000 |
| commit | 9072415252d6dde7f23acc21a6781f27c703ac9d (patch) | |
| tree | 2f462202bfe1f7f1d644e1292c5c4e49b2597e28 /tests/ui/async-await/in-trait/send-on-async-fn-in-trait.rs | |
| parent | 087a571e708560bad84b1dd8de107c8fdc2a3044 (diff) | |
| download | rust-9072415252d6dde7f23acc21a6781f27c703ac9d.tar.gz rust-9072415252d6dde7f23acc21a6781f27c703ac9d.zip | |
Suggest desugaring to RPITIT when AFIT is required to be an auto trait
Diffstat (limited to 'tests/ui/async-await/in-trait/send-on-async-fn-in-trait.rs')
| -rw-r--r-- | tests/ui/async-await/in-trait/send-on-async-fn-in-trait.rs | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/tests/ui/async-await/in-trait/send-on-async-fn-in-trait.rs b/tests/ui/async-await/in-trait/send-on-async-fn-in-trait.rs new file mode 100644 index 00000000000..96b623d6988 --- /dev/null +++ b/tests/ui/async-await/in-trait/send-on-async-fn-in-trait.rs @@ -0,0 +1,20 @@ +// run-rustfix +// edition: 2021 + +#![feature(async_fn_in_trait, return_position_impl_trait_in_trait)] +#![allow(unused)] + +trait Foo { + async fn test() -> () {} + async fn test2() -> i32 { 1 + 2 } +} + +fn bar<T: Foo>() { + fn needs_send(_: impl Send) {} + needs_send(T::test()); + //~^ ERROR `impl Future<Output = ()>` cannot be sent between threads safely + needs_send(T::test2()); + //~^ ERROR `impl Future<Output = i32>` cannot be sent between threads safely +} + +fn main() {} |
