rust/tests/ui/asm/aarch64/duplicate-options.rs

28 lines
1.1 KiB
Rust

//@ only-aarch64
//@ needs-asm-support
//@ run-rustfix
use std::arch::asm;
fn main() {
unsafe {
asm!("", options(nomem, nomem));
//~^ ERROR the `nomem` option was already provided
asm!("", options(preserves_flags, preserves_flags));
//~^ ERROR the `preserves_flags` option was already provided
asm!("", options(nostack, preserves_flags), options(nostack));
//~^ ERROR the `nostack` option was already provided
asm!("", options(nostack, nostack), options(nostack), options(nostack));
//~^ ERROR the `nostack` option was already provided
//~| ERROR the `nostack` option was already provided
//~| ERROR the `nostack` option was already provided
asm!(
"",
options(nomem, noreturn),
options(preserves_flags, noreturn), //~ ERROR the `noreturn` option was already provided
options(nomem, nostack), //~ ERROR the `nomem` option was already provided
options(noreturn), //~ ERROR the `noreturn` option was already provided
);
}
}