about summary refs log tree commit diff
path: root/tests/ui/pattern/ignore-all-the-things.rs
diff options
context:
space:
mode:
authorAlbert Larsan <74931857+albertlarsan68@users.noreply.github.com>2023-01-05 09:13:28 +0100
committerAlbert Larsan <74931857+albertlarsan68@users.noreply.github.com>2023-01-11 09:32:08 +0000
commitcf2dff2b1e3fa55fa5415d524200070d0d7aacfe (patch)
tree40a88d9a46aaf3e8870676eb2538378b75a263eb /tests/ui/pattern/ignore-all-the-things.rs
parentca855e6e42787ecd062d81d53336fe6788ef51a9 (diff)
downloadrust-cf2dff2b1e3fa55fa5415d524200070d0d7aacfe.tar.gz
rust-cf2dff2b1e3fa55fa5415d524200070d0d7aacfe.zip
Move /src/test to /tests
Diffstat (limited to 'tests/ui/pattern/ignore-all-the-things.rs')
-rw-r--r--tests/ui/pattern/ignore-all-the-things.rs44
1 files changed, 44 insertions, 0 deletions
diff --git a/tests/ui/pattern/ignore-all-the-things.rs b/tests/ui/pattern/ignore-all-the-things.rs
new file mode 100644
index 00000000000..5980e1a857f
--- /dev/null
+++ b/tests/ui/pattern/ignore-all-the-things.rs
@@ -0,0 +1,44 @@
+// run-pass
+
+#![allow(non_shorthand_field_patterns)]
+#![allow(dead_code)]
+#![allow(unused_variables)]
+
+struct Foo(isize, isize, isize, isize);
+struct Bar{a: isize, b: isize, c: isize, d: isize}
+
+pub fn main() {
+    let Foo(..) = Foo(5, 5, 5, 5);
+    let Foo(..) = Foo(5, 5, 5, 5);
+    let Bar{..} = Bar{a: 5, b: 5, c: 5, d: 5};
+    let (..) = (5, 5, 5, 5);
+    let Foo(a, b, ..) = Foo(5, 5, 5, 5);
+    let Foo(.., d) = Foo(5, 5, 5, 5);
+    let (a, b, ..) = (5, 5, 5, 5);
+    let (.., c, d) = (5, 5, 5, 5);
+    let Bar{b: b, ..} = Bar{a: 5, b: 5, c: 5, d: 5};
+    match [5, 5, 5, 5] {
+        [..] => { }
+    }
+    match [5, 5, 5, 5] {
+        [a, ..] => { }
+    }
+    match [5, 5, 5, 5] {
+        [.., b] => { }
+    }
+    match [5, 5, 5, 5] {
+        [a, .., b] => { }
+    }
+    match [5, 5, 5] {
+        [..] => { }
+    }
+    match [5, 5, 5] {
+        [a, ..] => { }
+    }
+    match [5, 5, 5] {
+        [.., a] => { }
+    }
+    match [5, 5, 5] {
+        [a, .., b] => { }
+    }
+}