Add a missing precondition check
This commit is contained in:
parent
5ffa67d730
commit
9b6791078a
@ -2,6 +2,7 @@
|
||||
use crate::convert::From;
|
||||
use crate::fmt;
|
||||
use crate::hash;
|
||||
use crate::intrinsics::assert_unsafe_precondition;
|
||||
use crate::marker::Unsize;
|
||||
use crate::mem::{self, MaybeUninit};
|
||||
use crate::num::NonZeroUsize;
|
||||
@ -195,7 +196,10 @@ impl<T: ?Sized> NonNull<T> {
|
||||
#[inline]
|
||||
pub const unsafe fn new_unchecked(ptr: *mut T) -> Self {
|
||||
// SAFETY: the caller must guarantee that `ptr` is non-null.
|
||||
unsafe { NonNull { pointer: ptr as _ } }
|
||||
unsafe {
|
||||
assert_unsafe_precondition!([T: ?Sized](ptr: *mut T) => !ptr.is_null());
|
||||
NonNull { pointer: ptr as _ }
|
||||
}
|
||||
}
|
||||
|
||||
/// Creates a new `NonNull` if `ptr` is non-null.
|
||||
|
Loading…
Reference in New Issue
Block a user