about summary refs log tree commit diff
path: root/tests/ui/reachable/unreachable-code-diverging-expressions.rs
blob: 00676418002c9847e2527b0761ca50c53834fca3 (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
31
32
33
34
35
36
37
38
39
//@ run-pass

#![allow(unused_must_use)]
#![allow(dead_code)]
#![allow(path_statements)]
#![allow(unreachable_code)]
#![allow(unused_variables)]
#![feature(if_let_guard)]

fn id(x: bool) -> bool {
    x
}

fn call_id() {
    let c = panic!();
    id(c);
}

fn call_id_2() {
    id(true) && id(return);
}

fn call_id_3() {
    id(return) && id(return);
}

fn ret_guard() {
    match 2 {
        x if (return) => {
            x;
        }
        x if let true = return => {
            x;
        }
        _ => {}
    }
}

pub fn main() {}