about summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
authorJeffrey Seyfried <jeffrey.seyfried@gmail.com>2016-03-31 04:44:04 +0000
committerJeffrey Seyfried <jeffrey.seyfried@gmail.com>2016-03-31 05:12:10 +0000
commit6f09deaa32ba8a4f26a46c28ffecbb3efc3d165e (patch)
treecef41d1da48ba08c8f4477009b3383b606fd0e03 /src
parent3d9db595661a96c37f4a5f9cf310c20da08efa5f (diff)
downloadrust-6f09deaa32ba8a4f26a46c28ffecbb3efc3d165e.tar.gz
rust-6f09deaa32ba8a4f26a46c28ffecbb3efc3d165e.zip
Fix suggestions
Diffstat (limited to 'src')
-rw-r--r--src/librustc_resolve/resolve_imports.rs10
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(),