Move /src/test to /tests
This commit is contained in:
parent
ca855e6e42
commit
cf2dff2b1e
27592 changed files with 0 additions and 0 deletions
52
tests/ui/asm/naked-invalid-attr.rs
Normal file
52
tests/ui/asm/naked-invalid-attr.rs
Normal file
|
|
@ -0,0 +1,52 @@
|
|||
// Checks that #[naked] attribute can be placed on function definitions only.
|
||||
//
|
||||
// needs-asm-support
|
||||
#![feature(naked_functions)]
|
||||
#![naked] //~ ERROR should be applied to a function definition
|
||||
|
||||
use std::arch::asm;
|
||||
|
||||
extern "C" {
|
||||
#[naked] //~ ERROR should be applied to a function definition
|
||||
fn f();
|
||||
}
|
||||
|
||||
#[naked] //~ ERROR should be applied to a function definition
|
||||
#[repr(C)]
|
||||
struct S {
|
||||
a: u32,
|
||||
b: u32,
|
||||
}
|
||||
|
||||
trait Invoke {
|
||||
#[naked] //~ ERROR should be applied to a function definition
|
||||
extern "C" fn invoke(&self);
|
||||
}
|
||||
|
||||
impl Invoke for S {
|
||||
#[naked]
|
||||
extern "C" fn invoke(&self) {
|
||||
unsafe { asm!("", options(noreturn)) }
|
||||
}
|
||||
}
|
||||
|
||||
#[naked]
|
||||
extern "C" fn ok() {
|
||||
unsafe { asm!("", options(noreturn)) }
|
||||
}
|
||||
|
||||
impl S {
|
||||
#[naked]
|
||||
extern "C" fn g() {
|
||||
unsafe { asm!("", options(noreturn)) }
|
||||
}
|
||||
|
||||
#[naked]
|
||||
extern "C" fn h(&self) {
|
||||
unsafe { asm!("", options(noreturn)) }
|
||||
}
|
||||
}
|
||||
|
||||
fn main() {
|
||||
#[naked] || {}; //~ ERROR should be applied to a function definition
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue