diff options
Diffstat (limited to 'src/libsyntax/parse')
| -rw-r--r-- | src/libsyntax/parse/lexer.rs | 7 | ||||
| -rw-r--r-- | src/libsyntax/parse/parser.rs | 7 |
2 files changed, 11 insertions, 3 deletions
diff --git a/src/libsyntax/parse/lexer.rs b/src/libsyntax/parse/lexer.rs index 8db80cddded..1614a303d95 100644 --- a/src/libsyntax/parse/lexer.rs +++ b/src/libsyntax/parse/lexer.rs @@ -33,8 +33,11 @@ pub trait reader { fn dup(@mut self) -> @reader; } -#[deriving(Eq)] -pub struct TokenAndSpan {tok: token::Token, sp: span} +#[deriving(Clone, Eq)] +pub struct TokenAndSpan { + tok: token::Token, + sp: span, +} pub struct StringReader { span_diagnostic: @span_handler, diff --git a/src/libsyntax/parse/parser.rs b/src/libsyntax/parse/parser.rs index adecbc050a3..324be2f978d 100644 --- a/src/libsyntax/parse/parser.rs +++ b/src/libsyntax/parse/parser.rs @@ -280,7 +280,12 @@ pub fn Parser(sess: @mut ParseSess, token: @mut tok0.tok, span: @mut span, last_span: @mut span, - buffer: @mut ([placeholder, .. 4]), + buffer: @mut ([ + placeholder.clone(), + placeholder.clone(), + placeholder.clone(), + placeholder.clone(), + ]), buffer_start: @mut 0, buffer_end: @mut 0, tokens_consumed: @mut 0, |
