summaryrefslogtreecommitdiffstats
path: root/src/test/ui/match/issue-42679.rs
blob: 596309f25683349fc14ba1841a2a34e2a4df52ca (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
// run-pass
#![feature(box_syntax)]
#![feature(box_patterns)]

#[derive(Debug, PartialEq)]
enum Test {
    Foo(usize),
    Bar(isize),
}

fn main() {
    let a = box Test::Foo(10);
    let b = box Test::Bar(-20);
    match (a, b) {
        (_, box Test::Foo(_)) => unreachable!(),
        (box Test::Foo(x), b) => {
            assert_eq!(x, 10);
            assert_eq!(b, box Test::Bar(-20));
        },
        _ => unreachable!(),
    }
}