2024-07-17 00:03:33 +02:00
|
|
|
//@ needs-asm-support
|
|
|
|
//@ compile-flags: --test
|
|
|
|
|
|
|
|
#![feature(test)]
|
|
|
|
#![crate_type = "lib"]
|
|
|
|
|
2024-08-04 16:45:48 +02:00
|
|
|
use std::arch::naked_asm;
|
2024-07-17 00:03:33 +02:00
|
|
|
|
|
|
|
#[test]
|
2025-03-29 17:30:11 +01:00
|
|
|
#[unsafe(naked)]
|
2024-07-17 10:42:24 +02:00
|
|
|
//~^ ERROR [E0736]
|
2025-03-26 19:44:53 +01:00
|
|
|
extern "C" fn test_naked() {
|
2025-03-29 17:30:11 +01:00
|
|
|
naked_asm!("")
|
2024-07-17 00:03:33 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
#[should_panic]
|
|
|
|
#[test]
|
2025-03-29 17:30:11 +01:00
|
|
|
#[unsafe(naked)]
|
2024-07-17 10:42:24 +02:00
|
|
|
//~^ ERROR [E0736]
|
2025-03-26 19:44:53 +01:00
|
|
|
extern "C" fn test_naked_should_panic() {
|
2025-03-29 17:30:11 +01:00
|
|
|
naked_asm!("")
|
2024-07-17 00:03:33 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
#[ignore]
|
|
|
|
#[test]
|
2025-03-29 17:30:11 +01:00
|
|
|
#[unsafe(naked)]
|
2024-07-17 10:42:24 +02:00
|
|
|
//~^ ERROR [E0736]
|
2025-03-26 19:44:53 +01:00
|
|
|
extern "C" fn test_naked_ignore() {
|
2025-03-29 17:30:11 +01:00
|
|
|
naked_asm!("")
|
2024-07-17 00:03:33 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
#[bench]
|
2025-03-29 17:30:11 +01:00
|
|
|
#[unsafe(naked)]
|
2024-07-17 10:42:24 +02:00
|
|
|
//~^ ERROR [E0736]
|
2025-03-26 19:44:53 +01:00
|
|
|
extern "C" fn bench_naked() {
|
2025-03-29 17:30:11 +01:00
|
|
|
naked_asm!("")
|
2024-07-17 00:03:33 +02:00
|
|
|
}
|