about summary refs log tree commit diff
path: root/tests/ui/array-slice-vec/vec-matching-autoslice.rs
diff options
context:
space:
mode:
Diffstat (limited to 'tests/ui/array-slice-vec/vec-matching-autoslice.rs')
-rw-r--r--tests/ui/array-slice-vec/vec-matching-autoslice.rs23
1 files changed, 23 insertions, 0 deletions
diff --git a/tests/ui/array-slice-vec/vec-matching-autoslice.rs b/tests/ui/array-slice-vec/vec-matching-autoslice.rs
new file mode 100644
index 00000000000..8179edf420c
--- /dev/null
+++ b/tests/ui/array-slice-vec/vec-matching-autoslice.rs
@@ -0,0 +1,23 @@
+// run-pass
+#![allow(illegal_floating_point_literal_pattern)] // FIXME #41620
+
+pub fn main() {
+    let x = [1, 2, 3];
+    match x {
+        [2, _, _] => panic!(),
+        [1, a, b] => {
+            assert_eq!([a, b], [2, 3]);
+        }
+        [_, _, _] => panic!(),
+    }
+
+    let y = ([(1, true), (2, false)], 0.5f64);
+    match y {
+        ([(1, a), (b, false)], _) => {
+            assert_eq!(a, true);
+            assert_eq!(b, 2);
+        }
+        ([_, _], 0.5) => panic!(),
+        ([_, _], _) => panic!(),
+    }
+}