about summary refs log tree commit diff
path: root/src/test/ui/impl-trait
diff options
context:
space:
mode:
authorEsteban Küber <esteban@kuber.com.ar>2017-06-03 17:06:46 -0700
committerEsteban Küber <esteban@kuber.com.ar>2017-06-04 12:56:57 -0700
commit397972f5b032b848dd8ba2d13e851be0bf9c1ffa (patch)
tree7df2c83f4f17455b5abf0c2b182b16d769de4e1b /src/test/ui/impl-trait
parente935acfa5c8240305119372a596bd563b0b0fb2c (diff)
downloadrust-397972f5b032b848dd8ba2d13e851be0bf9c1ffa.tar.gz
rust-397972f5b032b848dd8ba2d13e851be0bf9c1ffa.zip
Separate suggestion in a `help` and a `note`
Diffstat (limited to 'src/test/ui/impl-trait')
-rw-r--r--src/test/ui/impl-trait/issue-21659-show-relevant-trait-impls-3.stderr3
-rw-r--r--src/test/ui/impl-trait/method-suggestion-no-duplication.stderr3
-rw-r--r--src/test/ui/impl-trait/no-method-suggested-traits.stderr54
3 files changed, 40 insertions, 20 deletions
diff --git a/src/test/ui/impl-trait/issue-21659-show-relevant-trait-impls-3.stderr b/src/test/ui/impl-trait/issue-21659-show-relevant-trait-impls-3.stderr
index 38a1337c9b9..1b1e0eaf203 100644
--- a/src/test/ui/impl-trait/issue-21659-show-relevant-trait-impls-3.stderr
+++ b/src/test/ui/impl-trait/issue-21659-show-relevant-trait-impls-3.stderr
@@ -4,7 +4,8 @@ error[E0599]: no method named `foo` found for type `Bar` in the current scope
 30 |     f1.foo(1usize);
    |        ^^^
    |
-   = help: items from traits can only be used if the trait is implemented and in scope; the following trait defines an item `foo`, perhaps you need to implement it:
+   = help: items from traits can only be used if the trait is implemented and in scope
+   = note: the following trait defines an item `foo`, perhaps you need to implement it:
            candidate #1: `Foo`
 
 error: aborting due to previous error(s)
diff --git a/src/test/ui/impl-trait/method-suggestion-no-duplication.stderr b/src/test/ui/impl-trait/method-suggestion-no-duplication.stderr
index a548924815a..fa08c3bee9c 100644
--- a/src/test/ui/impl-trait/method-suggestion-no-duplication.stderr
+++ b/src/test/ui/impl-trait/method-suggestion-no-duplication.stderr
@@ -4,7 +4,8 @@ error[E0599]: no method named `is_empty` found for type `Foo` in the current sco
 19 |     foo(|s| s.is_empty());
    |               ^^^^^^^^
    |
-   = help: items from traits can only be used if the trait is implemented and in scope; the following traits define an item `is_empty`, perhaps you need to implement one of them:
+   = help: items from traits can only be used if the trait is implemented and in scope
+   = note: the following traits define an item `is_empty`, perhaps you need to implement one of them:
            candidate #1: `std::iter::ExactSizeIterator`
            candidate #2: `core::slice::SliceExt`
            candidate #3: `core::str::StrExt`
diff --git a/src/test/ui/impl-trait/no-method-suggested-traits.stderr b/src/test/ui/impl-trait/no-method-suggested-traits.stderr
index ab5f6b6c6c8..95d3007a4fb 100644
--- a/src/test/ui/impl-trait/no-method-suggested-traits.stderr
+++ b/src/test/ui/impl-trait/no-method-suggested-traits.stderr
@@ -4,7 +4,8 @@ error[E0599]: no method named `method` found for type `u32` in the current scope
 33 |     1u32.method();
    |          ^^^^^^
    |
-   = help: items from traits can only be used if the trait is in scope; the following traits are implemented but not in scope, perhaps add a `use` for one of them:
+   = help: items from traits can only be used if the trait is in scope
+   = note: the following traits are implemented but not in scope, perhaps add a `use` for one of them:
            candidate #1: `use foo::Bar;`
            candidate #2: `use no_method_suggested_traits::foo::PubPub;`
 
@@ -14,7 +15,8 @@ error[E0599]: no method named `method` found for type `std::rc::Rc<&mut std::box
 38 |     std::rc::Rc::new(&mut Box::new(&1u32)).method();
    |                                            ^^^^^^
    |
-   = help: items from traits can only be used if the trait is in scope; the following traits are implemented but not in scope, perhaps add a `use` for one of them:
+   = help: items from traits can only be used if the trait is in scope
+   = note: the following traits are implemented but not in scope, perhaps add a `use` for one of them:
            candidate #1: `use foo::Bar;`
            candidate #2: `use no_method_suggested_traits::foo::PubPub;`
 
@@ -24,7 +26,8 @@ error[E0599]: no method named `method` found for type `char` in the current scop
 44 |     'a'.method();
    |         ^^^^^^
    |
-   = help: items from traits can only be used if the trait is in scope; the following trait is implemented but not in scope, perhaps add a `use` for it:
+   = help: items from traits can only be used if the trait is in scope
+   = note: the following trait is implemented but not in scope, perhaps add a `use` for it:
            candidate #1: `use foo::Bar;`
 
 error[E0599]: no method named `method` found for type `std::rc::Rc<&mut std::boxed::Box<&char>>` in the current scope
@@ -33,7 +36,8 @@ error[E0599]: no method named `method` found for type `std::rc::Rc<&mut std::box
 48 |     std::rc::Rc::new(&mut Box::new(&'a')).method();
    |                                           ^^^^^^
    |
-   = help: items from traits can only be used if the trait is in scope; the following trait is implemented but not in scope, perhaps add a `use` for it:
+   = help: items from traits can only be used if the trait is in scope
+   = note: the following trait is implemented but not in scope, perhaps add a `use` for it:
            candidate #1: `use foo::Bar;`
 
 error[E0599]: no method named `method` found for type `i32` in the current scope
@@ -42,7 +46,8 @@ error[E0599]: no method named `method` found for type `i32` in the current scope
 53 |     1i32.method();
    |          ^^^^^^
    |
-   = help: items from traits can only be used if the trait is in scope; the following trait is implemented but not in scope, perhaps add a `use` for it:
+   = help: items from traits can only be used if the trait is in scope
+   = note: the following trait is implemented but not in scope, perhaps add a `use` for it:
            candidate #1: `use no_method_suggested_traits::foo::PubPub;`
 
 error[E0599]: no method named `method` found for type `std::rc::Rc<&mut std::boxed::Box<&i32>>` in the current scope
@@ -51,7 +56,8 @@ error[E0599]: no method named `method` found for type `std::rc::Rc<&mut std::box
 57 |     std::rc::Rc::new(&mut Box::new(&1i32)).method();
    |                                            ^^^^^^
    |
-   = help: items from traits can only be used if the trait is in scope; the following trait is implemented but not in scope, perhaps add a `use` for it:
+   = help: items from traits can only be used if the trait is in scope
+   = note: the following trait is implemented but not in scope, perhaps add a `use` for it:
            candidate #1: `use no_method_suggested_traits::foo::PubPub;`
 
 error[E0599]: no method named `method` found for type `Foo` in the current scope
@@ -60,7 +66,8 @@ error[E0599]: no method named `method` found for type `Foo` in the current scope
 62 |     Foo.method();
    |         ^^^^^^
    |
-   = help: items from traits can only be used if the trait is implemented and in scope; the following traits define an item `method`, perhaps you need to implement one of them:
+   = help: items from traits can only be used if the trait is implemented and in scope
+   = note: the following traits define an item `method`, perhaps you need to implement one of them:
            candidate #1: `foo::Bar`
            candidate #2: `no_method_suggested_traits::foo::PubPub`
            candidate #3: `no_method_suggested_traits::bar::PubPriv`
@@ -74,7 +81,8 @@ error[E0599]: no method named `method` found for type `std::rc::Rc<&mut std::box
 71 |     std::rc::Rc::new(&mut Box::new(&Foo)).method();
    |                                           ^^^^^^
    |
-   = help: items from traits can only be used if the trait is implemented and in scope; the following traits define an item `method`, perhaps you need to implement one of them:
+   = help: items from traits can only be used if the trait is implemented and in scope
+   = note: the following traits define an item `method`, perhaps you need to implement one of them:
            candidate #1: `foo::Bar`
            candidate #2: `no_method_suggested_traits::foo::PubPub`
            candidate #3: `no_method_suggested_traits::bar::PubPriv`
@@ -88,7 +96,8 @@ error[E0599]: no method named `method2` found for type `u64` in the current scop
 81 |     1u64.method2();
    |          ^^^^^^^
    |
-   = help: items from traits can only be used if the trait is implemented and in scope; the following trait defines an item `method2`, perhaps you need to implement it:
+   = help: items from traits can only be used if the trait is implemented and in scope
+   = note: the following trait defines an item `method2`, perhaps you need to implement it:
            candidate #1: `foo::Bar`
 
 error[E0599]: no method named `method2` found for type `std::rc::Rc<&mut std::boxed::Box<&u64>>` in the current scope
@@ -97,7 +106,8 @@ error[E0599]: no method named `method2` found for type `std::rc::Rc<&mut std::bo
 85 |     std::rc::Rc::new(&mut Box::new(&1u64)).method2();
    |                                            ^^^^^^^
    |
-   = help: items from traits can only be used if the trait is implemented and in scope; the following trait defines an item `method2`, perhaps you need to implement it:
+   = help: items from traits can only be used if the trait is implemented and in scope
+   = note: the following trait defines an item `method2`, perhaps you need to implement it:
            candidate #1: `foo::Bar`
 
 error[E0599]: no method named `method2` found for type `no_method_suggested_traits::Foo` in the current scope
@@ -106,7 +116,8 @@ error[E0599]: no method named `method2` found for type `no_method_suggested_trai
 90 |     no_method_suggested_traits::Foo.method2();
    |                                     ^^^^^^^
    |
-   = help: items from traits can only be used if the trait is implemented and in scope; the following trait defines an item `method2`, perhaps you need to implement it:
+   = help: items from traits can only be used if the trait is implemented and in scope
+   = note: the following trait defines an item `method2`, perhaps you need to implement it:
            candidate #1: `foo::Bar`
 
 error[E0599]: no method named `method2` found for type `std::rc::Rc<&mut std::boxed::Box<&no_method_suggested_traits::Foo>>` in the current scope
@@ -115,7 +126,8 @@ error[E0599]: no method named `method2` found for type `std::rc::Rc<&mut std::bo
 94 |     std::rc::Rc::new(&mut Box::new(&no_method_suggested_traits::Foo)).method2();
    |                                                                       ^^^^^^^
    |
-   = help: items from traits can only be used if the trait is implemented and in scope; the following trait defines an item `method2`, perhaps you need to implement it:
+   = help: items from traits can only be used if the trait is implemented and in scope
+   = note: the following trait defines an item `method2`, perhaps you need to implement it:
            candidate #1: `foo::Bar`
 
 error[E0599]: no method named `method2` found for type `no_method_suggested_traits::Bar` in the current scope
@@ -124,7 +136,8 @@ error[E0599]: no method named `method2` found for type `no_method_suggested_trai
 98 |     no_method_suggested_traits::Bar::X.method2();
    |                                        ^^^^^^^
    |
-   = help: items from traits can only be used if the trait is implemented and in scope; the following trait defines an item `method2`, perhaps you need to implement it:
+   = help: items from traits can only be used if the trait is implemented and in scope
+   = note: the following trait defines an item `method2`, perhaps you need to implement it:
            candidate #1: `foo::Bar`
 
 error[E0599]: no method named `method2` found for type `std::rc::Rc<&mut std::boxed::Box<&no_method_suggested_traits::Bar>>` in the current scope
@@ -133,7 +146,8 @@ error[E0599]: no method named `method2` found for type `std::rc::Rc<&mut std::bo
 102 |     std::rc::Rc::new(&mut Box::new(&no_method_suggested_traits::Bar::X)).method2();
     |                                                                          ^^^^^^^
     |
-    = help: items from traits can only be used if the trait is implemented and in scope; the following trait defines an item `method2`, perhaps you need to implement it:
+    = help: items from traits can only be used if the trait is implemented and in scope
+    = note: the following trait defines an item `method2`, perhaps you need to implement it:
             candidate #1: `foo::Bar`
 
 error[E0599]: no method named `method3` found for type `Foo` in the current scope
@@ -142,7 +156,8 @@ error[E0599]: no method named `method3` found for type `Foo` in the current scop
 107 |     Foo.method3();
     |         ^^^^^^^
     |
-    = help: items from traits can only be used if the trait is implemented and in scope; the following trait defines an item `method3`, perhaps you need to implement it:
+    = help: items from traits can only be used if the trait is implemented and in scope
+    = note: the following trait defines an item `method3`, perhaps you need to implement it:
             candidate #1: `no_method_suggested_traits::foo::PubPub`
 
 error[E0599]: no method named `method3` found for type `std::rc::Rc<&mut std::boxed::Box<&Foo>>` in the current scope
@@ -151,7 +166,8 @@ error[E0599]: no method named `method3` found for type `std::rc::Rc<&mut std::bo
 111 |     std::rc::Rc::new(&mut Box::new(&Foo)).method3();
     |                                           ^^^^^^^
     |
-    = help: items from traits can only be used if the trait is implemented and in scope; the following trait defines an item `method3`, perhaps you need to implement it:
+    = help: items from traits can only be used if the trait is implemented and in scope
+    = note: the following trait defines an item `method3`, perhaps you need to implement it:
             candidate #1: `no_method_suggested_traits::foo::PubPub`
 
 error[E0599]: no method named `method3` found for type `Bar` in the current scope
@@ -160,7 +176,8 @@ error[E0599]: no method named `method3` found for type `Bar` in the current scop
 115 |     Bar::X.method3();
     |            ^^^^^^^
     |
-    = help: items from traits can only be used if the trait is implemented and in scope; the following trait defines an item `method3`, perhaps you need to implement it:
+    = help: items from traits can only be used if the trait is implemented and in scope
+    = note: the following trait defines an item `method3`, perhaps you need to implement it:
             candidate #1: `no_method_suggested_traits::foo::PubPub`
 
 error[E0599]: no method named `method3` found for type `std::rc::Rc<&mut std::boxed::Box<&Bar>>` in the current scope
@@ -169,7 +186,8 @@ error[E0599]: no method named `method3` found for type `std::rc::Rc<&mut std::bo
 119 |     std::rc::Rc::new(&mut Box::new(&Bar::X)).method3();
     |                                              ^^^^^^^
     |
-    = help: items from traits can only be used if the trait is implemented and in scope; the following trait defines an item `method3`, perhaps you need to implement it:
+    = help: items from traits can only be used if the trait is implemented and in scope
+    = note: the following trait defines an item `method3`, perhaps you need to implement it:
             candidate #1: `no_method_suggested_traits::foo::PubPub`
 
 error[E0599]: no method named `method3` found for type `usize` in the current scope