diff options
| author | Erick Tryzelaar <erick.tryzelaar@gmail.com> | 2013-08-10 13:03:19 -0700 |
|---|---|---|
| committer | Erick Tryzelaar <erick.tryzelaar@gmail.com> | 2013-08-10 13:03:19 -0700 |
| commit | fb00463feb4c51915941a84077b78c173e6dad2b (patch) | |
| tree | 99185b107f3e5f7b10e09edffec1ed4ec8d3280d /src/libsyntax/parse/parser.rs | |
| parent | b19c2ed8f3b04a872520c5f47782fe04d39de24c (diff) | |
| parent | 33c6d3fd7880df371151ec3e9a053b7169a181e5 (diff) | |
| download | rust-fb00463feb4c51915941a84077b78c173e6dad2b.tar.gz rust-fb00463feb4c51915941a84077b78c173e6dad2b.zip | |
Merge branch 'issue-8393-attributes-in-macros' of https://github.com/nikomatsakis/rust into rollup
Diffstat (limited to 'src/libsyntax/parse/parser.rs')
| -rw-r--r-- | src/libsyntax/parse/parser.rs | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/src/libsyntax/parse/parser.rs b/src/libsyntax/parse/parser.rs index d1916088a41..77c50a779c0 100644 --- a/src/libsyntax/parse/parser.rs +++ b/src/libsyntax/parse/parser.rs @@ -8,6 +8,8 @@ // option. This file may not be copied, modified, or distributed // except according to those terms. +#[macro_escape]; + use abi; use abi::AbiSet; use ast::{Sigil, BorrowedSigil, ManagedSigil, OwnedSigil}; @@ -4460,7 +4462,17 @@ impl Parser { attrs: ~[Attribute], macros_allowed: bool) -> item_or_view_item { - maybe_whole!(iovi self, nt_item); + match *self.token { + INTERPOLATED(token::nt_item(item)) => { + self.bump(); + let new_attrs = vec::append(attrs, item.attrs); + return iovi_item(@ast::item { + attrs: new_attrs, + ..(*item).clone()}); + } + _ => {} + } + let lo = self.span.lo; let visibility = self.parse_non_priv_visibility(); |
