about summary refs log tree commit diff
path: root/tests/ui/cmse-nonsecure/cmse-nonsecure-call/gate_test.rs
diff options
context:
space:
mode:
Diffstat (limited to 'tests/ui/cmse-nonsecure/cmse-nonsecure-call/gate_test.rs')
-rw-r--r--tests/ui/cmse-nonsecure/cmse-nonsecure-call/gate_test.rs11
1 files changed, 11 insertions, 0 deletions
diff --git a/tests/ui/cmse-nonsecure/cmse-nonsecure-call/gate_test.rs b/tests/ui/cmse-nonsecure/cmse-nonsecure-call/gate_test.rs
new file mode 100644
index 00000000000..e05dbf3bbc4
--- /dev/null
+++ b/tests/ui/cmse-nonsecure/cmse-nonsecure-call/gate_test.rs
@@ -0,0 +1,11 @@
+// gate-test-abi_c_cmse_nonsecure_call
+fn main() {
+    let non_secure_function = unsafe {
+        core::mem::transmute::<usize, extern "C-cmse-nonsecure-call" fn(i32, i32, i32, i32) -> i32>(
+        //~^ ERROR [E0658]
+            0x10000004,
+        )
+    };
+    let mut toto = 5;
+    toto += non_secure_function(toto, 2, 3, 5);
+}