W3cubDocs

/Rust

Error code E0416

An identifier is bound more than once in a pattern.

Erroneous code example:

#![allow(unused)]
fn main() {
match (1, 2) {
    (x, x) => {} // error: identifier `x` is bound more than once in the
                 //        same pattern
}
}

Please verify you didn't misspell identifiers' name. Example:

#![allow(unused)]
fn main() {
match (1, 2) {
    (x, y) => {} // ok!
}
}

Or maybe did you mean to unify? Consider using a guard:

#![allow(unused)]
fn main() {
let (A, B, C) = (1, 2, 3);
match (A, B, C) {
    (x, x2, see) if x == x2 => { /* A and B are equal, do one thing */ }
    (y, z, see) => { /* A and B not equal; do another thing */ }
}
}

© 2010 The Rust Project Developers
Licensed under the Apache License, Version 2.0 or the MIT license, at your option.
https://doc.rust-lang.org/error_codes/E0416.html