]> git.lizzy.rs Git - rust.git/commitdiff
Offer a hint on some unresolved imports
authorCorey Richardson <corey@octayn.net>
Fri, 26 Apr 2013 08:59:28 +0000 (04:59 -0400)
committerCorey Richardson <corey@octayn.net>
Fri, 26 Apr 2013 08:59:28 +0000 (04:59 -0400)
I didn't know how to use "use" initially, and an error message like this would
have solved quite a bit of frustration. I think this properly handles cases
where it's not appropriate but I'm not sure.

src/librustc/middle/resolve.rs

index 83db3a408eaf88290221bbf06c1087fb4d52026d..19ea607f8a07829dd203af9bb9d527787b9ae419 100644 (file)
@@ -2996,7 +2996,14 @@ fn report_unresolved_imports(@mut self, module_: @mut Module) {
         let imports: &mut ~[@ImportDirective] = &mut *module_.imports;
         let import_count = imports.len();
         if index != import_count {
-            self.session.span_err(imports[index].span, ~"unresolved import");
+            let sn = self.session.codemap.span_to_snippet(imports[index].span);
+            if str::contains(sn, "::") {
+                self.session.span_err(imports[index].span, ~"unresolved import");
+            } else {
+                let err = fmt!("unresolved import (maybe you meant `%s::*`?)",
+                               sn.slice(0, sn.len() - 1));
+                self.session.span_err(imports[index].span, err);
+            }
         }
 
         // Descend into children and anonymous children.