diff options
Diffstat (limited to 'tests/ui/suggestions/issue-79843-impl-trait-with-missing-bounds-on-async-fn.stderr')
-rw-r--r-- | tests/ui/suggestions/issue-79843-impl-trait-with-missing-bounds-on-async-fn.stderr | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/tests/ui/suggestions/issue-79843-impl-trait-with-missing-bounds-on-async-fn.stderr b/tests/ui/suggestions/issue-79843-impl-trait-with-missing-bounds-on-async-fn.stderr new file mode 100644 index 000000000..a3ab0b8ef --- /dev/null +++ b/tests/ui/suggestions/issue-79843-impl-trait-with-missing-bounds-on-async-fn.stderr @@ -0,0 +1,41 @@ +error[E0277]: `<impl Foo as Foo>::Bar` cannot be sent between threads safely + --> $DIR/issue-79843-impl-trait-with-missing-bounds-on-async-fn.rs:14:20 + | +LL | assert_is_send(&bar); + | -------------- ^^^^ `<impl Foo as Foo>::Bar` cannot be sent between threads safely + | | + | required by a bound introduced by this call + | + = help: the trait `Send` is not implemented for `<impl Foo as Foo>::Bar` +note: required by a bound in `assert_is_send` + --> $DIR/issue-79843-impl-trait-with-missing-bounds-on-async-fn.rs:30:22 + | +LL | fn assert_is_send<T: Send>(_: &T) {} + | ^^^^ required by this bound in `assert_is_send` +help: introduce a type parameter with a trait bound instead of using `impl Trait` + | +LL | async fn run<F: Foo>(_: &(), foo: F) -> std::io::Result<()> where <F as Foo>::Bar: Send { + | ++++++++ ~ +++++++++++++++++++++++++++ + +error[E0277]: `<impl Foo as Foo>::Bar` cannot be sent between threads safely + --> $DIR/issue-79843-impl-trait-with-missing-bounds-on-async-fn.rs:24:20 + | +LL | assert_is_send(&bar); + | -------------- ^^^^ `<impl Foo as Foo>::Bar` cannot be sent between threads safely + | | + | required by a bound introduced by this call + | + = help: the trait `Send` is not implemented for `<impl Foo as Foo>::Bar` +note: required by a bound in `assert_is_send` + --> $DIR/issue-79843-impl-trait-with-missing-bounds-on-async-fn.rs:30:22 + | +LL | fn assert_is_send<T: Send>(_: &T) {} + | ^^^^ required by this bound in `assert_is_send` +help: introduce a type parameter with a trait bound instead of using `impl Trait` + | +LL | async fn run2<F: Foo>(_: &(), foo: F) -> std::io::Result<()> where <F as Foo>::Bar: Send { + | ~~~~~~~~ ~ +++++++++++++++++++++++++++ + +error: aborting due to 2 previous errors + +For more information about this error, try `rustc --explain E0277`. |