Preserved a comment on the bug previously present in ast::Literal::kind()
@@ -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) {
