| //@ run-pass | |
| #![allow(unused_macro_rules)] | |
| macro_rules! m { | |
| ($e:expr) => { | |
| "expr includes attr" | |
| }; | |
| (#[$attr:meta] $e:expr) => { | |
| "expr excludes attr" | |
| } | |
| } | |
| macro_rules! n { | |
| (#[$attr:meta] $e:expr) => { | |
| "expr excludes attr" | |
| }; | |
| ($e:expr) => { | |
| "expr includes attr" | |
| } | |
| } | |
| fn main() { | |
| assert_eq!(m!(#[attr] 1), "expr includes attr"); | |
| assert_eq!(n!(#[attr] 1), "expr excludes attr"); | |
| } |