about summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
authorvarkor <github@varkor.com>2019-02-25 23:56:10 +0000
committervarkor <github@varkor.com>2019-03-12 18:34:43 +0000
commit295b6fd0f77c3c63c9bdfcec16e603749e21bc2f (patch)
tree20310e5f4ee9ff4e8fa47c1f35a59c998164b648 /src
parente3297e7ce36a53d22088cd187e66454956eb659e (diff)
downloadrust-295b6fd0f77c3c63c9bdfcec16e603749e21bc2f.tar.gz
rust-295b6fd0f77c3c63c9bdfcec16e603749e21bc2f.zip
Add a test for #22892
Diffstat (limited to 'src')
-rw-r--r--src/test/ui/asm/invalid-inline-asm.rs9
-rw-r--r--src/test/ui/asm/invalid-inline-asm.stderr8
2 files changed, 17 insertions, 0 deletions
diff --git a/src/test/ui/asm/invalid-inline-asm.rs b/src/test/ui/asm/invalid-inline-asm.rs
new file mode 100644
index 00000000000..1dcded0be0b
--- /dev/null
+++ b/src/test/ui/asm/invalid-inline-asm.rs
@@ -0,0 +1,9 @@
+#![feature(asm)]
+
+fn main() {
+    let byte = 0;
+    let port = 0x80;
+
+    unsafe { asm!("out %al, %dx" :: "a" (byte), "d" (port) :: "volatile"); }
+    //~^ ERROR couldn't allocate input reg for constraint 'a'
+}
diff --git a/src/test/ui/asm/invalid-inline-asm.stderr b/src/test/ui/asm/invalid-inline-asm.stderr
new file mode 100644
index 00000000000..11a32d3141e
--- /dev/null
+++ b/src/test/ui/asm/invalid-inline-asm.stderr
@@ -0,0 +1,8 @@
+error: couldn't allocate input reg for constraint 'a'
+  --> $DIR/invalid-inline-asm.rs:7:14
+   |
+LL |     unsafe { asm!("out %al, %dx" :: "a" (byte), "d" (port) :: "volatile"); }
+   |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+error: aborting due to previous error
+