summaryrefslogtreecommitdiffstats
path: root/tests/ui/nll/match-cfg-fake-edges2.rs
blob: 48f95e03b78caf95572ec5e34650bc0fce9ac440 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
// Test that we have enough false edges to avoid exposing the exact matching
// algorithm in borrow checking.

fn all_previous_tests_may_be_done(y: &mut (bool, bool)) {
    let r = &mut y.1;
    // We don't actually test y.1 to select the second arm, but we don't want
    // borrowck results to be based on the order we match patterns.
    match y { //~ ERROR cannot use `y.1` because it was mutably borrowed
        (false, true) => 1,
        (true, _) => {
            r;
            2
        }
        (false, _) => 3,
    };
}

fn main() {}