summaryrefslogtreecommitdiffstats
path: root/tests/ui/async-await/coroutine-not-future.stderr
blob: 130c5ef526b39463109074e75177ea48a7ae5607 (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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
error[E0277]: the trait bound `impl Future<Output = ()>: Coroutine<_>` is not satisfied
  --> $DIR/coroutine-not-future.rs:31:21
   |
LL |     takes_coroutine(async_fn());
   |     --------------- ^^^^^^^^^^ the trait `Coroutine<_>` is not implemented for `impl Future<Output = ()>`
   |     |
   |     required by a bound introduced by this call
   |
note: required by a bound in `takes_coroutine`
  --> $DIR/coroutine-not-future.rs:18:39
   |
LL | fn takes_coroutine<ResumeTy>(_g: impl Coroutine<ResumeTy, Yield = (), Return = ()>) {}
   |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `takes_coroutine`

error[E0277]: the trait bound `impl Future<Output = ()>: Coroutine<_>` is not satisfied
  --> $DIR/coroutine-not-future.rs:33:21
   |
LL |     takes_coroutine(returns_async_block());
   |     --------------- ^^^^^^^^^^^^^^^^^^^^^ the trait `Coroutine<_>` is not implemented for `impl Future<Output = ()>`
   |     |
   |     required by a bound introduced by this call
   |
note: required by a bound in `takes_coroutine`
  --> $DIR/coroutine-not-future.rs:18:39
   |
LL | fn takes_coroutine<ResumeTy>(_g: impl Coroutine<ResumeTy, Yield = (), Return = ()>) {}
   |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `takes_coroutine`

error[E0277]: the trait bound `{async block@$DIR/coroutine-not-future.rs:35:21: 35:29}: Coroutine<_>` is not satisfied
  --> $DIR/coroutine-not-future.rs:35:21
   |
LL |     takes_coroutine(async {});
   |     --------------- ^^^^^^^^ the trait `Coroutine<_>` is not implemented for `{async block@$DIR/coroutine-not-future.rs:35:21: 35:29}`
   |     |
   |     required by a bound introduced by this call
   |
note: required by a bound in `takes_coroutine`
  --> $DIR/coroutine-not-future.rs:18:39
   |
LL | fn takes_coroutine<ResumeTy>(_g: impl Coroutine<ResumeTy, Yield = (), Return = ()>) {}
   |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `takes_coroutine`

error[E0277]: `impl Coroutine<Yield = (), Return = ()>` is not a future
  --> $DIR/coroutine-not-future.rs:39:18
   |
LL |     takes_future(returns_coroutine());
   |     ------------ ^^^^^^^^^^^^^^^^^^^ `impl Coroutine<Yield = (), Return = ()>` is not a future
   |     |
   |     required by a bound introduced by this call
   |
   = help: the trait `Future` is not implemented for `impl Coroutine<Yield = (), Return = ()>`
   = note: impl Coroutine<Yield = (), Return = ()> must be a future or must implement `IntoFuture` to be awaited
note: required by a bound in `takes_future`
  --> $DIR/coroutine-not-future.rs:17:26
   |
LL | fn takes_future(_f: impl Future<Output = ()>) {}
   |                          ^^^^^^^^^^^^^^^^^^^ required by this bound in `takes_future`

error[E0277]: `{coroutine@$DIR/coroutine-not-future.rs:41:18: 41:23}` is not a future
  --> $DIR/coroutine-not-future.rs:41:18
   |
LL |       takes_future(|ctx| {
   |  _____------------_^
   | |     |
   | |     required by a bound introduced by this call
LL | |
LL | |         ctx = yield ();
LL | |     });
   | |_____^ `{coroutine@$DIR/coroutine-not-future.rs:41:18: 41:23}` is not a future
   |
   = help: the trait `Future` is not implemented for `{coroutine@$DIR/coroutine-not-future.rs:41:18: 41:23}`
   = note: {coroutine@$DIR/coroutine-not-future.rs:41:18: 41:23} must be a future or must implement `IntoFuture` to be awaited
note: required by a bound in `takes_future`
  --> $DIR/coroutine-not-future.rs:17:26
   |
LL | fn takes_future(_f: impl Future<Output = ()>) {}
   |                          ^^^^^^^^^^^^^^^^^^^ required by this bound in `takes_future`

error: aborting due to 5 previous errors

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