error[E0506]: cannot assign to `self.container.container_field` because it is borrowed
  --> $DIR/issue-81365-3.rs:32:9
   |
LL |         let first = &self.target_field;
   |                      ---- `self.container.container_field` is borrowed here
LL |         self.container.container_field = true;
   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `self.container.container_field` is assigned to here but it was already borrowed
LL |         first;
   |         ----- borrow later used here
   |
   = note: borrow occurs due to deref coercion to `Container`
note: deref defined here
  --> $DIR/issue-81365-3.rs:23:5
   |
LL |     type Target = Container;
   |     ^^^^^^^^^^^

error: aborting due to previous error

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