Using underscores for type annotation does not change the semantics of the code and adds unnecessary noise, reducing readability. The underscore can simply be omitted as the type of the variable would still be inferred from context by default.
fn foo() {
let a: _ = 0;
}
fn foo() {
let a = 0;
}