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/asm/inline-syntax.rs14
-rw-r--r--src/test/ui/asm/inline-syntax.stderr36
2 files changed, 50 insertions, 0 deletions
diff --git a/src/test/ui/asm/inline-syntax.rs b/src/test/ui/asm/inline-syntax.rs
new file mode 100644
index 00000000000..ec8ff071885
--- /dev/null
+++ b/src/test/ui/asm/inline-syntax.rs
@@ -0,0 +1,14 @@
+#![feature(asm, llvm_asm)]
+
+fn main() {
+    unsafe {
+        asm!(".intel_syntax noprefix", "nop");
+        //~^ ERROR intel sytnax is the default syntax
+        asm!(".intel_syntax aaa noprefix", "nop");
+        //~^ ERROR intel sytnax is the default syntax
+        asm!(".att_syntax noprefix", "nop");
+        //~^ ERROR using the .att_syntax directive may cause issues
+        asm!(".att_syntax bbb noprefix", "nop");
+        //~^ ERROR using the .att_syntax directive may cause issues
+    }
+}
diff --git a/src/test/ui/asm/inline-syntax.stderr b/src/test/ui/asm/inline-syntax.stderr
new file mode 100644
index 00000000000..bd792660c6a
--- /dev/null
+++ b/src/test/ui/asm/inline-syntax.stderr
@@ -0,0 +1,36 @@
+error: intel sytnax is the default syntax, and trying to use this directive may cause issues
+  --> $DIR/inline-syntax.rs:5:15
+   |
+LL |         asm!(".intel_syntax noprefix", "nop");
+   |               ^^^^^^^^^^^^^^^^^^^^^^ help: Remove this assembler directive
+
+error: intel sytnax is the default syntax, and trying to use this directive may cause issues
+  --> $DIR/inline-syntax.rs:7:15
+   |
+LL |         asm!(".intel_syntax aaa noprefix", "nop");
+   |               ^^^^^^^^^^^^^ help: Remove this assembler directive: `aaa noprefix`
+
+error: using the .att_syntax directive may cause issues, use the att_syntax option instead
+  --> $DIR/inline-syntax.rs:9:15
+   |
+LL |         asm!(".att_syntax noprefix", "nop");
+   |               ^^^^^^^^^^^^^^^^^^^^
+   |
+help: Remove the assembler directive and replace it with options(att_syntax)
+   |
+LL |         asm!("", "nop", options(att_syntax));
+   |              --       ^^^^^^^^^^^^^^^^^^^^^
+
+error: using the .att_syntax directive may cause issues, use the att_syntax option instead
+  --> $DIR/inline-syntax.rs:11:15
+   |
+LL |         asm!(".att_syntax bbb noprefix", "nop");
+   |               ^^^^^^^^^^^
+   |
+help: Remove the assembler directive and replace it with options(att_syntax)
+   |
+LL |         asm!(" bbb noprefix", "nop", options(att_syntax));
+   |              --                    ^^^^^^^^^^^^^^^^^^^^^
+
+error: aborting due to 4 previous errors
+