Skip to content

Commit 3dbee57

Browse files
committed
parser: Remove look_ahead_span
1 parent 6eae6b0 commit 3dbee57

File tree

2 files changed

+5
-18
lines changed

2 files changed

+5
-18
lines changed

src/libsyntax/parse/literal.rs

+4-5
Original file line numberDiff line numberDiff line change
@@ -271,14 +271,13 @@ impl<'a> Parser<'a> {
271271
let mut recovered = None;
272272
if self.token == token::Dot {
273273
// Attempt to recover `.4` as `0.4`.
274-
recovered = self.look_ahead(1, |t| {
274+
recovered = self.look_ahead(1, |next_token| {
275275
if let token::Literal(token::Lit { kind: token::Integer, symbol, suffix })
276-
= t.kind {
277-
let next_span = self.look_ahead_span(1);
278-
if self.token.span.hi() == next_span.lo() {
276+
= next_token.kind {
277+
if self.token.span.hi() == next_token.span.lo() {
279278
let s = String::from("0.") + &symbol.as_str();
280279
let kind = TokenKind::lit(token::Float, Symbol::intern(&s), suffix);
281-
return Some(Token::new(kind, self.token.span.to(next_span)));
280+
return Some(Token::new(kind, self.token.span.to(next_token.span)));
282281
}
283282
}
284283
None

src/libsyntax/parse/parser.rs

+1-13
Original file line numberDiff line numberDiff line change
@@ -1064,18 +1064,6 @@ impl<'a> Parser<'a> {
10641064
})
10651065
}
10661066

1067-
crate fn look_ahead_span(&self, dist: usize) -> Span {
1068-
if dist == 0 {
1069-
return self.token.span
1070-
}
1071-
1072-
match self.token_cursor.frame.tree_cursor.look_ahead(dist - 1) {
1073-
Some(TokenTree::Token(token)) => token.span,
1074-
Some(TokenTree::Delimited(span, ..)) => span.entire(),
1075-
None => self.look_ahead_span(dist - 1),
1076-
}
1077-
}
1078-
10791067
/// Returns whether any of the given keywords are `dist` tokens ahead of the current one.
10801068
fn is_keyword_ahead(&self, dist: usize, kws: &[Symbol]) -> bool {
10811069
self.look_ahead(dist, |t| kws.iter().any(|&kw| t.is_keyword(kw)))
@@ -3067,7 +3055,7 @@ impl<'a> Parser<'a> {
30673055
let mut err =
30683056
self.sess.span_diagnostic.struct_span_err(self.token.span, &msg);
30693057
let span_after_type = parser_snapshot_after_type.token.span;
3070-
err.span_label(self.look_ahead_span(1).to(span_after_type),
3058+
err.span_label(self.look_ahead(1, |t| t.span).to(span_after_type),
30713059
"interpreted as generic arguments");
30723060
err.span_label(self.token.span, format!("not interpreted as {}", op_noun));
30733061

0 commit comments

Comments
 (0)