aboutsummaryrefslogtreecommitdiff
path: root/crates
diff options
context:
space:
mode:
authorFlorian Diebold <[email protected]>2020-03-15 13:03:30 +0000
committerFlorian Diebold <[email protected]>2020-03-16 17:38:19 +0000
commite6ec4a329fedb354e64c0e0dea9b7651cab78960 (patch)
tree6171c9ea650cb69613a84140cec9c204d50374cd /crates
parent035db0fbb94e35c78cc76798844db06bd6ad8451 (diff)
Better fix for stuck parser?
Diffstat (limited to 'crates')
-rw-r--r--crates/ra_parser/src/grammar/expressions/atom.rs6
1 files changed, 3 insertions, 3 deletions
diff --git a/crates/ra_parser/src/grammar/expressions/atom.rs b/crates/ra_parser/src/grammar/expressions/atom.rs
index 2fc6ce1e1..2335d99b3 100644
--- a/crates/ra_parser/src/grammar/expressions/atom.rs
+++ b/crates/ra_parser/src/grammar/expressions/atom.rs
@@ -61,7 +61,7 @@ pub(super) const ATOM_EXPR_FIRST: TokenSet =
61 LIFETIME, 61 LIFETIME,
62 ]); 62 ]);
63 63
64const EXPR_RECOVERY_SET: TokenSet = token_set![LET_KW]; 64const EXPR_RECOVERY_SET: TokenSet = token_set![LET_KW, R_DOLLAR];
65 65
66pub(super) fn atom_expr(p: &mut Parser, r: Restrictions) -> Option<(CompletedMarker, BlockLike)> { 66pub(super) fn atom_expr(p: &mut Parser, r: Restrictions) -> Option<(CompletedMarker, BlockLike)> {
67 if let Some(m) = literal(p) { 67 if let Some(m) = literal(p) {
@@ -565,10 +565,10 @@ fn meta_var_expr(p: &mut Parser) -> CompletedMarker {
565 it 565 it
566 } 566 }
567 _ => { 567 _ => {
568 while !p.at(EOF) && !p.at(R_DOLLAR) { 568 while !p.at(R_DOLLAR) {
569 p.bump_any() 569 p.bump_any()
570 } 570 }
571 p.eat(R_DOLLAR); 571 p.bump(R_DOLLAR);
572 m.complete(p, ERROR) 572 m.complete(p, ERROR)
573 } 573 }
574 } 574 }