diff options
| author | Corey Richardson <corey@octayn.net> | 2013-04-26 04:59:28 -0400 |
|---|---|---|
| committer | Corey Richardson <corey@octayn.net> | 2013-04-26 04:59:28 -0400 |
| commit | b085b51357769acb68f6ba10d30df5a98e04c418 (patch) | |
| tree | 7aa75a7f2eab6d932d258600367bde7dd8ab2865 | |
| parent | 0604468fd540b4356ba28bf9a6d26b56b73d5b3b (diff) | |
| download | rust-b085b51357769acb68f6ba10d30df5a98e04c418.tar.gz rust-b085b51357769acb68f6ba10d30df5a98e04c418.zip | |
Offer a hint on some unresolved imports
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.
| -rw-r--r-- | src/librustc/middle/resolve.rs | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/librustc/middle/resolve.rs b/src/librustc/middle/resolve.rs index 83db3a408ea..19ea607f8a0 100644 --- a/src/librustc/middle/resolve.rs +++ b/src/librustc/middle/resolve.rs @@ -2996,7 +2996,14 @@ pub impl Resolver { 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. |
