summaryrefslogtreecommitdiffstats
path: root/src/test/ui/asm/bad-template.rs
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-17 12:19:03 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-17 12:19:03 +0000
commit64d98f8ee037282c35007b64c2649055c56af1db (patch)
tree5492bcf97fce41ee1c0b1cc2add283f3e66cdab0 /src/test/ui/asm/bad-template.rs
parentAdding debian version 1.67.1+dfsg1-1. (diff)
downloadrustc-64d98f8ee037282c35007b64c2649055c56af1db.tar.xz
rustc-64d98f8ee037282c35007b64c2649055c56af1db.zip
Merging upstream version 1.68.2+dfsg1.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'src/test/ui/asm/bad-template.rs')
-rw-r--r--src/test/ui/asm/bad-template.rs75
1 files changed, 0 insertions, 75 deletions
diff --git a/src/test/ui/asm/bad-template.rs b/src/test/ui/asm/bad-template.rs
deleted file mode 100644
index 556371747..000000000
--- a/src/test/ui/asm/bad-template.rs
+++ /dev/null
@@ -1,75 +0,0 @@
-// revisions: x86_64_mirunsafeck aarch64_mirunsafeck x86_64_thirunsafeck aarch64_thirunsafeck
-
-// [x86_64_thirunsafeck] compile-flags: -Z thir-unsafeck --target x86_64-unknown-linux-gnu
-// [aarch64_thirunsafeck] compile-flags: -Z thir-unsafeck --target aarch64-unknown-linux-gnu
-// [x86_64_mirunsafeck] compile-flags: --target x86_64-unknown-linux-gnu
-// [aarch64_mirunsafeck] compile-flags: --target aarch64-unknown-linux-gnu
-
-// [x86_64_thirunsafeck] needs-llvm-components: x86
-// [x86_64_mirunsafeck] needs-llvm-components: x86
-// [aarch64_thirunsafeck] needs-llvm-components: aarch64
-// [aarch64_mirunsafeck] needs-llvm-components: aarch64
-
-#![feature(no_core, lang_items, rustc_attrs, asm_const)]
-#![no_core]
-
-#[rustc_builtin_macro]
-macro_rules! asm {
- () => {};
-}
-#[rustc_builtin_macro]
-macro_rules! global_asm {
- () => {};
-}
-
-#[lang = "sized"]
-trait Sized {}
-
-fn main() {
- let mut foo = 0;
- unsafe {
- asm!("{}");
- //~^ ERROR invalid reference to argument at index 0
- asm!("{1}", in(reg) foo);
- //~^ ERROR invalid reference to argument at index 1
- //~^^ ERROR argument never used
- asm!("{a}");
- //~^ ERROR there is no argument named `a`
- asm!("{}", a = in(reg) foo);
- //~^ ERROR invalid reference to argument at index 0
- //~^^ ERROR argument never used
- asm!("{1}", a = in(reg) foo);
- //~^ ERROR invalid reference to argument at index 1
- //~^^ ERROR named argument never used
- #[cfg(any(x86_64_thirunsafeck, x86_64_mirunsafeck))]
- asm!("{}", in("eax") foo);
- //[x86_64_thirunsafeck,x86_64_mirunsafeck]~^ ERROR invalid reference to argument at index 0
- #[cfg(any(aarch64_thirunsafeck, aarch64_mirunsafeck))]
- asm!("{}", in("x0") foo);
- //[aarch64_thirunsafeck,aarch64_mirunsafeck]~^ ERROR invalid reference to argument at index 0
- asm!("{:foo}", in(reg) foo);
- //~^ ERROR asm template modifier must be a single character
- //~| WARN formatting may not be suitable for sub-register argument [asm_sub_register]
- asm!("", in(reg) 0, in(reg) 1);
- //~^ ERROR multiple unused asm arguments
- }
-}
-
-const FOO: i32 = 1;
-global_asm!("{}");
-//~^ ERROR invalid reference to argument at index 0
-global_asm!("{1}", const FOO);
-//~^ ERROR invalid reference to argument at index 1
-//~^^ ERROR argument never used
-global_asm!("{a}");
-//~^ ERROR there is no argument named `a`
-global_asm!("{}", a = const FOO);
-//~^ ERROR invalid reference to argument at index 0
-//~^^ ERROR argument never used
-global_asm!("{1}", a = const FOO);
-//~^ ERROR invalid reference to argument at index 1
-//~^^ ERROR named argument never used
-global_asm!("{:foo}", const FOO);
-//~^ ERROR asm template modifier must be a single character
-global_asm!("", const FOO, const FOO);
-//~^ ERROR multiple unused asm arguments