diff options
Diffstat (limited to 'src/libsyntax/parse/parser.rs')
| -rw-r--r-- | src/libsyntax/parse/parser.rs | 19 |
1 files changed, 9 insertions, 10 deletions
diff --git a/src/libsyntax/parse/parser.rs b/src/libsyntax/parse/parser.rs index 8d52b8eea5e..6b8411a9ead 100644 --- a/src/libsyntax/parse/parser.rs +++ b/src/libsyntax/parse/parser.rs @@ -1602,9 +1602,9 @@ pub impl Parser { token::LBRACE | token::LPAREN | token::LBRACKET => { self.parse_matcher_subseq( name_idx, - &*self.token, + *self.token, // tjc: not sure why we need a copy - &token::flip_delimiter(&*self.token) + token::flip_delimiter(&*self.token) ) } _ => self.fatal(~"expected open delimiter") @@ -1618,15 +1618,15 @@ pub impl Parser { fn parse_matcher_subseq( &self, name_idx: @mut uint, - bra: &token::Token, - ket: &token::Token + bra: token::Token, + ket: token::Token ) -> ~[matcher] { let mut ret_val = ~[]; let mut lparens = 0u; - self.expect(bra); + self.expect(&bra); - while *self.token != *ket || lparens > 0u { + while *self.token != ket || lparens > 0u { if *self.token == token::LPAREN { lparens += 1u; } if *self.token == token::RPAREN { lparens -= 1u; } ret_val.push(self.parse_matcher(name_idx)); @@ -1646,8 +1646,8 @@ pub impl Parser { let name_idx_lo = *name_idx; let ms = self.parse_matcher_subseq( name_idx, - &token::LPAREN, - &token::RPAREN + token::LPAREN, + token::RPAREN ); if ms.len() == 0u { self.fatal(~"repetition body must be nonempty"); @@ -3688,12 +3688,11 @@ pub impl Parser { first_item_attrs: ~[attribute]) -> foreign_mod { let ParsedItemsAndViewItems { - attrs_remaining: attrs_remaining, + attrs_remaining: _, view_items: view_items, items: _, foreign_items: foreign_items } = self.parse_foreign_items(first_item_attrs, true); - let _initial_attrs = attrs_remaining; assert!(*self.token == token::RBRACE); ast::foreign_mod { sort: sort, |
