error[E0506]: cannot assign to `fancy_num` because it is borrowed --> $DIR/E0506.rs:11:5 | LL | let fancy_ref = &fancy_num; | ---------- borrow of `fancy_num` occurs here LL | fancy_num = FancyNum { num: 6 }; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assignment to borrowed `fancy_num` occurs here ... LL | println!("Num: {}, Ref: {}", fancy_num.num, fancy_ref.num); | ------------- borrow later used here error: aborting due to previous error For more information about this error, try `rustc --explain E0506`.