| #![feature(decl_macro)] | |
| struct X; | |
| macro_rules! define_f_legacy { () => { | |
| fn f() {} | |
| }} | |
| macro define_g_modern() { | |
| fn g() {} | |
| } | |
| impl X { | |
| fn f() {} //~ ERROR duplicate definitions with name `f` | |
| fn g() {} // OK | |
| } | |
| impl X { | |
| define_f_legacy!(); | |
| } | |
| impl X { | |
| define_g_modern!(); | |
| } | |
| fn main() {} |