Error code E0532
Pattern arm did not match expected kind.
Erroneous code example:
#![allow(unused)] fn main() { enum State { Succeeded, Failed(String), } fn print_on_failure(state: &State) { match *state { // error: expected unit struct, unit variant or constant, found tuple // variant `State::Failed` State::Failed => println!("Failed"), _ => () } } }
To fix this error, ensure the match arm kind is the same as the expression matched.
Fixed example:
#![allow(unused)] fn main() { enum State { Succeeded, Failed(String), } fn print_on_failure(state: &State) { match *state { State::Failed(ref msg) => println!("Failed with {}", msg), _ => () } } }