diff options
| author | Corey Richardson <corey@octayn.net> | 2013-05-14 14:19:59 -0400 |
|---|---|---|
| committer | Corey Richardson <corey@octayn.net> | 2013-05-14 18:52:31 -0400 |
| commit | 62cbea1ca1441a7d9c97d3c2aa36f9fa546ad9a4 (patch) | |
| tree | 0e7af780d37af4bc2c8ca492984c57e9aecdc1e8 | |
| parent | 52f8b22d4f304abd6227f1476396b0a3a94e241f (diff) | |
| download | rust-62cbea1ca1441a7d9c97d3c2aa36f9fa546ad9a4.tar.gz rust-62cbea1ca1441a7d9c97d3c2aa36f9fa546ad9a4.zip | |
Add span to some import resolution errors
| -rw-r--r-- | src/librustc/middle/resolve.rs | 18 | ||||
| -rw-r--r-- | src/test/compile-fail/unresolved-import.rs | 6 |
2 files changed, 13 insertions, 11 deletions
diff --git a/src/librustc/middle/resolve.rs b/src/librustc/middle/resolve.rs index 95b8281d4b2..90a153996dc 100644 --- a/src/librustc/middle/resolve.rs +++ b/src/librustc/middle/resolve.rs @@ -2058,7 +2058,8 @@ pub impl Resolver { self.resolve_single_import(module_, containing_module, target, - source); + source, + span); } GlobImport => { let span = import_directive.span; @@ -2121,7 +2122,8 @@ pub impl Resolver { module_: @mut Module, containing_module: @mut Module, target: ident, - source: ident) + source: ident, + span: span) -> ResolveResult<()> { debug!("(resolving single import) resolving `%s` = `%s::%s` from \ `%s`", @@ -2325,14 +2327,14 @@ pub impl Resolver { } if resolve_fail { - self.session.err(fmt!("unresolved import: there is no `%s` in `%s`", - *self.session.str_of(source), - self.module_to_str(containing_module))); + self.session.span_err(span, fmt!("unresolved import: there is no `%s` in `%s`", + *self.session.str_of(source), + self.module_to_str(containing_module))); return Failed; } else if priv_fail { - self.session.err(fmt!("unresolved import: found `%s` in `%s` but it is private", - *self.session.str_of(source), - self.module_to_str(containing_module))); + self.session.span_err(span, fmt!("unresolved import: found `%s` in `%s` but it is \ + private", *self.session.str_of(source), + self.module_to_str(containing_module))); return Failed; } diff --git a/src/test/compile-fail/unresolved-import.rs b/src/test/compile-fail/unresolved-import.rs index 9c5ff311b0d..fc69c34c118 100644 --- a/src/test/compile-fail/unresolved-import.rs +++ b/src/test/compile-fail/unresolved-import.rs @@ -9,9 +9,9 @@ // except according to those terms. use foo::bar; //~ ERROR unresolved import. maybe a missing `extern mod foo`? - //~^ ERROR failed to resolve import -use x = bar::baz; //~ ERROR unresolved import: could not find `baz` in `bar` - //~^ ERROR failed to resolve import + //~^ ERROR failed to resolve import `foo::bar` +use x = bar::baz; //~ ERROR unresolved import: there is no `baz` in `bar` + //~^ ERROR failed to resolve import `bar::baz` mod bar { struct bar; |
