summaryrefslogtreecommitdiffstats
path: root/tests/ui/match/match_non_exhaustive.stderr
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-17 12:19:13 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-17 12:19:13 +0000
commit218caa410aa38c29984be31a5229b9fa717560ee (patch)
treec54bd55eeb6e4c508940a30e94c0032fbd45d677 /tests/ui/match/match_non_exhaustive.stderr
parentReleasing progress-linux version 1.67.1+dfsg1-1~progress7.99u1. (diff)
downloadrustc-218caa410aa38c29984be31a5229b9fa717560ee.tar.xz
rustc-218caa410aa38c29984be31a5229b9fa717560ee.zip
Merging upstream version 1.68.2+dfsg1.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'tests/ui/match/match_non_exhaustive.stderr')
-rw-r--r--tests/ui/match/match_non_exhaustive.stderr56
1 files changed, 56 insertions, 0 deletions
diff --git a/tests/ui/match/match_non_exhaustive.stderr b/tests/ui/match/match_non_exhaustive.stderr
new file mode 100644
index 000000000..46ee8d517
--- /dev/null
+++ b/tests/ui/match/match_non_exhaustive.stderr
@@ -0,0 +1,56 @@
+error[E0004]: non-exhaustive patterns: `L::B` not covered
+ --> $DIR/match_non_exhaustive.rs:23:11
+ |
+LL | match l { L::A => () };
+ | ^ pattern `L::B` not covered
+ |
+note: `L` defined here
+ --> $DIR/match_non_exhaustive.rs:10:13
+ |
+LL | enum L { A, B }
+ | - ^ not covered
+ = note: the matched value is of type `L`
+help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
+ |
+LL | match l { L::A => (), L::B => todo!() };
+ | +++++++++++++++++
+
+error[E0004]: non-exhaustive patterns: type `E1` is non-empty
+ --> $DIR/match_non_exhaustive.rs:28:11
+ |
+LL | match e1 {};
+ | ^^
+ |
+note: `E1` defined here
+ --> $DIR/auxiliary/match_non_exhaustive_lib.rs:2:1
+ |
+LL | pub enum E1 {}
+ | ^^^^^^^^^^^
+ = note: the matched value is of type `E1`, which is marked as non-exhaustive
+help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern as shown
+ |
+LL ~ match e1 {
+LL + _ => todo!(),
+LL ~ };
+ |
+
+error[E0004]: non-exhaustive patterns: `_` not covered
+ --> $DIR/match_non_exhaustive.rs:30:11
+ |
+LL | match e2 { E2::A => (), E2::B => () };
+ | ^^ pattern `_` not covered
+ |
+note: `E2` defined here
+ --> $DIR/auxiliary/match_non_exhaustive_lib.rs:5:1
+ |
+LL | pub enum E2 { A, B }
+ | ^^^^^^^^^^^
+ = note: the matched value is of type `E2`, which is marked as non-exhaustive
+help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
+ |
+LL | match e2 { E2::A => (), E2::B => (), _ => todo!() };
+ | ++++++++++++++
+
+error: aborting due to 3 previous errors
+
+For more information about this error, try `rustc --explain E0004`.