fn free(opt_old_base: ?[*]align(alignment_bytes) u8) callconv(.c) void
fn free(opt_old_base: ?[*]align(alignment_bytes) u8) callconv(.c) void { const old_base = opt_old_base orelse return; const old_header: Header = .get(old_base); const old_size = old_header.size; const old_alignment = old_header.alignment; const old_alignment_bytes = old_alignment.toByteUnits(); const old_ptr = old_base - old_alignment_bytes; const old_slice = old_ptr[0 .. old_size + old_alignment_bytes]; vtable.free(no_context, old_slice, old_alignment, no_ra); }