2020-09-02 02:40:56 -05:00
|
|
|
error[E0277]: the `?` operator can only be applied to values that implement `Try`
|
2020-08-20 02:34:08 -05:00
|
|
|
--> $DIR/issue-61076.rs:42:5
|
2020-05-10 09:34:20 -05:00
|
|
|
|
|
|
|
|
LL | foo()?;
|
2020-10-21 16:25:09 -05:00
|
|
|
| ^^^^^^ the `?` operator cannot be applied to type `impl Future`
|
2020-05-10 09:34:20 -05:00
|
|
|
|
|
2020-09-02 02:40:56 -05:00
|
|
|
= help: the trait `Try` is not implemented for `impl Future`
|
2021-07-17 13:13:50 -05:00
|
|
|
note: required by `branch`
|
|
|
|
--> $SRC_DIR/core/src/ops/try_trait.rs:LL:COL
|
|
|
|
|
|
|
|
|
LL | fn branch(self) -> ControlFlow<Self::Residual, Self::Output>;
|
|
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
2020-10-21 16:25:09 -05:00
|
|
|
help: consider `await`ing on the `Future`
|
|
|
|
|
|
|
|
|
LL | foo().await?;
|
2021-06-21 21:07:19 -05:00
|
|
|
| ++++++
|
2020-05-10 09:34:20 -05:00
|
|
|
|
2020-09-02 02:40:56 -05:00
|
|
|
error[E0277]: the `?` operator can only be applied to values that implement `Try`
|
2021-07-31 14:20:00 -05:00
|
|
|
--> $DIR/issue-61076.rs:67:5
|
2020-05-14 10:07:46 -05:00
|
|
|
|
|
|
|
|
LL | t?;
|
2020-10-21 16:25:09 -05:00
|
|
|
| ^^ the `?` operator cannot be applied to type `T`
|
2020-05-14 10:07:46 -05:00
|
|
|
|
|
2020-09-02 02:40:56 -05:00
|
|
|
= help: the trait `Try` is not implemented for `T`
|
2021-07-17 13:13:50 -05:00
|
|
|
note: required by `branch`
|
|
|
|
--> $SRC_DIR/core/src/ops/try_trait.rs:LL:COL
|
|
|
|
|
|
|
|
|
LL | fn branch(self) -> ControlFlow<Self::Residual, Self::Output>;
|
|
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
2020-10-21 16:25:09 -05:00
|
|
|
help: consider `await`ing on the `Future`
|
|
|
|
|
|
|
|
|
LL | t.await?;
|
2021-06-21 21:07:19 -05:00
|
|
|
| ++++++
|
2020-05-14 10:07:46 -05:00
|
|
|
|
2020-09-02 02:40:56 -05:00
|
|
|
error[E0609]: no field `0` on type `impl Future`
|
2021-07-31 14:20:00 -05:00
|
|
|
--> $DIR/issue-61076.rs:78:26
|
2020-05-30 09:57:12 -05:00
|
|
|
|
|
2020-08-16 07:25:22 -05:00
|
|
|
LL | let _: i32 = tuple().0;
|
2020-10-23 12:54:34 -05:00
|
|
|
| ^ field not available in `impl Future`, but it is available in its `Output`
|
|
|
|
|
|
|
|
|
help: consider `await`ing on the `Future` and access the field of its `Output`
|
|
|
|
|
|
|
|
|
LL | let _: i32 = tuple().await.0;
|
2021-06-21 21:07:19 -05:00
|
|
|
| ++++++
|
2020-05-30 09:57:12 -05:00
|
|
|
|
2020-09-02 02:40:56 -05:00
|
|
|
error[E0609]: no field `a` on type `impl Future`
|
2021-07-31 14:20:00 -05:00
|
|
|
--> $DIR/issue-61076.rs:82:28
|
2020-05-30 09:57:12 -05:00
|
|
|
|
|
2020-08-16 07:25:22 -05:00
|
|
|
LL | let _: i32 = struct_().a;
|
2020-10-23 12:54:34 -05:00
|
|
|
| ^ field not available in `impl Future`, but it is available in its `Output`
|
|
|
|
|
|
|
|
|
help: consider `await`ing on the `Future` and access the field of its `Output`
|
|
|
|
|
|
|
|
|
LL | let _: i32 = struct_().await.a;
|
2021-06-21 21:07:19 -05:00
|
|
|
| ++++++
|
2020-05-30 09:57:12 -05:00
|
|
|
|
2020-09-02 02:40:56 -05:00
|
|
|
error[E0599]: no method named `method` found for opaque type `impl Future` in the current scope
|
2021-07-31 14:20:00 -05:00
|
|
|
--> $DIR/issue-61076.rs:86:15
|
2020-08-20 02:34:08 -05:00
|
|
|
|
|
|
|
|
LL | struct_().method();
|
2020-09-02 02:40:56 -05:00
|
|
|
| ^^^^^^ method not found in `impl Future`
|
2020-10-23 12:54:34 -05:00
|
|
|
|
|
|
|
|
help: consider `await`ing on the `Future` and calling the method on its `Output`
|
|
|
|
|
|
|
|
|
LL | struct_().await.method();
|
2021-06-21 21:07:19 -05:00
|
|
|
| ++++++
|
2020-08-20 02:34:08 -05:00
|
|
|
|
2020-08-20 05:42:08 -05:00
|
|
|
error[E0308]: mismatched types
|
2021-07-31 14:20:00 -05:00
|
|
|
--> $DIR/issue-61076.rs:94:9
|
2020-08-20 05:42:08 -05:00
|
|
|
|
|
|
|
|
LL | Tuple(_) => {}
|
|
|
|
| ^^^^^^^^ expected opaque type, found struct `Tuple`
|
|
|
|
|
|
2021-07-31 14:20:00 -05:00
|
|
|
note: while checking the return type of the `async fn`
|
|
|
|
--> $DIR/issue-61076.rs:58:21
|
|
|
|
|
|
|
|
|
LL | async fn tuple() -> Tuple {
|
|
|
|
| ^^^^^ checked the `Output` of this `async fn`, expected opaque type
|
2020-09-02 02:40:56 -05:00
|
|
|
= note: expected opaque type `impl Future`
|
2020-08-20 05:42:08 -05:00
|
|
|
found struct `Tuple`
|
2020-10-22 21:03:36 -05:00
|
|
|
help: consider `await`ing on the `Future`
|
|
|
|
|
|
|
|
|
LL | match tuple().await {
|
2021-06-21 21:07:19 -05:00
|
|
|
| ++++++
|
2020-08-20 05:42:08 -05:00
|
|
|
|
|
|
|
error: aborting due to 6 previous errors
|
2020-05-10 09:34:20 -05:00
|
|
|
|
2020-08-20 05:42:08 -05:00
|
|
|
Some errors have detailed explanations: E0277, E0308, E0599, E0609.
|
2020-05-30 09:57:12 -05:00
|
|
|
For more information about an error, try `rustc --explain E0277`.
|