diff options
| author | Jeffrey Seyfried <jeffrey.seyfried@gmail.com> | 2016-03-31 04:44:04 +0000 |
|---|---|---|
| committer | Jeffrey Seyfried <jeffrey.seyfried@gmail.com> | 2016-03-31 05:12:10 +0000 |
| commit | 6f09deaa32ba8a4f26a46c28ffecbb3efc3d165e (patch) | |
| tree | cef41d1da48ba08c8f4477009b3383b606fd0e03 /src | |
| parent | 3d9db595661a96c37f4a5f9cf310c20da08efa5f (diff) | |
| download | rust-6f09deaa32ba8a4f26a46c28ffecbb3efc3d165e.tar.gz rust-6f09deaa32ba8a4f26a46c28ffecbb3efc3d165e.zip | |
Fix suggestions
Diffstat (limited to 'src')
| -rw-r--r-- | src/librustc_resolve/resolve_imports.rs | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/librustc_resolve/resolve_imports.rs b/src/librustc_resolve/resolve_imports.rs index 2f7de8c4aa4..2aa8925fb54 100644 --- a/src/librustc_resolve/resolve_imports.rs +++ b/src/librustc_resolve/resolve_imports.rs @@ -537,8 +537,14 @@ impl<'a, 'b:'a, 'tcx:'b> ImportResolver<'a, 'b, 'tcx> { match (&value_result, &type_result) { (&Indeterminate, _) | (_, &Indeterminate) => return Indeterminate, (&Failed(_), &Failed(_)) => { - let children = target_module.resolutions.borrow(); - let names = children.keys().map(|&(ref name, _)| name); + let resolutions = target_module.resolutions.borrow(); + let names = resolutions.iter().filter_map(|(&(ref name, _), resolution)| { + match *resolution.borrow() { + NameResolution { binding: Some(_), .. } => Some(name), + NameResolution { single_imports: SingleImports::None, .. } => None, + _ => Some(name), + } + }); let lev_suggestion = match find_best_match_for_name(names, &source.as_str(), None) { Some(name) => format!(". Did you mean to use `{}`?", name), None => "".to_owned(), |
