about summary refs log tree commit diff
path: root/src/libsyntax/parse
diff options
context:
space:
mode:
authortopecongiro <seuchida@gmail.com>2017-09-07 06:11:16 +0900
committertopecongiro <seuchida@gmail.com>2017-09-07 06:28:04 +0900
commited63e0be9527a9b18b23f99b764f1a767c70e825 (patch)
tree61641a5a1c19bada996d481082744840bf582eb9 /src/libsyntax/parse
parenta20953906056f85f71896795e762ac242e1891aa (diff)
downloadrust-ed63e0be9527a9b18b23f99b764f1a767c70e825.tar.gz
rust-ed63e0be9527a9b18b23f99b764f1a767c70e825.zip
Add visibility to span for macros 2.0
Diffstat (limited to 'src/libsyntax/parse')
-rw-r--r--src/libsyntax/parse/parser.rs10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/libsyntax/parse/parser.rs b/src/libsyntax/parse/parser.rs
index 1f033b25fe4..5721330b810 100644
--- a/src/libsyntax/parse/parser.rs
+++ b/src/libsyntax/parse/parser.rs
@@ -3789,9 +3789,9 @@ impl<'a> Parser<'a> {
         is_defaultness
     }
 
-    fn eat_macro_def(&mut self, attrs: &[Attribute], vis: &Visibility)
+    fn eat_macro_def(&mut self, attrs: &[Attribute], vis: &Visibility, lo: Span)
                      -> PResult<'a, Option<P<Item>>> {
-        let lo = self.span;
+        let token_lo = self.span;
         let (ident, def) = match self.token {
             token::Ident(ident) if ident.name == keywords::Macro.name() => {
                 self.bump();
@@ -3811,7 +3811,7 @@ impl<'a> Parser<'a> {
                     };
                     TokenStream::concat(vec![
                         args.into(),
-                        TokenTree::Token(lo.to(self.prev_span), token::FatArrow).into(),
+                        TokenTree::Token(token_lo.to(self.prev_span), token::FatArrow).into(),
                         body.into(),
                     ])
                 } else {
@@ -3861,7 +3861,7 @@ impl<'a> Parser<'a> {
                 node: StmtKind::Local(self.parse_local(attrs.into())?),
                 span: lo.to(self.prev_span),
             }
-        } else if let Some(macro_def) = self.eat_macro_def(&attrs, &Visibility::Inherited)? {
+        } else if let Some(macro_def) = self.eat_macro_def(&attrs, &Visibility::Inherited, lo)? {
             Stmt {
                 id: ast::DUMMY_NODE_ID,
                 node: StmtKind::Item(macro_def),
@@ -6011,7 +6011,7 @@ impl<'a> Parser<'a> {
                                     maybe_append(attrs, extra_attrs));
             return Ok(Some(item));
         }
-        if let Some(macro_def) = self.eat_macro_def(&attrs, &visibility)? {
+        if let Some(macro_def) = self.eat_macro_def(&attrs, &visibility, lo)? {
             return Ok(Some(macro_def));
         }