this is required as otherwise drops of `&mut` refs count as a usage of a 'two-phase temporary' causing an ICE.