rust/tests/ui/resolve/const-with-typo-in-pattern-...

46 lines
1.5 KiB
Rust

#![deny(unreachable_patterns)] //~ NOTE the lint level is defined here
#![allow(non_snake_case, non_upper_case_globals)]
mod x {
pub use std::env::consts::ARCH;
const X: i32 = 0; //~ NOTE there is a constant of the same name
}
fn main() {
let input: i32 = 42;
const god: i32 = 1;
const GOOD: i32 = 1;
const BAD: i32 = 2;
let name: i32 = 42; //~ NOTE there is a binding of the same name
match input {
X => {} //~ NOTE matches any value
_ => {} //~ ERROR unreachable pattern
//~^ NOTE no value can reach this
}
match input {
GOD => {} //~ HELP you might have meant to pattern match against the value of similarly named constant `god`
//~^ NOTE matches any value
_ => {} //~ ERROR unreachable pattern
//~^ NOTE no value can reach this
}
match input {
GOOOD => {} //~ HELP you might have meant to pattern match against the value of similarly named constant `GOOD`
//~^ NOTE matches any value
_ => {} //~ ERROR unreachable pattern
//~^ NOTE no value can reach this
}
match input {
name => {}
//~^ NOTE matches any value
_ => {} //~ ERROR unreachable pattern
//~^ NOTE no value can reach this
}
match "" {
ARCH => {} //~ HELP you might have meant to pattern match against the value of constant `ARCH`
//~^ NOTE matches any value
_ => {} //~ ERROR unreachable pattern
//~^ NOTE no value can reach this
}
}