Skip to content

Commit

Permalink
Review feedback: Added test with control flow merge of two borrows "b…
Browse files Browse the repository at this point in the history
…efore activation"

In reality the currently generated MIR has at least one of the activations
in a copy that occurs before the merge. But still, good to have a test,
in anticipation of that potentially changing...
  • Loading branch information
pnkfelix committed Dec 14, 2017
1 parent b0421fa commit d654cd3
Showing 1 changed file with 27 additions and 0 deletions.
@@ -0,0 +1,27 @@
// Copyright 2017 The Rust Project Developers. See the COPYRIGHT
// file at the top-level directory of this distribution and at
// http://rust-lang.org/COPYRIGHT.
//
// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
// option. This file may not be copied, modified, or distributed
// except according to those terms.

// revisions: lxl nll
//[lxl]compile-flags: -Z borrowck=mir -Z two-phase-borrows
//[nll]compile-flags: -Z borrowck=mir -Z two-phase-borrows -Z nll

fn main() {
let mut a = 0;
let mut b = 0;
let p = if maybe() {
&mut a
} else {
&mut b
};
use_(p);
}

fn maybe() -> bool { false }
fn use_<T>(_: T) { }

0 comments on commit d654cd3

Please sign in to comment.