48 lines
870 B
Rust
48 lines
870 B
Rust
// Ensures that all `fn` forms can have all the function qualifiers syntactically.
|
|
|
|
// check-pass
|
|
// edition:2018
|
|
|
|
fn main() {}
|
|
|
|
#[cfg(FALSE)]
|
|
fn syntax() {
|
|
async fn f();
|
|
unsafe fn f();
|
|
const fn f();
|
|
extern "C" fn f();
|
|
const async unsafe extern "C" fn f();
|
|
|
|
trait X {
|
|
async fn f();
|
|
unsafe fn f();
|
|
const fn f();
|
|
extern "C" fn f();
|
|
const async unsafe extern "C" fn f();
|
|
}
|
|
|
|
impl X for Y {
|
|
async fn f();
|
|
unsafe fn f();
|
|
const fn f();
|
|
extern "C" fn f();
|
|
const async unsafe extern "C" fn f();
|
|
}
|
|
|
|
impl Y {
|
|
async fn f();
|
|
unsafe fn f();
|
|
const fn f();
|
|
extern "C" fn f();
|
|
const async unsafe extern "C" fn f();
|
|
}
|
|
|
|
extern "C" {
|
|
fn f();
|
|
fn f();
|
|
fn f();
|
|
fn f();
|
|
fn f();
|
|
}
|
|
}
|