2019-12-11 09:04:34 +00:00
|
|
|
// Test `X...` and `X..=` range patterns not being allowed syntactically.
|
|
|
|
// FIXME(Centril): perhaps these should be semantic restrictions.
|
|
|
|
|
|
|
|
fn main() {}
|
|
|
|
|
|
|
|
#[cfg(FALSE)]
|
|
|
|
fn foo() {
|
|
|
|
if let 0... = 1 {} //~ ERROR inclusive range with no end
|
|
|
|
if let 0..= = 1 {} //~ ERROR inclusive range with no end
|
|
|
|
const X: u8 = 0;
|
|
|
|
if let X... = 1 {} //~ ERROR inclusive range with no end
|
|
|
|
if let X..= = 1 {} //~ ERROR inclusive range with no end
|
|
|
|
}
|
2020-01-11 05:49:43 +00:00
|
|
|
|
|
|
|
fn bar() {
|
|
|
|
macro_rules! mac {
|
|
|
|
($e:expr) => {
|
|
|
|
let $e...; //~ ERROR inclusive range with no end
|
2024-02-01 22:45:00 +00:00
|
|
|
//~^ ERROR: refutable pattern
|
2020-01-11 05:49:43 +00:00
|
|
|
let $e..=; //~ ERROR inclusive range with no end
|
2024-02-01 22:45:00 +00:00
|
|
|
//~^ ERROR: refutable pattern
|
2020-01-11 05:49:43 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
mac!(0);
|
|
|
|
}
|