diff options
| author | Jeffrey Seyfried <jeffrey.seyfried@gmail.com> | 2017-02-21 12:04:45 +0000 |
|---|---|---|
| committer | Jeffrey Seyfried <jeffrey.seyfried@gmail.com> | 2017-03-03 02:15:39 +0000 |
| commit | a02c18aa524cf330237ec9d8dba202ad91904a88 (patch) | |
| tree | 4f918786ad827ea10df6696a8e7c4f670a311dd2 /src/libsyntax/parse | |
| parent | f6eaaf350ea683ae8b33b4a79422ad1a10ea0987 (diff) | |
| download | rust-a02c18aa524cf330237ec9d8dba202ad91904a88.tar.gz rust-a02c18aa524cf330237ec9d8dba202ad91904a88.zip | |
Fix `token::Eof` spans.
Diffstat (limited to 'src/libsyntax/parse')
| -rw-r--r-- | src/libsyntax/parse/parser.rs | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/libsyntax/parse/parser.rs b/src/libsyntax/parse/parser.rs index c88b859e036..6e3724b5fd8 100644 --- a/src/libsyntax/parse/parser.rs +++ b/src/libsyntax/parse/parser.rs @@ -223,7 +223,7 @@ impl TokenCursor { self.frame = frame; continue } else { - return TokenAndSpan { tok: token::Eof, sp: self.frame.span } + return TokenAndSpan { tok: token::Eof, sp: syntax_pos::DUMMY_SP } }; match tree { @@ -448,10 +448,14 @@ impl<'a> Parser<'a> { } fn next_tok(&mut self) -> TokenAndSpan { - match self.desugar_doc_comments { + let mut next = match self.desugar_doc_comments { true => self.token_cursor.next_desugared(), false => self.token_cursor.next(), + }; + if next.sp == syntax_pos::DUMMY_SP { + next.sp = self.prev_span; } + next } /// Convert a token to a string using self's reader |
