error[E0502]: cannot borrow `v` as mutable because it is also borrowed as immutable
  --> $DIR/two-phase-reservation-sharing-interference-2.rs:18:5
   |
LL |     let shared = &v;
   |                  -- immutable borrow occurs here
LL | 
LL |     v.extend(shared);
   |     ^        ------ immutable borrow later used here
   |     |
   |     mutable borrow occurs here

error[E0502]: cannot borrow `v` as mutable because it is also borrowed as immutable
  --> $DIR/two-phase-reservation-sharing-interference-2.rs:28:5
   |
LL |     v.extend(&v);
   |     ^^------^--^
   |     | |      |
   |     | |      immutable borrow occurs here
   |     | immutable borrow later used by call
   |     mutable borrow occurs here

error[E0502]: cannot borrow `v` as mutable because it is also borrowed as immutable
  --> $DIR/two-phase-reservation-sharing-interference-2.rs:39:5
   |
LL |     let shared = &v;
   |                  -- immutable borrow occurs here
LL | 
LL |     v.push(shared.len());
   |     ^      ------ immutable borrow later used here
   |     |
   |     mutable borrow occurs here

error: aborting due to 3 previous errors

For more information about this error, try `rustc --explain E0502`.