summaryrefslogtreecommitdiffstats
path: root/src/test/ui/suggestions/issue-79843-impl-trait-with-missing-bounds-on-async-fn.stderr
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/suggestions/issue-79843-impl-trait-with-missing-bounds-on-async-fn.stderr')
-rw-r--r--src/test/ui/suggestions/issue-79843-impl-trait-with-missing-bounds-on-async-fn.stderr41
1 files changed, 41 insertions, 0 deletions
diff --git a/src/test/ui/suggestions/issue-79843-impl-trait-with-missing-bounds-on-async-fn.stderr b/src/test/ui/suggestions/issue-79843-impl-trait-with-missing-bounds-on-async-fn.stderr
new file mode 100644
index 000000000..a3ab0b8ef
--- /dev/null
+++ b/src/test/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`.