summaryrefslogtreecommitdiffstats
path: root/src/test/ui/async-await/generator-desc.stderr
blob: 2494c3feb2a89206e5feff16ebf644aacdcb5e55 (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
error[E0308]: mismatched types
  --> $DIR/generator-desc.rs:10:25
   |
LL |     fun(async {}, async {});
   |               --        ^^
   |               |         |
   |               |         expected `async` block, found a different `async` block
   |               |         arguments to this function are incorrect
   |               the expected `async` block
   |
   = note: expected `async` block `[static generator@$DIR/generator-desc.rs:10:15: 10:17]`
              found `async` block `[static generator@$DIR/generator-desc.rs:10:25: 10:27]`
note: function defined here
  --> $SRC_DIR/core/src/future/mod.rs:LL:COL
   |
LL | pub const fn from_generator<T>(gen: T) -> impl Future<Output = T::Return>
   |              ^^^^^^^^^^^^^^

error[E0308]: mismatched types
  --> $DIR/generator-desc.rs:12:16
   |
LL |     fun(one(), two());
   |     ---        ^^^^^ expected opaque type, found a different opaque type
   |     |
   |     arguments to this function are incorrect
   |
note: while checking the return type of the `async fn`
  --> $DIR/generator-desc.rs:5:16
   |
LL | async fn one() {}
   |                ^ checked the `Output` of this `async fn`, expected opaque type
note: while checking the return type of the `async fn`
  --> $DIR/generator-desc.rs:6:16
   |
LL | async fn two() {}
   |                ^ checked the `Output` of this `async fn`, found opaque type
   = note: expected opaque type `impl Future<Output = ()>` (opaque type at <$DIR/generator-desc.rs:5:16>)
              found opaque type `impl Future<Output = ()>` (opaque type at <$DIR/generator-desc.rs:6:16>)
   = help: consider `await`ing on both `Future`s
   = note: distinct uses of `impl Trait` result in different opaque types
note: function defined here
  --> $DIR/generator-desc.rs:8:4
   |
LL | fn fun<F: Future<Output = ()>>(f1: F, f2: F) {}
   |    ^^^                                -----

error[E0308]: mismatched types
  --> $DIR/generator-desc.rs:14:26
   |
LL |     fun((async || {})(), (async || {})());
   |     ---           --     ^^^^^^^^^^^^^^^ expected `async` closure body, found a different `async` closure body
   |     |             |
   |     |             the expected `async` closure body
   |     arguments to this function are incorrect
   |
  ::: $SRC_DIR/core/src/future/mod.rs:LL:COL
   |
LL | pub const fn from_generator<T>(gen: T) -> impl Future<Output = T::Return>
   |                                           -------------------------------
   |                                           |
   |                                           the expected opaque type
   |                                           the found opaque type
   |
   = note: expected opaque type `impl Future<Output = ()>` (`async` closure body)
              found opaque type `impl Future<Output = ()>` (`async` closure body)
note: function defined here
  --> $DIR/generator-desc.rs:8:4
   |
LL | fn fun<F: Future<Output = ()>>(f1: F, f2: F) {}
   |    ^^^                                -----

error: aborting due to 3 previous errors

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