summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--tests/ui/enum-discriminant/issue-104519.rs10
-rw-r--r--tests/ui/enum-discriminant/issue-61696.rs (renamed from tests/ui/issues/issue-61696.rs)21
2 files changed, 16 insertions, 15 deletions
diff --git a/tests/ui/enum-discriminant/issue-104519.rs b/tests/ui/enum-discriminant/issue-104519.rs
index c4630f76b3a..507c0988fcc 100644
--- a/tests/ui/enum-discriminant/issue-104519.rs
+++ b/tests/ui/enum-discriminant/issue-104519.rs
@@ -23,14 +23,4 @@ fn some_match(result: OpenResult) -> u8 {
fn main() {
let result = OpenResult::Ok(());
assert_eq!(some_match(result), 0);
-
- let result = OpenResult::Ok(());
- match result {
- OpenResult::Ok(()) => (),
- _ => unreachable!("message a"),
- }
- match result {
- OpenResult::Ok(()) => (),
- _ => unreachable!("message b"),
- }
}
diff --git a/tests/ui/issues/issue-61696.rs b/tests/ui/enum-discriminant/issue-61696.rs
index dca52927fd7..8a633a916c8 100644
--- a/tests/ui/issues/issue-61696.rs
+++ b/tests/ui/enum-discriminant/issue-61696.rs
@@ -55,12 +55,23 @@ pub enum E2<X> {
V4,
}
-fn main() {
- if let E1::V2 { .. } = (E1::V1 { f: true }) {
- unreachable!()
+#[inline(never)]
+fn match_e1(y: E1) -> u8 {
+ match y {
+ E1::V2 { .. } => 1,
+ _ => 0,
}
+}
- if let E2::V1 { .. } = E2::V3::<Infallible> {
- unreachable!()
+#[inline(never)]
+fn match_e2(y: E2<Infallible>) -> u8 {
+ match y {
+ E2::V1 { .. } => 1,
+ _ => 0,
}
}
+
+fn main() {
+ assert_eq!(match_e1(E1::V1 { f: true }), 0);
+ assert_eq!(match_e2(E2::V3), 0);
+}