blob: 1b81b461f0aadb95fb3dc5240ff2ed961cfc35f0 (
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 = ()>: Generator<_>` is not satisfied
--> $DIR/generator-not-future.rs:31:21
|
LL | takes_generator(async_fn());
| --------------- ^^^^^^^^^^ the trait `Generator<_>` is not implemented for `impl Future<Output = ()>`
| |
| required by a bound introduced by this call
|
note: required by a bound in `takes_generator`
--> $DIR/generator-not-future.rs:18:39
|
LL | fn takes_generator<ResumeTy>(_g: impl Generator<ResumeTy, Yield = (), Return = ()>) {}
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `takes_generator`
error[E0277]: the trait bound `impl Future<Output = ()>: Generator<_>` is not satisfied
--> $DIR/generator-not-future.rs:33:21
|
LL | takes_generator(returns_async_block());
| --------------- ^^^^^^^^^^^^^^^^^^^^^ the trait `Generator<_>` is not implemented for `impl Future<Output = ()>`
| |
| required by a bound introduced by this call
|
note: required by a bound in `takes_generator`
--> $DIR/generator-not-future.rs:18:39
|
LL | fn takes_generator<ResumeTy>(_g: impl Generator<ResumeTy, Yield = (), Return = ()>) {}
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `takes_generator`
error[E0277]: the trait bound `[async block@$DIR/generator-not-future.rs:35:21: 35:29]: Generator<_>` is not satisfied
--> $DIR/generator-not-future.rs:35:21
|
LL | takes_generator(async {});
| --------------- ^^^^^^^^ the trait `Generator<_>` is not implemented for `[async block@$DIR/generator-not-future.rs:35:21: 35:29]`
| |
| required by a bound introduced by this call
|
note: required by a bound in `takes_generator`
--> $DIR/generator-not-future.rs:18:39
|
LL | fn takes_generator<ResumeTy>(_g: impl Generator<ResumeTy, Yield = (), Return = ()>) {}
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `takes_generator`
error[E0277]: `impl Generator<Yield = (), Return = ()>` is not a future
--> $DIR/generator-not-future.rs:39:18
|
LL | takes_future(returns_generator());
| ------------ ^^^^^^^^^^^^^^^^^^^ `impl Generator<Yield = (), Return = ()>` is not a future
| |
| required by a bound introduced by this call
|
= help: the trait `Future` is not implemented for `impl Generator<Yield = (), Return = ()>`
= note: impl Generator<Yield = (), Return = ()> must be a future or must implement `IntoFuture` to be awaited
note: required by a bound in `takes_future`
--> $DIR/generator-not-future.rs:17:26
|
LL | fn takes_future(_f: impl Future<Output = ()>) {}
| ^^^^^^^^^^^^^^^^^^^ required by this bound in `takes_future`
error[E0277]: `[generator@$DIR/generator-not-future.rs:41:18: 41:23]` is not a future
--> $DIR/generator-not-future.rs:41:18
|
LL | takes_future(|ctx| {
| _____------------_^
| | |
| | required by a bound introduced by this call
LL | |
LL | | ctx = yield ();
LL | | });
| |_____^ `[generator@$DIR/generator-not-future.rs:41:18: 41:23]` is not a future
|
= help: the trait `Future` is not implemented for `[generator@$DIR/generator-not-future.rs:41:18: 41:23]`
= note: [generator@$DIR/generator-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/generator-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`.
|