E0416 - Error codes index
Description: Book listing all Rust error codes

## Keyboard shortcuts

Press `←` or `→` to navigate between chapters

Press `S` or `/` to search in the book

Press `?` to show this help

Press `Esc` to hide this help

# 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 */ }
    }
    }