summaryrefslogtreecommitdiffstats
path: root/src/test/ui/half-open-range-patterns/half-open-range-pats-syntactic-pass.rs
blob: 8bb98d3b5c56fd10480ea3db32cf1b02b9b89797 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
// check-pass

// Test the parsing of half-open ranges.

#![feature(exclusive_range_pattern)]
#![feature(half_open_range_patterns)]

fn main() {}

#[cfg(FALSE)]
fn syntax() {
    match scrutinee {
        X.. | 0.. | 'a'.. | 0.0f32.. => {}
        ..=X | ..X => {}
        ..=0 | ..0 => {}
        ..='a' | ..'a' => {}
        ..=0.0f32 | ..0.0f32 => {}
    }
}

fn syntax2() {
    macro_rules! mac {
        ($e:expr) => {
            match 0u8 { ..$e => {}, _ => {} }
            match 0u8 { ..=$e => {}, _ => {} }
            match 0u8 { $e.. => {}, _ => {} }
        }
    }
    mac!(42u8);
}