Auto merge of #62823 - RalfJung:miri, r=oli-obk
update Miri Fixes https://github.com/rust-lang/rust/issues/62802 r? @oli-obk @eddyb
This commit is contained in:
commit
299ef86e1f
@ -1333,6 +1333,7 @@ pub(crate) fn is_aligned_and_not_null<T>(ptr: *const T) -> bool {
|
||||
|
||||
/// Checks whether the regions of memory starting at `src` and `dst` of size
|
||||
/// `count * size_of::<T>()` overlap.
|
||||
#[cfg(not(miri))] // Cannot compare with `>` across allocations in Miri
|
||||
fn overlaps<T>(src: *const T, dst: *const T, count: usize) -> bool {
|
||||
let src_usize = src as usize;
|
||||
let dst_usize = dst as usize;
|
||||
@ -1437,6 +1438,7 @@ pub unsafe fn copy_nonoverlapping<T>(src: *const T, dst: *mut T, count: usize) {
|
||||
|
||||
debug_assert!(is_aligned_and_not_null(src), "attempt to copy from unaligned or null pointer");
|
||||
debug_assert!(is_aligned_and_not_null(dst), "attempt to copy to unaligned or null pointer");
|
||||
#[cfg(not(miri))]
|
||||
debug_assert!(!overlaps(src, dst, count), "attempt to copy to overlapping memory");
|
||||
copy_nonoverlapping(src, dst, count)
|
||||
}
|
||||
|
@ -1 +1 @@
|
||||
Subproject commit b5ddc94bf02c641e5acbb08ae742014f40347f10
|
||||
Subproject commit b269bb07078446c9c153e0f2acaf83bf8f19b935
|
Loading…
Reference in New Issue
Block a user