2020-01-29 17:18:54 -06:00
|
|
|
// Tests the different rules for `fn` forms requiring the presence or lack of a body.
|
|
|
|
|
|
|
|
fn main() {
|
|
|
|
fn f1(); //~ ERROR free function without a body
|
|
|
|
fn f2() {} // OK.
|
|
|
|
|
|
|
|
trait X {
|
|
|
|
fn f1(); // OK.
|
|
|
|
fn f2() {} // OK.
|
|
|
|
}
|
|
|
|
|
|
|
|
struct Y;
|
|
|
|
impl X for Y {
|
|
|
|
fn f1(); //~ ERROR associated function in `impl` without body
|
|
|
|
fn f2() {} // OK.
|
|
|
|
}
|
|
|
|
|
|
|
|
impl Y {
|
|
|
|
fn f3(); //~ ERROR associated function in `impl` without body
|
|
|
|
fn f4() {} // OK.
|
|
|
|
}
|
|
|
|
|
2020-09-01 16:12:52 -05:00
|
|
|
extern "C" {
|
2020-01-29 17:18:54 -06:00
|
|
|
fn f5(); // OK.
|
|
|
|
fn f6() {} //~ ERROR incorrect function inside `extern` block
|
|
|
|
}
|
|
|
|
}
|