diff options
| author | Mazdak Farrokhzad <twingoow@gmail.com> | 2020-01-31 12:31:51 +0100 |
|---|---|---|
| committer | Mazdak Farrokhzad <twingoow@gmail.com> | 2020-02-13 15:16:36 +0100 |
| commit | fd64b3bcdfcc844b9b25318106917937f7b17b94 (patch) | |
| tree | ab41c0547a96d484fb4279dd09f3a3e8e7d1b8ae /src/librustc_parse/parser/stmt.rs | |
| parent | c2026030b5d761a83d62c7e198057b119addcfd1 (diff) | |
parser: make `eat_macro_def` redundant.
Diffstat (limited to 'src/librustc_parse/parser/stmt.rs')
| -rw-r--r-- | src/librustc_parse/parser/stmt.rs | 10 |
1 files changed, 3 insertions, 7 deletions
diff --git a/src/librustc_parse/parser/stmt.rs b/src/librustc_parse/parser/stmt.rs index e97af0dc00c..b111b45e709 100644 --- a/src/librustc_parse/parser/stmt.rs +++ b/src/librustc_parse/parser/stmt.rs @@ -7,10 +7,10 @@ use crate::maybe_whole; use crate::DirectoryOwnership; use rustc_errors::{Applicability, PResult}; -use rustc_span::source_map::{respan, BytePos, Span}; +use rustc_span::source_map::{BytePos, Span}; use rustc_span::symbol::{kw, sym, Symbol}; use syntax::ast; -use syntax::ast::{AttrStyle, AttrVec, Attribute, Mac, MacStmtStyle, VisibilityKind}; +use syntax::ast::{AttrStyle, AttrVec, Attribute, Mac, MacStmtStyle}; use syntax::ast::{Block, BlockCheckMode, Expr, ExprKind, Local, Stmt, StmtKind, DUMMY_NODE_ID}; use syntax::ptr::P; use syntax::token::{self, TokenKind}; @@ -55,11 +55,6 @@ impl<'a> Parser<'a> { return self.recover_stmt_local(lo, attrs.into(), msg, "let"); } - let mac_vis = respan(lo, VisibilityKind::Inherited); - if let Some(macro_def) = self.eat_macro_def(&attrs, &mac_vis, lo)? { - return Ok(Some(self.mk_stmt(lo.to(self.prev_span), StmtKind::Item(macro_def)))); - } - // Starts like a simple path, being careful to avoid contextual keywords // such as a union items, item with `crate` visibility or auto trait items. // Our goal here is to parse an arbitrary path `a::b::c` but not something that starts @@ -70,6 +65,7 @@ impl<'a> Parser<'a> { && !self.is_crate_vis() // `crate::b::c` - path, `crate struct S;` - not a path. && !self.is_auto_trait_item() && !self.is_async_fn() + && !self.is_macro_rules_item() { let path = self.parse_path(PathStyle::Expr)?; |
