diff --git a/library/core/tests/slice.rs b/library/core/tests/slice.rs index 43e2af3eb18..c591dd3e1a6 100644 --- a/library/core/tests/slice.rs +++ b/library/core/tests/slice.rs @@ -1,5 +1,6 @@ use core::cell::Cell; use core::cmp::Ordering; +use core::mem::MaybeUninit; use core::result::Result::{Err, Ok}; #[test] @@ -2144,3 +2145,10 @@ fn test_slice_run_destructors() { assert_eq!(x.get(), 1); } + +#[test] +fn test_slice_fill_with_uninit() { + // This should not UB. See #87891 + let mut a = [MaybeUninit::::uninit(); 10]; + a.fill(MaybeUninit::uninit()); +}