// of the first element.
let elem_size = first.layout.size;
let first_ptr = first.ptr;
- let rest_ptr = first_ptr.ptr_offset(elem_size, self)?;
+ let rest_ptr = first_ptr.offset(elem_size, self)?;
self.memory.copy_repeatedly(
first_ptr,
first.align,
AddressOf(_, place) | Ref(_, _, place) => {
let src = self.eval_place(place)?;
let place = self.force_allocation(&src)?;
- if place.layout.size.bytes() > 0 {
- // definitely not a ZST
- assert!(place.ptr.is_ptr(), "non-ZST places should be normalized to `Pointer`");
- }
- self.write_immediate(place.to_ref(), &dest)?;
+ self.write_immediate(place.to_ref(self), &dest)?;
}
NullaryOp(mir::NullOp::Box, _) => {