about summary refs log tree commit diff
path: root/src/test/compile-fail
diff options
context:
space:
mode:
authorEsteban Küber <esteban@kuber.com.ar>2017-07-23 15:15:45 -0700
committerEsteban Küber <esteban@kuber.com.ar>2017-07-25 21:25:43 -0700
commit552ff07758545173c94fa260e5266ec07cd0bbde (patch)
tree3225fb58a55ba166871654f9bc3d1aefbb037b8e /src/test/compile-fail
parent6c949655de6bd2866d7d4bbac0238f35557563fc (diff)
downloadrust-552ff07758545173c94fa260e5266ec07cd0bbde.tar.gz
rust-552ff07758545173c94fa260e5266ec07cd0bbde.zip
Point at path segment on module not found
Point at the correct path segment on a import statement where a module
doesn't exist.

New output:

```rust
error[E0432]: unresolved import `std::bar`
 --> <anon>:1:10
  |
1 | use std::bar::{foo1, foo2};
  |          ^^^ Could not find `bar` in `std`
```

instead of:

```rust
error[E0432]: unresolved import `std::bar::foo1`
 --> <anon>:1:16
  |
1 | use std::bar::{foo1, foo2};
  |                ^^^^ Could not find `bar` in `std`

error[E0432]: unresolved import `std::bar::foo2`
 --> <anon>:1:22
  |
1 | use std::bar::{foo1, foo2};
  |                      ^^^^ Could not find `bar` in `std`
```
Diffstat (limited to 'src/test/compile-fail')
-rw-r--r--src/test/compile-fail/dollar-crate-is-keyword-2.rs2
-rw-r--r--src/test/compile-fail/import2.rs2
-rw-r--r--src/test/compile-fail/issue-1697.rs2
-rw-r--r--src/test/compile-fail/issue-30560.rs4
-rw-r--r--src/test/compile-fail/issue-33464.rs9
-rw-r--r--src/test/compile-fail/resolve_self_super_hint.rs8
-rw-r--r--src/test/compile-fail/super-at-top-level.rs2
-rw-r--r--src/test/compile-fail/unresolved-import.rs6
-rw-r--r--src/test/compile-fail/use-from-trait-xc.rs6
-rw-r--r--src/test/compile-fail/use-from-trait.rs4
-rw-r--r--src/test/compile-fail/use-mod-4.rs2
11 files changed, 22 insertions, 25 deletions
diff --git a/src/test/compile-fail/dollar-crate-is-keyword-2.rs b/src/test/compile-fail/dollar-crate-is-keyword-2.rs
index e221fc6e9e0..ac96279d614 100644
--- a/src/test/compile-fail/dollar-crate-is-keyword-2.rs
+++ b/src/test/compile-fail/dollar-crate-is-keyword-2.rs
@@ -13,7 +13,7 @@ mod a {}
 macro_rules! m {
     () => {
         use a::$crate; //~ ERROR unresolved import `a::$crate`
-        use a::$crate::b; //~ ERROR unresolved import `a::$crate::b`
+        use a::$crate::b; //~ ERROR unresolved import `a::$crate`
         type A = a::$crate; //~ ERROR cannot find type `$crate` in module `a`
     }
 }
diff --git a/src/test/compile-fail/import2.rs b/src/test/compile-fail/import2.rs
index f5b03f9b2e9..c4bd9ff1e2a 100644
--- a/src/test/compile-fail/import2.rs
+++ b/src/test/compile-fail/import2.rs
@@ -8,7 +8,7 @@
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
 
-use baz::zed::bar; //~ ERROR unresolved import `baz::zed::bar` [E0432]
+use baz::zed::bar; //~ ERROR unresolved import `baz::zed` [E0432]
                    //~^ Could not find `zed` in `baz`
 
 mod baz {}
diff --git a/src/test/compile-fail/issue-1697.rs b/src/test/compile-fail/issue-1697.rs
index 1375200271c..f8a68264339 100644
--- a/src/test/compile-fail/issue-1697.rs
+++ b/src/test/compile-fail/issue-1697.rs
@@ -10,7 +10,7 @@
 
 // Testing that we don't fail abnormally after hitting the errors
 
-use unresolved::*; //~ ERROR unresolved import `unresolved::*` [E0432]
+use unresolved::*; //~ ERROR unresolved import `unresolved` [E0432]
                    //~^ Maybe a missing `extern crate unresolved;`?
 
 fn main() {}
diff --git a/src/test/compile-fail/issue-30560.rs b/src/test/compile-fail/issue-30560.rs
index b0cfd8714fc..0b1afd75ca9 100644
--- a/src/test/compile-fail/issue-30560.rs
+++ b/src/test/compile-fail/issue-30560.rs
@@ -10,10 +10,10 @@
 
 type Alias = ();
 use Alias::*;
-//~^ ERROR unresolved import `Alias::*` [E0432]
+//~^ ERROR unresolved import `Alias` [E0432]
 //~| Not a module `Alias`
 use std::io::Result::*;
-//~^ ERROR unresolved import `std::io::Result::*` [E0432]
+//~^ ERROR unresolved import `std::io::Result` [E0432]
 //~| Not a module `Result`
 
 trait T {}
diff --git a/src/test/compile-fail/issue-33464.rs b/src/test/compile-fail/issue-33464.rs
index 992bd33ea2e..b7dbaf20eca 100644
--- a/src/test/compile-fail/issue-33464.rs
+++ b/src/test/compile-fail/issue-33464.rs
@@ -11,13 +11,10 @@
 // Make sure that the spans of import errors are correct.
 
 use abc::one_el;
-//~^ ERROR 13:5: 13:16
+//~^ ERROR 13:5: 13:8
 use abc::{a, bbb, cccccc};
-//~^ ERROR 15:11: 15:12
-//~^^ ERROR 15:14: 15:17
-//~^^^ ERROR 15:19: 15:25
+//~^ ERROR 15:5: 15:8
 use a_very_long_name::{el, el2};
-//~^ ERROR 19:24: 19:26
-//~^^ ERROR 19:28: 19:31
+//~^ ERROR 17:5: 17:21
 
 fn main() {}
diff --git a/src/test/compile-fail/resolve_self_super_hint.rs b/src/test/compile-fail/resolve_self_super_hint.rs
index d49f136f11f..09951348448 100644
--- a/src/test/compile-fail/resolve_self_super_hint.rs
+++ b/src/test/compile-fail/resolve_self_super_hint.rs
@@ -13,19 +13,19 @@
 mod a {
     extern crate alloc;
     use alloc::HashMap;
-    //~^ ERROR unresolved import `alloc::HashMap` [E0432]
+    //~^ ERROR unresolved import `alloc` [E0432]
     //~| Did you mean `self::alloc`?
     mod b {
         use alloc::HashMap;
-        //~^ ERROR unresolved import `alloc::HashMap` [E0432]
+        //~^ ERROR unresolved import `alloc` [E0432]
         //~| Did you mean `a::alloc`?
         mod c {
             use alloc::HashMap;
-            //~^ ERROR unresolved import `alloc::HashMap` [E0432]
+            //~^ ERROR unresolved import `alloc` [E0432]
             //~| Did you mean `a::alloc`?
             mod d {
                 use alloc::HashMap;
-                //~^ ERROR unresolved import `alloc::HashMap` [E0432]
+                //~^ ERROR unresolved import `alloc` [E0432]
                 //~| Did you mean `a::alloc`?
             }
         }
diff --git a/src/test/compile-fail/super-at-top-level.rs b/src/test/compile-fail/super-at-top-level.rs
index 7d11ff6c9b5..4db673e2006 100644
--- a/src/test/compile-fail/super-at-top-level.rs
+++ b/src/test/compile-fail/super-at-top-level.rs
@@ -8,7 +8,7 @@
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
 
-use super::f; //~ ERROR unresolved import `super::f` [E0432]
+use super::f; //~ ERROR unresolved import `super` [E0432]
               //~^ There are too many initial `super`s.
 
 fn main() {
diff --git a/src/test/compile-fail/unresolved-import.rs b/src/test/compile-fail/unresolved-import.rs
index 47490af0ff3..a3eeb6de96b 100644
--- a/src/test/compile-fail/unresolved-import.rs
+++ b/src/test/compile-fail/unresolved-import.rs
@@ -10,7 +10,7 @@
 
 // ignore-tidy-linelength
 
-use foo::bar; //~ ERROR unresolved import `foo::bar` [E0432]
+use foo::bar; //~ ERROR unresolved import `foo` [E0432]
               //~^ Maybe a missing `extern crate foo;`?
 
 use bar::Baz as x; //~ ERROR unresolved import `bar::Baz` [E0432]
@@ -41,7 +41,7 @@ mod m {
         MyVariant
     }
 
-    use MyEnum::*; //~ ERROR unresolved import `MyEnum::*` [E0432]
+    use MyEnum::*; //~ ERROR unresolved import `MyEnum` [E0432]
                    //~^ Did you mean `self::MyEnum`?
 }
 
@@ -50,7 +50,7 @@ mod items {
         Variant
     }
 
-    use Enum::*; //~ ERROR unresolved import `Enum::*` [E0432]
+    use Enum::*; //~ ERROR unresolved import `Enum` [E0432]
                  //~^ Did you mean `self::Enum`?
 
     fn item() {}
diff --git a/src/test/compile-fail/use-from-trait-xc.rs b/src/test/compile-fail/use-from-trait-xc.rs
index a40fa233721..3848b6814d9 100644
--- a/src/test/compile-fail/use-from-trait-xc.rs
+++ b/src/test/compile-fail/use-from-trait-xc.rs
@@ -22,13 +22,13 @@ use use_from_trait_xc::Trait::CONST;
 //~^ ERROR `CONST` is not directly importable
 
 use use_from_trait_xc::Foo::new; //~ ERROR struct `Foo` is private
-//~^ ERROR unresolved import `use_from_trait_xc::Foo::new`
+//~^ ERROR unresolved import `use_from_trait_xc::Foo`
 
 use use_from_trait_xc::Foo::C; //~ ERROR struct `Foo` is private
-//~^ ERROR unresolved import `use_from_trait_xc::Foo::C`
+//~^ ERROR unresolved import `use_from_trait_xc::Foo`
 
 use use_from_trait_xc::Bar::new as bnew;
-//~^ ERROR unresolved import `use_from_trait_xc::Bar::new`
+//~^ ERROR unresolved import `use_from_trait_xc::Bar`
 
 use use_from_trait_xc::Baz::new as baznew;
 //~^ ERROR unresolved import `use_from_trait_xc::Baz::new`
diff --git a/src/test/compile-fail/use-from-trait.rs b/src/test/compile-fail/use-from-trait.rs
index 33adc2b5bfe..29db949acd0 100644
--- a/src/test/compile-fail/use-from-trait.rs
+++ b/src/test/compile-fail/use-from-trait.rs
@@ -17,11 +17,11 @@ use Trait::C;
 //~^ ERROR `C` is not directly importable
 
 use Foo::new;
-//~^ ERROR unresolved import `Foo::new` [E0432]
+//~^ ERROR unresolved import `Foo` [E0432]
 //~| Not a module `Foo`
 
 use Foo::C2;
-//~^ ERROR unresolved import `Foo::C2` [E0432]
+//~^ ERROR unresolved import `Foo` [E0432]
 //~| Not a module `Foo`
 
 pub trait Trait {
diff --git a/src/test/compile-fail/use-mod-4.rs b/src/test/compile-fail/use-mod-4.rs
index f102a68c2c5..275e5ff1da6 100644
--- a/src/test/compile-fail/use-mod-4.rs
+++ b/src/test/compile-fail/use-mod-4.rs
@@ -8,7 +8,7 @@
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
 
-use foo::self; //~ ERROR unresolved import `foo::self`
+use foo::self; //~ ERROR unresolved import `foo`
 //~^ ERROR `self` imports are only allowed within a { } list
 
 use std::mem::self;