diff options
Diffstat (limited to 'src/libsyntax/parse/parser.rs')
| -rw-r--r-- | src/libsyntax/parse/parser.rs | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/libsyntax/parse/parser.rs b/src/libsyntax/parse/parser.rs index d3700059862..81ac789b683 100644 --- a/src/libsyntax/parse/parser.rs +++ b/src/libsyntax/parse/parser.rs @@ -351,7 +351,7 @@ impl<'a> Parser<'a> { mut rdr: Box<Reader+'a>) -> Parser<'a> { - let tok0 = real_token(rdr); + let tok0 = real_token(&mut *rdr); let span = tok0.sp; let placeholder = TokenAndSpan { tok: token::UNDERSCORE, @@ -899,7 +899,7 @@ impl<'a> Parser<'a> { None }; let next = if self.buffer_start == self.buffer_end { - real_token(self.reader) + real_token(&mut *self.reader) } else { // Avoid token copies with `replace`. let buffer_start = self.buffer_start as uint; @@ -943,7 +943,7 @@ impl<'a> Parser<'a> { -> R { let dist = distance as int; while self.buffer_length() < dist { - self.buffer[self.buffer_end as uint] = real_token(self.reader); + self.buffer[self.buffer_end as uint] = real_token(&mut *self.reader); self.buffer_end = (self.buffer_end + 1) & 3; } f(&self.buffer[((self.buffer_start + dist - 1) & 3) as uint].tok) |
