diff options
Diffstat (limited to 'src/test/ui/unsafe/ranged_ints3_const.rs')
| -rw-r--r-- | src/test/ui/unsafe/ranged_ints3_const.rs | 24 | 
1 files changed, 0 insertions, 24 deletions
| diff --git a/src/test/ui/unsafe/ranged_ints3_const.rs b/src/test/ui/unsafe/ranged_ints3_const.rs deleted file mode 100644 index 637198d3604..00000000000 --- a/src/test/ui/unsafe/ranged_ints3_const.rs +++ /dev/null @@ -1,24 +0,0 @@ -// revisions: mirunsafeck thirunsafeck -// [thirunsafeck]compile-flags: -Z thir-unsafeck - -#![feature(rustc_attrs)] - -use std::cell::Cell; - -#[rustc_layout_scalar_valid_range_start(1)] -#[repr(transparent)] -pub(crate) struct NonZero<T>(pub(crate) T); -fn main() {} - -const fn foo() -> NonZero<Cell<u32>> { - let mut x = unsafe { NonZero(Cell::new(1)) }; - let y = &x.0; //~ ERROR the borrowed element may contain interior mutability - //~^ ERROR borrow of layout constrained field with interior mutability - unsafe { NonZero(Cell::new(1)) } -} - -const fn bar() -> NonZero<Cell<u32>> { - let mut x = unsafe { NonZero(Cell::new(1)) }; - let y = unsafe { &x.0 }; //~ ERROR the borrowed element may contain interior mutability - unsafe { NonZero(Cell::new(1)) } -} | 
