diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-17 12:19:03 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-17 12:19:03 +0000 |
commit | 64d98f8ee037282c35007b64c2649055c56af1db (patch) | |
tree | 5492bcf97fce41ee1c0b1cc2add283f3e66cdab0 /src/test/ui/asm/bad-template.rs | |
parent | Adding debian version 1.67.1+dfsg1-1. (diff) | |
download | rustc-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.rs | 75 |
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 |