diff options
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/ui/consts/unsafe_cell_in_const.rs | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/tests/ui/consts/unsafe_cell_in_const.rs b/tests/ui/consts/unsafe_cell_in_const.rs new file mode 100644 index 00000000000..b867ae1ba9f --- /dev/null +++ b/tests/ui/consts/unsafe_cell_in_const.rs @@ -0,0 +1,15 @@ +//! Ensure we do not complain about zero-sized `UnsafeCell` in a const in any form. +//! See <https://github.com/rust-lang/rust/issues/142948>. + +//@ check-pass +use std::cell::UnsafeCell; + +const X1: &mut UnsafeCell<[i32; 0]> = UnsafeCell::from_mut(&mut []); + +const X2: &mut UnsafeCell<[i32]> = UnsafeCell::from_mut(&mut []); + +trait Trait {} +impl Trait for [i32; 0] {} +const X3: &mut UnsafeCell<dyn Trait> = UnsafeCell::from_mut(&mut []); + +fn main() {} |
