diff options
| author | Huon Wilson <dbau.pp+github@gmail.com> | 2013-12-07 13:41:11 +1100 |
|---|---|---|
| committer | Huon Wilson <dbau.pp+github@gmail.com> | 2013-12-07 13:41:11 +1100 |
| commit | 3ef933647ab6adf841d8323a712101f37851eff9 (patch) | |
| tree | 545ae6c4fbd16b29189abb7bee7ef259a92b50b6 /src/libsyntax/ext | |
| parent | 09a879460cfa42ecfd4a769bdc21e1d55b795bd8 (diff) | |
| download | rust-3ef933647ab6adf841d8323a712101f37851eff9.tar.gz rust-3ef933647ab6adf841d8323a712101f37851eff9.zip | |
syntax: print expansion info from #[attribute] macros in the correct
format. Previously, any attempt to use this information from inside something like #[deriving(Foo)] would result in it printing like `deriving(Foo)!`.
Diffstat (limited to 'src/libsyntax/ext')
| -rw-r--r-- | src/libsyntax/ext/expand.rs | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/libsyntax/ext/expand.rs b/src/libsyntax/ext/expand.rs index 1d040c10984..4bb35457182 100644 --- a/src/libsyntax/ext/expand.rs +++ b/src/libsyntax/ext/expand.rs @@ -18,7 +18,7 @@ use ext::build::AstBuilder; use attr; use attr::AttrMetaMethods; use codemap; -use codemap::{Span, Spanned, ExpnInfo, NameAndSpan}; +use codemap::{Span, Spanned, ExpnInfo, NameAndSpan, MacroBang, MacroAttribute}; use ext::base::*; use fold::*; use opt_vec; @@ -69,6 +69,7 @@ pub fn expand_expr(extsbox: @mut SyntaxEnv, call_site: e.span, callee: NameAndSpan { name: extnamestr, + format: MacroBang, span: exp_span, }, }); @@ -257,6 +258,7 @@ pub fn expand_mod_items(extsbox: @mut SyntaxEnv, call_site: attr.span, callee: NameAndSpan { name: mname, + format: MacroAttribute, span: None } }); @@ -352,6 +354,7 @@ pub fn expand_item_mac(extsbox: @mut SyntaxEnv, call_site: it.span, callee: NameAndSpan { name: extnamestr, + format: MacroBang, span: span } }); @@ -370,6 +373,7 @@ pub fn expand_item_mac(extsbox: @mut SyntaxEnv, call_site: it.span, callee: NameAndSpan { name: extnamestr, + format: MacroBang, span: span } }); @@ -459,6 +463,7 @@ pub fn expand_stmt(extsbox: @mut SyntaxEnv, call_site: s.span, callee: NameAndSpan { name: extnamestr, + format: MacroBang, span: exp_span, } }); |
