From: Philip Herron <philip.her...@embecosm.com>

see:
https://blog.rust-lang.org/2022/09/15/const-eval-safety-rule-revision.html

gcc/testsuite/ChangeLog:

        * rust/compile/rust-const-blog-issue.rs: New test.

Tested on x86_64-pc-linux-gnu, committed on master.

---
 gcc/testsuite/rust/compile/rust-const-blog-issue.rs | 12 ++++++++++++
 1 file changed, 12 insertions(+)
 create mode 100644 gcc/testsuite/rust/compile/rust-const-blog-issue.rs

diff --git a/gcc/testsuite/rust/compile/rust-const-blog-issue.rs 
b/gcc/testsuite/rust/compile/rust-const-blog-issue.rs
new file mode 100644
index 00000000000..a5ea2ebacb9
--- /dev/null
+++ b/gcc/testsuite/rust/compile/rust-const-blog-issue.rs
@@ -0,0 +1,12 @@
+// { dg-excess-errors "accessing value of"  }
+mod mem {
+    extern "rust-intrinsic" {
+        #[rustc_const_stable(feature = "const_transmute", since = "1.46.0")]
+        fn transmute<T, U>(_: T) -> U;
+    }
+}
+
+pub static FOO: () = unsafe {
+    let illegal_ptr2int: usize = mem::transmute(&());
+    let _copy = illegal_ptr2int;
+};
-- 
2.39.1

Reply via email to