// In expression, `&a..=b` is treated as `(&a)..=(b)` and `box a..=b` is // `(box a)..=(b)`. In a pattern, however, `&a..=b` means `&(a..=b)`. This may // lead to confusion. // run-rustfix #![warn(ellipsis_inclusive_range_patterns)] pub fn main() { match &12 { &(0..=9) => {} //~^ WARN `...` range patterns are deprecated //~| WARN this was previously accepted by the compiler //~| HELP use `..=` for an inclusive range &(10 ..=15) => {} //~^ ERROR the range pattern here has ambiguous interpretation //~| HELP add parentheses to clarify the precedence &(16..=20) => {} _ => {} } }