File tree Expand file tree Collapse file tree 1 file changed +16
-0
lines changed
Expand file tree Collapse file tree 1 file changed +16
-0
lines changed Original file line number Diff line number Diff line change @@ -1554,6 +1554,22 @@ where
15541554 _ => panic ! ( ) ,
15551555 } ,
15561556 Object :: FieldUnit ( field) => self . do_field_write ( field, object) ?,
1557+ Object :: Reference { kind, inner } => {
1558+ match kind {
1559+ ReferenceKind :: RefOf => todo ! ( ) ,
1560+ ReferenceKind :: LocalOrArg => {
1561+ if let Object :: Reference { kind : inner_kind, inner : inner_inner } = & * * inner {
1562+ // TODO: this should store into the reference, potentially doing an
1563+ // implicit cast
1564+ todo ! ( )
1565+ } else {
1566+ // Overwrite the value
1567+ * inner. gain_mut ( ) = object. gain_mut ( ) . clone ( ) ;
1568+ }
1569+ }
1570+ ReferenceKind :: Unresolved => todo ! ( ) ,
1571+ }
1572+ }
15571573 Object :: Debug => {
15581574 self . handler . handle_debug ( & * object) ;
15591575 }
You can’t perform that action at this time.
0 commit comments