]> git.proxmox.com Git - rustc.git/blame - src/test/ui/borrowck/two-phase-reservation-sharing-interference-2.rs
New upstream version 1.63.0+dfsg1
[rustc.git] / src / test / ui / borrowck / two-phase-reservation-sharing-interference-2.rs
CommitLineData
04454e1e
FG
1// Test for #56254. The last example originally failed with the ast checker, was
2// accidentally allowed under migrate/nll, then linted against in migrate mode
3// but disallowed under NLL. Now, we accept it everywhere.
532ac7d7 4
416331ca 5//ignore-compare-mode-polonius
532ac7d7 6
532ac7d7
XL
7fn double_conflicts() {
8 let mut v = vec![0, 1, 2];
9 let shared = &v;
10
11 v.extend(shared);
923072b8 12 //~^ ERROR cannot borrow `v` as mutable
532ac7d7
XL
13}
14
15fn activation_conflict() {
16 let mut v = vec![0, 1, 2];
17
18 v.extend(&v);
923072b8 19 //~^ ERROR cannot borrow `v` as mutable
532ac7d7
XL
20}
21
04454e1e 22fn reservation_allowed() {
ff7c6d11
XL
23 let mut v = vec![0, 1, 2];
24 let shared = &v;
25
26 v.push(shared.len());
ff7c6d11 27}
532ac7d7
XL
28
29fn main() {}