]>
Commit | Line | Data |
---|---|---|
7cac9316 XL |
1 | #![feature(decl_macro)] |
2 | ||
3 | macro n($foo:ident, $S:ident, $i:ident, $m:ident) { | |
4 | mod $foo { | |
5 | #[derive(Default)] | |
6 | pub struct $S { $i: u32 } | |
7 | pub macro $m($e:expr) { $e.$i } | |
8 | } | |
9 | } | |
10 | ||
11 | n!(foo, S, i, m); | |
8bb4bdeb XL |
12 | |
13 | fn main() { | |
7cac9316 | 14 | use foo::{S, m}; |
1b1a35ee | 15 | S::default().i; //~ ERROR field `i` of struct `S` is private |
7cac9316 | 16 | m!(S::default()); // ok |
8bb4bdeb | 17 | } |