diff --git a/crates/ra_syntax/src/ast/expr_extensions.rs b/crates/ra_syntax/src/ast/expr_extensions.rs index e609e02dc7..c91dd2bf4b 100644 --- a/crates/ra_syntax/src/ast/expr_extensions.rs +++ b/crates/ra_syntax/src/ast/expr_extensions.rs @@ -322,6 +322,11 @@ impl ast::Literal { match token.kind() { INT_NUMBER => { + // FYI: there was a bug here previously, thus an if statement here is necessary. + // The lexer treated e.g. `1f64` as an integer literal. See + // https://github.com/rust-analyzer/rust-analyzer/issues/1592 + // and the comments on the linked PR. + let text = token.text(); if let suffix @ Some(_) = Self::find_suffix(&text, &FLOAT_SUFFIXES) {