summaryrefslogtreecommitdiffstats
path: root/tests/ui/suggestions/match-prev-arm-needing-semi.stderr
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-17 12:18:58 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-17 12:18:58 +0000
commita4b7ed7a42c716ab9f05e351f003d589124fd55d (patch)
treeb620cd3f223850b28716e474e80c58059dca5dd4 /tests/ui/suggestions/match-prev-arm-needing-semi.stderr
parentAdding upstream version 1.67.1+dfsg1. (diff)
downloadrustc-a4b7ed7a42c716ab9f05e351f003d589124fd55d.tar.xz
rustc-a4b7ed7a42c716ab9f05e351f003d589124fd55d.zip
Adding upstream version 1.68.2+dfsg1.upstream/1.68.2+dfsg1
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'tests/ui/suggestions/match-prev-arm-needing-semi.stderr')
-rw-r--r--tests/ui/suggestions/match-prev-arm-needing-semi.stderr127
1 files changed, 127 insertions, 0 deletions
diff --git a/tests/ui/suggestions/match-prev-arm-needing-semi.stderr b/tests/ui/suggestions/match-prev-arm-needing-semi.stderr
new file mode 100644
index 000000000..8d735b71f
--- /dev/null
+++ b/tests/ui/suggestions/match-prev-arm-needing-semi.stderr
@@ -0,0 +1,127 @@
+error[E0308]: `match` arms have incompatible types
+ --> $DIR/match-prev-arm-needing-semi.rs:35:18
+ |
+LL | let _ = match true {
+ | _____________-
+LL | | true => {
+LL | | async_dummy();
+ | | -------------- this is found to be of type `()`
+LL | |
+LL | | }
+LL | | false => async_dummy(),
+ | | ^^^^^^^^^^^^^ expected `()`, found opaque type
+... |
+LL | |
+LL | | };
+ | |_____- `match` arms have incompatible types
+ |
+note: while checking the return type of the `async fn`
+ --> $DIR/match-prev-arm-needing-semi.rs:16:24
+ |
+LL | async fn async_dummy() {}
+ | ^ checked the `Output` of this `async fn`, found opaque type
+ = note: expected unit type `()`
+ found opaque type `impl Future<Output = ()>`
+help: consider `await`ing on the `Future`
+ |
+LL | false => async_dummy().await,
+ | ++++++
+help: consider removing this semicolon
+ |
+LL - async_dummy();
+LL + async_dummy()
+ |
+
+error[E0308]: `match` arms have incompatible types
+ --> $DIR/match-prev-arm-needing-semi.rs:48:18
+ |
+LL | let _ = match true {
+ | _____________-
+LL | | true => {
+LL | | async_dummy();
+ | | -------------- this is found to be of type `()`
+LL | |
+LL | | }
+LL | | false => async_dummy2(),
+ | | ^^^^^^^^^^^^^^ expected `()`, found opaque type
+... |
+LL | |
+LL | | };
+ | |_____- `match` arms have incompatible types
+ |
+note: while checking the return type of the `async fn`
+ --> $DIR/match-prev-arm-needing-semi.rs:22:25
+ |
+LL | async fn async_dummy2() {}
+ | ^ checked the `Output` of this `async fn`, found opaque type
+ = note: expected unit type `()`
+ found opaque type `impl Future<Output = ()>`
+help: consider `await`ing on the `Future`
+ |
+LL | false => async_dummy2().await,
+ | ++++++
+help: consider removing this semicolon and boxing the expressions
+ |
+LL ~ Box::new(async_dummy())
+LL |
+LL | }
+LL ~ false => Box::new(async_dummy2()),
+ |
+
+error[E0308]: `match` arms have incompatible types
+ --> $DIR/match-prev-arm-needing-semi.rs:59:18
+ |
+LL | let _ = match true {
+ | _____________-
+LL | | true => async_dummy(),
+ | | ------------- this is found to be of type `impl Future<Output = ()>`
+LL | |
+LL | | false => async_dummy2(),
+ | | ^^^^^^^^^^^^^^ expected opaque type, found a different opaque type
+... |
+LL | |
+LL | | };
+ | |_____- `match` arms have incompatible types
+ |
+note: while checking the return type of the `async fn`
+ --> $DIR/match-prev-arm-needing-semi.rs:16:24
+ |
+LL | async fn async_dummy() {}
+ | ^ checked the `Output` of this `async fn`, expected opaque type
+note: while checking the return type of the `async fn`
+ --> $DIR/match-prev-arm-needing-semi.rs:22:25
+ |
+LL | async fn async_dummy2() {}
+ | ^ checked the `Output` of this `async fn`, found opaque type
+ = note: expected opaque type `impl Future<Output = ()>` (opaque type at <$DIR/match-prev-arm-needing-semi.rs:16:24>)
+ found opaque type `impl Future<Output = ()>` (opaque type at <$DIR/match-prev-arm-needing-semi.rs:22:25>)
+ = note: distinct uses of `impl Trait` result in different opaque types
+help: consider `await`ing on both `Future`s
+ |
+LL ~ true => async_dummy().await,
+LL |
+LL ~ false => async_dummy2().await,
+ |
+
+error[E0308]: `match` arms have incompatible types
+ --> $DIR/match-prev-arm-needing-semi.rs:11:18
+ |
+LL | let _ = match true {
+ | _____________-
+LL | | true => {
+LL | | dummy();
+ | | --------
+ | | | |
+ | | | help: consider removing this semicolon
+ | | this is found to be of type `()`
+LL | |
+LL | | }
+LL | | false => dummy(),
+ | | ^^^^^^^ expected `()`, found `i32`
+LL | |
+LL | | };
+ | |_____- `match` arms have incompatible types
+
+error: aborting due to 4 previous errors
+
+For more information about this error, try `rustc --explain E0308`.