aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorPhilip Herron <philip.herron@embecosm.com>2022-09-18 10:37:06 +0100
committerPhilip Herron <philip.herron@embecosm.com>2022-09-18 10:37:35 +0100
commit5f01d6c53734802955568771e75df68ffc2fd0d8 (patch)
tree4f78124e43846c0dfb272858ed60cc681236a140 /gcc
parenta6bb21fca5b9ad5cadcaa6a3dba481972ce0ed7e (diff)
downloadgcc-5f01d6c53734802955568771e75df68ffc2fd0d8.zip
gcc-5f01d6c53734802955568771e75df68ffc2fd0d8.tar.gz
gcc-5f01d6c53734802955568771e75df68ffc2fd0d8.tar.bz2
Add testcase for const-eval issue from rust-blog
see: https://blog.rust-lang.org/2022/09/15/const-eval-safety-rule-revision.html
Diffstat (limited to 'gcc')
-rw-r--r--gcc/testsuite/rust/compile/rust-const-blog-issue.rs12
1 files changed, 12 insertions, 0 deletions
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 0000000..a5ea2eb
--- /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;
+};