From 698f8c2f01ea549d77d7dc3338a12e04c11057b9 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Wed, 17 Apr 2024 14:02:58 +0200 Subject: Adding upstream version 1.64.0+dfsg1. Signed-off-by: Daniel Baumann --- src/test/ui/async-await/issue-61076.stderr | 82 ++++++++++++++++++++++++++++++ 1 file changed, 82 insertions(+) create mode 100644 src/test/ui/async-await/issue-61076.stderr (limited to 'src/test/ui/async-await/issue-61076.stderr') diff --git a/src/test/ui/async-await/issue-61076.stderr b/src/test/ui/async-await/issue-61076.stderr new file mode 100644 index 000000000..33839ea59 --- /dev/null +++ b/src/test/ui/async-await/issue-61076.stderr @@ -0,0 +1,82 @@ +error[E0277]: the `?` operator can only be applied to values that implement `Try` + --> $DIR/issue-61076.rs:42:5 + | +LL | foo()?; + | ^^^^^^ the `?` operator cannot be applied to type `impl Future>` + | + = help: the trait `Try` is not implemented for `impl Future>` +help: consider `await`ing on the `Future` + | +LL | foo().await?; + | ++++++ + +error[E0277]: the `?` operator can only be applied to values that implement `Try` + --> $DIR/issue-61076.rs:65:5 + | +LL | t?; + | ^^ the `?` operator cannot be applied to type `T` + | + = help: the trait `Try` is not implemented for `T` +help: consider `await`ing on the `Future` + | +LL | t.await?; + | ++++++ + +error[E0609]: no field `0` on type `impl Future` + --> $DIR/issue-61076.rs:74:26 + | +LL | let _: i32 = tuple().0; + | ^ 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; + | ++++++ + +error[E0609]: no field `a` on type `impl Future` + --> $DIR/issue-61076.rs:78:28 + | +LL | let _: i32 = struct_().a; + | ^ 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; + | ++++++ + +error[E0599]: no method named `method` found for opaque type `impl Future` in the current scope + --> $DIR/issue-61076.rs:82:15 + | +LL | struct_().method(); + | ^^^^^^ method not found in `impl Future` + | +help: consider `await`ing on the `Future` and calling the method on its `Output` + | +LL | struct_().await.method(); + | ++++++ + +error[E0308]: mismatched types + --> $DIR/issue-61076.rs:91:9 + | +LL | match tuple() { + | ------- this expression has type `impl Future` +LL | +LL | Tuple(_) => {} + | ^^^^^^^^ expected opaque type, found struct `Tuple` + | +note: while checking the return type of the `async fn` + --> $DIR/issue-61076.rs:56:21 + | +LL | async fn tuple() -> Tuple { + | ^^^^^ checked the `Output` of this `async fn`, expected opaque type + = note: expected opaque type `impl Future` + found struct `Tuple` +help: consider `await`ing on the `Future` + | +LL | match tuple().await { + | ++++++ + +error: aborting due to 6 previous errors + +Some errors have detailed explanations: E0277, E0308, E0599, E0609. +For more information about an error, try `rustc --explain E0277`. -- cgit v1.2.3