summaryrefslogtreecommitdiffstats
path: root/tests/ui/suggestions/async-fn-ctor-passed-as-arg-where-it-should-have-been-called.stderr
blob: 8ed62f854f09636e6ddae724fce92c10f4c1a02d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
error[E0277]: `fn() -> impl Future<Output = ()> {foo}` is not a future
  --> $DIR/async-fn-ctor-passed-as-arg-where-it-should-have-been-called.rs:10:9
   |
LL |     bar(foo);
   |     --- ^^^ `fn() -> impl Future<Output = ()> {foo}` is not a future
   |     |
   |     required by a bound introduced by this call
   |
   = help: the trait `Future` is not implemented for fn item `fn() -> impl Future<Output = ()> {foo}`
   = note: fn() -> impl Future<Output = ()> {foo} must be a future or must implement `IntoFuture` to be awaited
note: required by a bound in `bar`
  --> $DIR/async-fn-ctor-passed-as-arg-where-it-should-have-been-called.rs:7:16
   |
LL | fn bar(f: impl Future<Output=()>) {}
   |                ^^^^^^^^^^^^^^^^^ required by this bound in `bar`
help: use parentheses to call this function
   |
LL |     bar(foo());
   |            ++

error[E0277]: `[closure@$DIR/async-fn-ctor-passed-as-arg-where-it-should-have-been-called.rs:11:25: 11:33]` is not a future
  --> $DIR/async-fn-ctor-passed-as-arg-where-it-should-have-been-called.rs:12:9
   |
LL |     bar(async_closure);
   |     --- ^^^^^^^^^^^^^ `[closure@$DIR/async-fn-ctor-passed-as-arg-where-it-should-have-been-called.rs:11:25: 11:33]` is not a future
   |     |
   |     required by a bound introduced by this call
   |
   = help: the trait `Future` is not implemented for closure `[closure@$DIR/async-fn-ctor-passed-as-arg-where-it-should-have-been-called.rs:11:25: 11:33]`
   = note: [closure@$DIR/async-fn-ctor-passed-as-arg-where-it-should-have-been-called.rs:11:25: 11:33] must be a future or must implement `IntoFuture` to be awaited
note: required by a bound in `bar`
  --> $DIR/async-fn-ctor-passed-as-arg-where-it-should-have-been-called.rs:7:16
   |
LL | fn bar(f: impl Future<Output=()>) {}
   |                ^^^^^^^^^^^^^^^^^ required by this bound in `bar`
help: use parentheses to call this closure
   |
LL |     bar(async_closure());
   |                      ++

error: aborting due to 2 previous errors

For more information about this error, try `rustc --explain E0277`.