Auto merge of #12185 - Veykril:parse-fix, r=Veykril

fix: Remap float parts as integers when parsed as indices

cc https://github.com/rust-lang/rust-analyzer/pull/12149
This commit is contained in:
bors 2022-05-07 10:53:37 +00:00
commit 6f6e4efc3b
2 changed files with 5 additions and 5 deletions

View file

@ -323,8 +323,8 @@ fn name_ref_or_index(p: &mut Parser) {
p.at(IDENT) || p.at(INT_NUMBER) || p.at(FLOAT_NUMBER_PART) || p.at_ts(FLOAT_LITERAL_FIRST)
);
let m = p.start();
if p.at_ts(FLOAT_LITERAL_FIRST) {
p.bump_remap(FLOAT_NUMBER_PART);
if p.at(FLOAT_NUMBER_PART) || p.at_ts(FLOAT_LITERAL_FIRST) {
p.bump_remap(INT_NUMBER);
} else {
p.bump_any();
}

View file

@ -50,7 +50,7 @@ SOURCE_FILE
IDENT "x"
DOT "."
NAME_REF
FLOAT_NUMBER_PART "0"
INT_NUMBER "0"
DOT "."
WHITESPACE " "
NAME_REF
@ -67,10 +67,10 @@ SOURCE_FILE
IDENT "x"
DOT "."
NAME_REF
FLOAT_NUMBER_PART "0"
INT_NUMBER "0"
DOT "."
NAME_REF
FLOAT_NUMBER_PART "1"
INT_NUMBER "1"
SEMICOLON ";"
WHITESPACE "\n "
EXPR_STMT