about summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/test/ui/consts/miri_unleashed/inline_asm.rs14
-rw-r--r--src/test/ui/consts/miri_unleashed/inline_asm.stderr11
2 files changed, 25 insertions, 0 deletions
diff --git a/src/test/ui/consts/miri_unleashed/inline_asm.rs b/src/test/ui/consts/miri_unleashed/inline_asm.rs
new file mode 100644
index 00000000000..f5613102562
--- /dev/null
+++ b/src/test/ui/consts/miri_unleashed/inline_asm.rs
@@ -0,0 +1,14 @@
+// compile-flags: -Zunleash-the-miri-inside-of-you
+// only-x86_64
+#![feature(llvm_asm)]
+#![allow(const_err)]
+
+fn main() {}
+
+// Make sure we catch executing inline assembly.
+static TEST_BAD: () = {
+    unsafe { llvm_asm!("xor %eax, %eax" ::: "eax"); }
+    //~^ ERROR could not evaluate static initializer
+    //~| NOTE in this expansion of llvm_asm!
+    //~| NOTE inline assembly is not supported
+};
diff --git a/src/test/ui/consts/miri_unleashed/inline_asm.stderr b/src/test/ui/consts/miri_unleashed/inline_asm.stderr
new file mode 100644
index 00000000000..3cbdd326c82
--- /dev/null
+++ b/src/test/ui/consts/miri_unleashed/inline_asm.stderr
@@ -0,0 +1,11 @@
+error[E0080]: could not evaluate static initializer
+  --> $DIR/inline_asm.rs:10:14
+   |
+LL |     unsafe { llvm_asm!("xor %eax, %eax" ::: "eax"); }
+   |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ inline assembly is not supported
+   |
+   = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
+
+error: aborting due to previous error
+
+For more information about this error, try `rustc --explain E0080`.