diff options
| author | Jeffrey Seyfried <jeffrey.seyfried@gmail.com> | 2016-07-04 10:25:50 +0000 |
|---|---|---|
| committer | Jeffrey Seyfried <jeffrey.seyfried@gmail.com> | 2016-07-04 23:42:35 +0000 |
| commit | 547a930835be262ebea5e499dba7555a8a47b992 (patch) | |
| tree | cb767c17cf669224da4461a41aff4aee07e647bf /src/libsyntax/parse/parser.rs | |
| parent | c2b56fb7a0c24e04227318ca7e5950e9289ee3e4 (diff) | |
| download | rust-547a930835be262ebea5e499dba7555a8a47b992.tar.gz rust-547a930835be262ebea5e499dba7555a8a47b992.zip | |
Revert "Change `fold_tt` and `fold_tts` to take token trees by value (instead of by reference)"
This reverts commit 5bf7970ac70b4e7781e7b2f3816720aa62fac6fd.
Diffstat (limited to 'src/libsyntax/parse/parser.rs')
| -rw-r--r-- | src/libsyntax/parse/parser.rs | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/src/libsyntax/parse/parser.rs b/src/libsyntax/parse/parser.rs index 20a54228d01..4d4114bfe30 100644 --- a/src/libsyntax/parse/parser.rs +++ b/src/libsyntax/parse/parser.rs @@ -2688,12 +2688,13 @@ impl<'a> Parser<'a> { )?; let (sep, repeat) = self.parse_sep_and_kleene_op()?; let name_num = macro_parser::count_names(&seq); - return Ok(TokenTree::Sequence(mk_sp(sp.lo, seq_span.hi), SequenceRepetition { - tts: seq, - separator: sep, - op: repeat, - num_captures: name_num - })); + return Ok(TokenTree::Sequence(mk_sp(sp.lo, seq_span.hi), + Rc::new(SequenceRepetition { + tts: seq, + separator: sep, + op: repeat, + num_captures: name_num + }))); } else if self.token.is_keyword(keywords::Crate) { self.bump(); return Ok(TokenTree::Token(sp, SpecialVarNt(SpecialMacroVar::CrateMacroVar))); @@ -2849,12 +2850,12 @@ impl<'a> Parser<'a> { _ => {} } - Ok(TokenTree::Delimited(span, Delimited { + Ok(TokenTree::Delimited(span, Rc::new(Delimited { delim: delim, open_span: open_span, tts: tts, close_span: close_span, - })) + }))) }, _ => { // invariants: the current token is not a left-delimiter, |
