diff options
| author | Seiichi Uchida <seuchida@gmail.com> | 2017-08-16 23:40:06 +0900 |
|---|---|---|
| committer | Seiichi Uchida <seuchida@gmail.com> | 2017-08-16 23:40:06 +0900 |
| commit | 0bfe4178af1c82a7907c3408e3fe910f47948bf5 (patch) | |
| tree | 7bc76e9dc8554402abbba7147cf19cdd64093936 /src/libsyntax/parse | |
| parent | c774c9591959edc9aa098e5ff7fc4be2e4a12c09 (diff) | |
| download | rust-0bfe4178af1c82a7907c3408e3fe910f47948bf5.tar.gz rust-0bfe4178af1c82a7907c3408e3fe910f47948bf5.zip | |
Eat open paren when parsing list
Diffstat (limited to 'src/libsyntax/parse')
| -rw-r--r-- | src/libsyntax/parse/attr.rs | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/src/libsyntax/parse/attr.rs b/src/libsyntax/parse/attr.rs index c99a09ab24e..0136f79e2e8 100644 --- a/src/libsyntax/parse/attr.rs +++ b/src/libsyntax/parse/attr.rs @@ -244,10 +244,9 @@ impl<'a> Parser<'a> { pub fn parse_meta_item_kind(&mut self) -> PResult<'a, ast::MetaItemKind> { Ok(if self.eat(&token::Eq) { ast::MetaItemKind::NameValue(self.parse_unsuffixed_lit()?) - } else if self.token == token::OpenDelim(token::Paren) { + } else if self.eat(&token::OpenDelim(token::Paren)) { ast::MetaItemKind::List(self.parse_meta_seq()?) } else { - self.eat(&token::OpenDelim(token::Paren)); ast::MetaItemKind::Word }) } @@ -277,9 +276,8 @@ impl<'a> Parser<'a> { /// matches meta_seq = ( COMMASEP(meta_item_inner) ) fn parse_meta_seq(&mut self) -> PResult<'a, Vec<ast::NestedMetaItem>> { - self.parse_unspanned_seq(&token::OpenDelim(token::Paren), - &token::CloseDelim(token::Paren), - SeqSep::trailing_allowed(token::Comma), - |p: &mut Parser<'a>| p.parse_meta_item_inner()) + self.parse_seq_to_end(&token::CloseDelim(token::Paren), + SeqSep::trailing_allowed(token::Comma), + |p: &mut Parser<'a>| p.parse_meta_item_inner()) } } |
