21 lines
566 B
Rust
21 lines
566 B
Rust
// Test that we have enough false edges to avoid exposing the exact matching
|
|
// algorithm in borrow checking.
|
|
|
|
#![feature(nll)]
|
|
|
|
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 {
|
|
(false, true) => 1, //~ ERROR cannot use `y.1` because it was mutably borrowed
|
|
(true, _) => {
|
|
r;
|
|
2
|
|
}
|
|
(false, _) => 3,
|
|
};
|
|
}
|
|
|
|
fn main() {}
|