Skip to content

Commit

Permalink
Add raw identifier in a typo suggestion
Browse files Browse the repository at this point in the history
  • Loading branch information
linyihai committed Apr 29, 2024
1 parent aed2187 commit 589c2fe
Show file tree
Hide file tree
Showing 3 changed files with 30 additions and 1 deletion.
2 changes: 1 addition & 1 deletion compiler/rustc_resolve/src/diagnostics.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1617,7 +1617,7 @@ impl<'a, 'tcx> Resolver<'a, 'tcx> {
let post = format!(", consider renaming `{}` into `{snippet}`", suggestion.candidate);
(span, snippet, post)
} else {
(span, suggestion.candidate.to_string(), String::new())
(span, suggestion.candidate.to_ident_string(), String::new())
};
let msg = match suggestion.target {
SuggestionTarget::SimilarlyNamed => format!(
Expand Down
11 changes: 11 additions & 0 deletions tests/ui/span/suggestion-raw-68962.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
fn r#fn() {}

fn main() {
let r#final = 1;

// Should correctly suggest variable defined using raw identifier.
fina; //~ ERROR cannot find value

// Should correctly suggest function defined using raw identifier.
f(); //~ ERROR cannot find function
}
18 changes: 18 additions & 0 deletions tests/ui/span/suggestion-raw-68962.stderr
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
error[E0425]: cannot find value `fina` in this scope
--> $DIR/suggestion-raw-68962.rs:7:5
|
LL | fina;
| ^^^^ help: a local variable with a similar name exists: `r#final`

error[E0425]: cannot find function `f` in this scope
--> $DIR/suggestion-raw-68962.rs:10:5
|
LL | fn r#fn() {}
| --------- similarly named function `r#fn` defined here
...
LL | f();
| ^ help: a function with a similar name exists: `r#fn`

error: aborting due to 2 previous errors

For more information about this error, try `rustc --explain E0425`.

0 comments on commit 589c2fe

Please sign in to comment.