Error code E0529

An array or slice pattern was matched against some other type.

Example of erroneous code:

#![allow(unused)]
fn main() {
let r: f32 = 1.0;
match r {
    [a, b] => { // error: expected an array or slice, found `f32`
        println!("a={}, b={}", a, b);
    }
}
}

Ensure that the pattern and the expression being matched on are of consistent types:

#![allow(unused)]
fn main() {
let r = [1.0, 2.0];
match r {
    [a, b] => { // ok!
        println!("a={}, b={}", a, b);
    }
}
}