]> git.proxmox.com Git - rustc.git/blame - src/test/ui/pattern/ignore-all-the-things.rs
New upstream version 1.67.1+dfsg1
[rustc.git] / src / test / ui / pattern / ignore-all-the-things.rs
CommitLineData
416331ca
XL
1// run-pass
2
0bf4aa26
XL
3#![allow(non_shorthand_field_patterns)]
4#![allow(dead_code)]
5#![allow(unused_variables)]
1a4d82fc 6
c34b1796
AL
7struct Foo(isize, isize, isize, isize);
8struct Bar{a: isize, b: isize, c: isize, d: isize}
1a4d82fc
JJ
9
10pub fn main() {
11 let Foo(..) = Foo(5, 5, 5, 5);
12 let Foo(..) = Foo(5, 5, 5, 5);
13 let Bar{..} = Bar{a: 5, b: 5, c: 5, d: 5};
0531ce1d
XL
14 let (..) = (5, 5, 5, 5);
15 let Foo(a, b, ..) = Foo(5, 5, 5, 5);
16 let Foo(.., d) = Foo(5, 5, 5, 5);
17 let (a, b, ..) = (5, 5, 5, 5);
18 let (.., c, d) = (5, 5, 5, 5);
1a4d82fc 19 let Bar{b: b, ..} = Bar{a: 5, b: 5, c: 5, d: 5};
85aaf69f 20 match [5, 5, 5, 5] {
1a4d82fc
JJ
21 [..] => { }
22 }
85aaf69f 23 match [5, 5, 5, 5] {
1a4d82fc
JJ
24 [a, ..] => { }
25 }
85aaf69f 26 match [5, 5, 5, 5] {
1a4d82fc
JJ
27 [.., b] => { }
28 }
85aaf69f 29 match [5, 5, 5, 5] {
1a4d82fc
JJ
30 [a, .., b] => { }
31 }
85aaf69f 32 match [5, 5, 5] {
1a4d82fc
JJ
33 [..] => { }
34 }
85aaf69f 35 match [5, 5, 5] {
1a4d82fc
JJ
36 [a, ..] => { }
37 }
85aaf69f 38 match [5, 5, 5] {
1a4d82fc
JJ
39 [.., a] => { }
40 }
85aaf69f 41 match [5, 5, 5] {
1a4d82fc
JJ
42 [a, .., b] => { }
43 }
44}