Skip to content

Commit

Permalink
Do not suggest things named underscore
Browse files Browse the repository at this point in the history
  • Loading branch information
JohnTitor committed Feb 1, 2020
1 parent 64184a3 commit 726568b
Show file tree
Hide file tree
Showing 3 changed files with 35 additions and 0 deletions.
5 changes: 5 additions & 0 deletions src/librustc_resolve/diagnostics.rs
Original file line number Diff line number Diff line change
Expand Up @@ -769,6 +769,11 @@ impl<'a> Resolver<'a> {
span: Span,
) -> bool {
if let Some(suggestion) = suggestion {
// We shouldn't suggest underscore.
if suggestion.candidate == kw::Underscore {
return false;
}

let msg = format!(
"{} {} with a similar name exists",
suggestion.res.article(),
Expand Down
14 changes: 14 additions & 0 deletions src/test/ui/resolve/typo-suggestion-named-underscore.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
const _: () = ();

fn main() {
a // Shouldn't suggest underscore
//~^ ERROR: cannot find value `a` in this scope
}

trait Unknown {}

#[allow(unused_imports)]
use Unknown as _;

fn foo<T: A>(x: T) {} // Shouldn't suggest underscore
//~^ ERROR: cannot find trait `A` in this scope
16 changes: 16 additions & 0 deletions src/test/ui/resolve/typo-suggestion-named-underscore.stderr
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
error[E0425]: cannot find value `a` in this scope
--> $DIR/typo-suggestion-named-underscore.rs:4:5
|
LL | a // Shouldn't suggest underscore
| ^ not found in this scope

error[E0405]: cannot find trait `A` in this scope
--> $DIR/typo-suggestion-named-underscore.rs:13:11
|
LL | fn foo<T: A>(x: T) {} // Shouldn't suggest underscore
| ^ not found in this scope

error: aborting due to 2 previous errors

Some errors have detailed explanations: E0405, E0425.
For more information about an error, try `rustc --explain E0405`.

0 comments on commit 726568b

Please sign in to comment.