### What it does Checks for bindings that shadow other bindings already in scope, while just changing reference level or mutability. ### Why is this bad? Not much, in fact it's a very common pattern in Rust code. Still, some may opt to avoid it in their code base, they can set this lint to `Warn`. ### Example ``` let x = &x; ``` Use instead: ``` let y = &x; // use different variable name ```