2017-11-04 20:22:18 -05:00
|
|
|
macro_rules! m {
|
|
|
|
($pat: pat) => {
|
|
|
|
trait Tr {
|
|
|
|
fn trait_method($pat: u8);
|
|
|
|
}
|
|
|
|
|
|
|
|
type A = fn($pat: u8);
|
|
|
|
|
|
|
|
extern {
|
|
|
|
fn foreign_fn($pat: u8);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
mod good_pat {
|
|
|
|
m!(good_pat); // OK
|
|
|
|
}
|
|
|
|
|
|
|
|
mod bad_pat {
|
|
|
|
m!((bad, pat));
|
|
|
|
//~^ ERROR patterns aren't allowed in function pointer types
|
|
|
|
//~| ERROR patterns aren't allowed in foreign function declarations
|
2017-11-04 21:08:41 -05:00
|
|
|
//~| ERROR patterns aren't allowed in methods without bodies
|
2017-11-04 20:22:18 -05:00
|
|
|
}
|
|
|
|
|
|
|
|
fn main() {}
|