diff options
| author | Jakob Degen <jakob.e.degen@gmail.com> | 2023-04-04 23:07:10 -0700 |
|---|---|---|
| committer | Jakob Degen <jakob.e.degen@gmail.com> | 2023-04-09 18:16:05 -0700 |
| commit | d8ed2fb0bb8aecfe7622134d5aba7b670056ee6d (patch) | |
| tree | c10cddebea0da6ff86bf56c8b274176f2a7e0d2f /tests | |
| parent | 696aaad58c57a589f6fb2ecff5bae2eec581cb71 (diff) | |
| download | rust-d8ed2fb0bb8aecfe7622134d5aba7b670056ee6d.tar.gz rust-d8ed2fb0bb8aecfe7622134d5aba7b670056ee6d.zip | |
Fix transmute intrinsic mir validation ICE
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/ui/mir/validate/transmute_cast_sized.rs | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/tests/ui/mir/validate/transmute_cast_sized.rs b/tests/ui/mir/validate/transmute_cast_sized.rs new file mode 100644 index 00000000000..eaaf7eb3ecd --- /dev/null +++ b/tests/ui/mir/validate/transmute_cast_sized.rs @@ -0,0 +1,17 @@ +// build-pass +// compile-flags: -Zvalidate-mir +// edition: 2021 + +#![crate_type = "lib"] + +// Use `PhantomData` to get target-independent size +async fn get(_r: std::marker::PhantomData<&i32>) { + loop {} +} + +pub fn check() { + let mut v = get(loop {}); + let _ = || unsafe { + v = std::mem::transmute([0_u8; 1]); + }; +} |
