| The number of elements in an array or slice pattern differed from the number of | |
| elements in the array being matched. | |
| Example of erroneous code: | |
| ```compile_fail,E0527 | |
| let r = &[1, 2, 3, 4]; | |
| match r { | |
| &[a, b] => { // error: pattern requires 2 elements but array | |
| // has 4 | |
| println!("a={}, b={}", a, b); | |
| } | |
| } | |
| ``` | |
| Ensure that the pattern is consistent with the size of the matched | |
| array. Additional elements can be matched with `..`: | |
| ``` | |
| let r = &[1, 2, 3, 4]; | |
| match r { | |
| &[a, b, ..] => { // ok! | |
| println!("a={}, b={}", a, b); | |
| } | |
| } | |
| ``` |