| trait Zero { | |
| const ZERO: Self; | |
| } | |
| impl Zero for String { | |
| const ZERO: Self = String::new(); | |
| } | |
| fn foo() { | |
| match String::new() { | |
| Zero::ZERO ..= Zero::ZERO => {}, | |
| //~^ ERROR only `char` and numeric types are allowed in range patterns | |
| _ => {}, | |
| } | |
| } | |
| fn bar() { | |
| match Zero::ZERO { | |
| Zero::ZERO ..= Zero::ZERO => {}, | |
| //~^ ERROR type annotations needed [E0282] | |
| _ => {}, | |
| } | |
| } | |
| fn main() { | |
| foo(); | |
| bar(); | |
| } |