about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--src/librustc/infer/error_reporting/nice_region_error/named_anon_conflict.rs2
-rw-r--r--src/test/ui/in-band-lifetimes/mismatched.nll.stderr2
-rw-r--r--src/test/ui/in-band-lifetimes/mismatched.stderr2
-rw-r--r--src/test/ui/in-band-lifetimes/mismatched_trait.nll.stderr2
-rw-r--r--src/test/ui/in-band-lifetimes/mismatched_trait.stderr2
-rw-r--r--src/test/ui/issue-13058.stderr2
-rw-r--r--src/test/ui/issue-14285.nll.stderr2
-rw-r--r--src/test/ui/issue-14285.stderr2
-rw-r--r--src/test/ui/issue-15034.nll.stderr2
-rw-r--r--src/test/ui/issue-15034.stderr2
-rw-r--r--src/test/ui/issue-16922.nll.stderr2
-rw-r--r--src/test/ui/issue-16922.stderr2
-rw-r--r--src/test/ui/issue-3154.nll.stderr2
-rw-r--r--src/test/ui/issue-3154.stderr2
-rw-r--r--src/test/ui/issue-40288-2.nll.stderr4
-rw-r--r--src/test/ui/issue-40288-2.stderr4
-rw-r--r--src/test/ui/issue-46983.stderr2
-rw-r--r--src/test/ui/lifetime-errors/42701_one_named_and_one_anonymous.nll.stderr2
-rw-r--r--src/test/ui/lifetime-errors/42701_one_named_and_one_anonymous.stderr2
-rw-r--r--src/test/ui/lifetime-errors/ex1-return-one-existing-name-early-bound-in-struct.nll.stderr2
-rw-r--r--src/test/ui/lifetime-errors/ex1-return-one-existing-name-early-bound-in-struct.stderr2
-rw-r--r--src/test/ui/lifetime-errors/ex1-return-one-existing-name-if-else-2.nll.stderr2
-rw-r--r--src/test/ui/lifetime-errors/ex1-return-one-existing-name-if-else-2.stderr2
-rw-r--r--src/test/ui/lifetime-errors/ex1-return-one-existing-name-if-else-3.nll.stderr2
-rw-r--r--src/test/ui/lifetime-errors/ex1-return-one-existing-name-if-else-3.stderr2
-rw-r--r--src/test/ui/lifetime-errors/ex1-return-one-existing-name-if-else-using-impl-2.nll.stderr2
-rw-r--r--src/test/ui/lifetime-errors/ex1-return-one-existing-name-if-else-using-impl-2.stderr2
-rw-r--r--src/test/ui/lifetime-errors/ex1-return-one-existing-name-if-else-using-impl-3.nll.stderr2
-rw-r--r--src/test/ui/lifetime-errors/ex1-return-one-existing-name-if-else-using-impl-3.stderr2
-rw-r--r--src/test/ui/lifetime-errors/ex1-return-one-existing-name-if-else.nll.stderr2
-rw-r--r--src/test/ui/lifetime-errors/ex1-return-one-existing-name-if-else.stderr2
-rw-r--r--src/test/ui/lifetime-errors/ex2a-push-one-existing-name-2.nll.stderr2
-rw-r--r--src/test/ui/lifetime-errors/ex2a-push-one-existing-name-2.stderr2
-rw-r--r--src/test/ui/lifetime-errors/ex2a-push-one-existing-name-early-bound.stderr2
-rw-r--r--src/test/ui/lifetime-errors/ex2a-push-one-existing-name.nll.stderr2
-rw-r--r--src/test/ui/lifetime-errors/ex2a-push-one-existing-name.stderr2
-rw-r--r--src/test/ui/nll/closure-requirements/region-lbr-anon-does-not-outlive-static.stderr2
-rw-r--r--src/test/ui/nll/guarantor-issue-46974.stderr2
-rw-r--r--src/test/ui/nll/ty-outlives/impl-trait-captures.stderr6
39 files changed, 44 insertions, 42 deletions
diff --git a/src/librustc/infer/error_reporting/nice_region_error/named_anon_conflict.rs b/src/librustc/infer/error_reporting/nice_region_error/named_anon_conflict.rs
index 00b07712822..ca71b0aeed9 100644
--- a/src/librustc/infer/error_reporting/nice_region_error/named_anon_conflict.rs
+++ b/src/librustc/infer/error_reporting/nice_region_error/named_anon_conflict.rs
@@ -113,7 +113,7 @@ impl<'a, 'gcx, 'tcx> NiceRegionError<'a, 'gcx, 'tcx> {
             error_var
         ).span_suggestion(
             new_ty_span,
-            &format!("consider changing {} to ", span_label_var),
+            &format!("add explicit lifetime `{}` to {}", named, span_label_var),
             new_ty.to_string()
         )
             .span_label(span, format!("lifetime `{}` required", named))
diff --git a/src/test/ui/in-band-lifetimes/mismatched.nll.stderr b/src/test/ui/in-band-lifetimes/mismatched.nll.stderr
index 8da86d08799..17ab22962c1 100644
--- a/src/test/ui/in-band-lifetimes/mismatched.nll.stderr
+++ b/src/test/ui/in-band-lifetimes/mismatched.nll.stderr
@@ -16,7 +16,7 @@ error[E0621]: explicit lifetime required in the type of `y`
 LL | fn foo(x: &'a u32, y: &u32) -> &'a u32 { y } //~ ERROR explicit lifetime required
    |                       ----               ^ lifetime `'a` required
    |                       |
-   |                       help: consider changing the type of `y` to : `&'a u32`
+   |                       help: add explicit lifetime `'a` to the type of `y`: `&'a u32`
 
 error[E0623]: lifetime mismatch
   --> $DIR/mismatched.rs:16:46
diff --git a/src/test/ui/in-band-lifetimes/mismatched.stderr b/src/test/ui/in-band-lifetimes/mismatched.stderr
index d062b6941f8..ed932a97ba4 100644
--- a/src/test/ui/in-band-lifetimes/mismatched.stderr
+++ b/src/test/ui/in-band-lifetimes/mismatched.stderr
@@ -4,7 +4,7 @@ error[E0621]: explicit lifetime required in the type of `y`
 LL | fn foo(x: &'a u32, y: &u32) -> &'a u32 { y } //~ ERROR explicit lifetime required
    |                       ----               ^ lifetime `'a` required
    |                       |
-   |                       help: consider changing the type of `y` to : `&'a u32`
+   |                       help: add explicit lifetime `'a` to the type of `y`: `&'a u32`
 
 error[E0623]: lifetime mismatch
   --> $DIR/mismatched.rs:16:46
diff --git a/src/test/ui/in-band-lifetimes/mismatched_trait.nll.stderr b/src/test/ui/in-band-lifetimes/mismatched_trait.nll.stderr
index e663bf5a152..a01f3219dc5 100644
--- a/src/test/ui/in-band-lifetimes/mismatched_trait.nll.stderr
+++ b/src/test/ui/in-band-lifetimes/mismatched_trait.nll.stderr
@@ -8,7 +8,7 @@ error[E0621]: explicit lifetime required in the type of `y`
   --> $DIR/mismatched_trait.rs:16:9
    |
 LL |     fn baz(&self, x: &'a u32, y: &u32) -> &'a u32 {
-   |                                  ---- help: consider changing the type of `y` to : `&'a u32`
+   |                                  ---- help: add explicit lifetime `'a` to the type of `y`: `&'a u32`
 LL |         y //~ ERROR explicit lifetime required
    |         ^ lifetime `'a` required
 
diff --git a/src/test/ui/in-band-lifetimes/mismatched_trait.stderr b/src/test/ui/in-band-lifetimes/mismatched_trait.stderr
index 01cf9bff2a8..745b82c20b4 100644
--- a/src/test/ui/in-band-lifetimes/mismatched_trait.stderr
+++ b/src/test/ui/in-band-lifetimes/mismatched_trait.stderr
@@ -2,7 +2,7 @@ error[E0621]: explicit lifetime required in the type of `y`
   --> $DIR/mismatched_trait.rs:16:9
    |
 LL |     fn baz(&self, x: &'a u32, y: &u32) -> &'a u32 {
-   |                                  ---- help: consider changing the type of `y` to : `&'a u32`
+   |                                  ---- help: add explicit lifetime `'a` to the type of `y`: `&'a u32`
 LL |         y //~ ERROR explicit lifetime required
    |         ^ lifetime `'a` required
 
diff --git a/src/test/ui/issue-13058.stderr b/src/test/ui/issue-13058.stderr
index 2f954f2bbcf..5e8319d26ad 100644
--- a/src/test/ui/issue-13058.stderr
+++ b/src/test/ui/issue-13058.stderr
@@ -2,7 +2,7 @@ error[E0621]: explicit lifetime required in the type of `cont`
   --> $DIR/issue-13058.rs:24:26
    |
 LL | fn check<'r, I: Iterator<Item=usize>, T: Itble<'r, usize, I>>(cont: &T) -> bool
-   |                                                                     -- help: consider changing the type of `cont` to : `&'r T`
+   |                                                                     -- help: add explicit lifetime `'r` to the type of `cont`: `&'r T`
 LL | {
 LL |     let cont_iter = cont.iter();
    |                          ^^^^ lifetime `'r` required
diff --git a/src/test/ui/issue-14285.nll.stderr b/src/test/ui/issue-14285.nll.stderr
index 8affc3b04b5..c95d540b25c 100644
--- a/src/test/ui/issue-14285.nll.stderr
+++ b/src/test/ui/issue-14285.nll.stderr
@@ -8,7 +8,7 @@ error[E0621]: explicit lifetime required in the type of `a`
   --> $DIR/issue-14285.rs:22:7
    |
 LL | fn foo<'a>(a: &Foo) -> B<'a> {
-   |               ---- help: consider changing the type of `a` to : `&'a (dyn Foo + 'a)`
+   |               ---- help: add explicit lifetime `'a` to the type of `a`: `&'a (dyn Foo + 'a)`
 LL |     B(a)    //~ ERROR 22:5: 22:9: explicit lifetime required in the type of `a` [E0621]
    |       ^ lifetime `'a` required
 
diff --git a/src/test/ui/issue-14285.stderr b/src/test/ui/issue-14285.stderr
index 169c93cc389..52163f81b7b 100644
--- a/src/test/ui/issue-14285.stderr
+++ b/src/test/ui/issue-14285.stderr
@@ -2,7 +2,7 @@ error[E0621]: explicit lifetime required in the type of `a`
   --> $DIR/issue-14285.rs:22:5
    |
 LL | fn foo<'a>(a: &Foo) -> B<'a> {
-   |               ---- help: consider changing the type of `a` to : `&'a (dyn Foo + 'a)`
+   |               ---- help: add explicit lifetime `'a` to the type of `a`: `&'a (dyn Foo + 'a)`
 LL |     B(a)    //~ ERROR 22:5: 22:9: explicit lifetime required in the type of `a` [E0621]
    |     ^^^^ lifetime `'a` required
 
diff --git a/src/test/ui/issue-15034.nll.stderr b/src/test/ui/issue-15034.nll.stderr
index 1f0fe68e2a3..4c8482630c5 100644
--- a/src/test/ui/issue-15034.nll.stderr
+++ b/src/test/ui/issue-15034.nll.stderr
@@ -8,7 +8,7 @@ error[E0621]: explicit lifetime required in the type of `lexer`
   --> $DIR/issue-15034.rs:27:25
    |
 LL |     pub fn new(lexer: &'a mut Lexer) -> Parser<'a> {
-   |                       ------------- help: consider changing the type of `lexer` to : `&'a mut Lexer<'a>`
+   |                       ------------- help: add explicit lifetime `'a` to the type of `lexer`: `&'a mut Lexer<'a>`
 LL |         Parser { lexer: lexer }
    |                         ^^^^^ lifetime `'a` required
 
diff --git a/src/test/ui/issue-15034.stderr b/src/test/ui/issue-15034.stderr
index bb0053d7aa8..c87bec00d95 100644
--- a/src/test/ui/issue-15034.stderr
+++ b/src/test/ui/issue-15034.stderr
@@ -2,7 +2,7 @@ error[E0621]: explicit lifetime required in the type of `lexer`
   --> $DIR/issue-15034.rs:27:25
    |
 LL |     pub fn new(lexer: &'a mut Lexer) -> Parser<'a> {
-   |                       ------------- help: consider changing the type of `lexer` to : `&'a mut Lexer<'a>`
+   |                       ------------- help: add explicit lifetime `'a` to the type of `lexer`: `&'a mut Lexer<'a>`
 LL |         Parser { lexer: lexer }
    |                         ^^^^^ lifetime `'a` required
 
diff --git a/src/test/ui/issue-16922.nll.stderr b/src/test/ui/issue-16922.nll.stderr
index d8926fd2cf5..1bd26faedaa 100644
--- a/src/test/ui/issue-16922.nll.stderr
+++ b/src/test/ui/issue-16922.nll.stderr
@@ -8,7 +8,7 @@ error[E0621]: explicit lifetime required in the type of `value`
   --> $DIR/issue-16922.rs:14:5
    |
 LL | fn foo<T: Any>(value: &T) -> Box<Any> {
-   |                       -- help: consider changing the type of `value` to : `&'static T`
+   |                       -- help: add explicit lifetime `'static` to the type of `value`: `&'static T`
 LL |     Box::new(value) as Box<Any>
    |     ^^^^^^^^^^^^^^^ lifetime `'static` required
 
diff --git a/src/test/ui/issue-16922.stderr b/src/test/ui/issue-16922.stderr
index 2f84fb7842f..e70869eb183 100644
--- a/src/test/ui/issue-16922.stderr
+++ b/src/test/ui/issue-16922.stderr
@@ -2,7 +2,7 @@ error[E0621]: explicit lifetime required in the type of `value`
   --> $DIR/issue-16922.rs:14:5
    |
 LL | fn foo<T: Any>(value: &T) -> Box<Any> {
-   |                       -- help: consider changing the type of `value` to : `&'static T`
+   |                       -- help: add explicit lifetime `'static` to the type of `value`: `&'static T`
 LL |     Box::new(value) as Box<Any>
    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^ lifetime `'static` required
 
diff --git a/src/test/ui/issue-3154.nll.stderr b/src/test/ui/issue-3154.nll.stderr
index 9cad0aabc93..91010bd3209 100644
--- a/src/test/ui/issue-3154.nll.stderr
+++ b/src/test/ui/issue-3154.nll.stderr
@@ -14,7 +14,7 @@ error[E0621]: explicit lifetime required in the type of `x`
   --> $DIR/issue-3154.rs:16:15
    |
 LL | fn thing<'a,Q>(x: &Q) -> thing<'a,Q> {
-   |                   -- help: consider changing the type of `x` to : `&'a Q`
+   |                   -- help: add explicit lifetime `'a` to the type of `x`: `&'a Q`
 LL |     thing{ x: x } //~ ERROR 16:5: 16:18: explicit lifetime required in the type of `x` [E0621]
    |               ^ lifetime `'a` required
 
diff --git a/src/test/ui/issue-3154.stderr b/src/test/ui/issue-3154.stderr
index 5b5bc669c45..01299d74808 100644
--- a/src/test/ui/issue-3154.stderr
+++ b/src/test/ui/issue-3154.stderr
@@ -2,7 +2,7 @@ error[E0621]: explicit lifetime required in the type of `x`
   --> $DIR/issue-3154.rs:16:5
    |
 LL | fn thing<'a,Q>(x: &Q) -> thing<'a,Q> {
-   |                   -- help: consider changing the type of `x` to : `&'a Q`
+   |                   -- help: add explicit lifetime `'a` to the type of `x`: `&'a Q`
 LL |     thing{ x: x } //~ ERROR 16:5: 16:18: explicit lifetime required in the type of `x` [E0621]
    |     ^^^^^^^^^^^^^ lifetime `'a` required
 
diff --git a/src/test/ui/issue-40288-2.nll.stderr b/src/test/ui/issue-40288-2.nll.stderr
index 4a78d2a0057..dcc9e0a8a65 100644
--- a/src/test/ui/issue-40288-2.nll.stderr
+++ b/src/test/ui/issue-40288-2.nll.stderr
@@ -38,7 +38,7 @@ error[E0621]: explicit lifetime required in the type of `y`
   --> $DIR/issue-40288-2.rs:17:9
    |
 LL | fn lifetime_transmute_slice<'a, T: ?Sized>(x: &'a T, y: &T) -> &'a T {
-   |                                                         -- help: consider changing the type of `y` to : `&'a T`
+   |                                                         -- help: add explicit lifetime `'a` to the type of `y`: `&'a T`
 ...
 LL |         slice[0] = y;
    |         ^^^^^^^^^^^^ lifetime `'a` required
@@ -47,7 +47,7 @@ error[E0621]: explicit lifetime required in the type of `y`
   --> $DIR/issue-40288-2.rs:32:9
    |
 LL | fn lifetime_transmute_struct<'a, T: ?Sized>(x: &'a T, y: &T) -> &'a T {
-   |                                                          -- help: consider changing the type of `y` to : `&'a T`
+   |                                                          -- help: add explicit lifetime `'a` to the type of `y`: `&'a T`
 ...
 LL |         dst.head = y;
    |         ^^^^^^^^^^^^ lifetime `'a` required
diff --git a/src/test/ui/issue-40288-2.stderr b/src/test/ui/issue-40288-2.stderr
index 6cf7ddc5798..fd0b4c01636 100644
--- a/src/test/ui/issue-40288-2.stderr
+++ b/src/test/ui/issue-40288-2.stderr
@@ -2,7 +2,7 @@ error[E0621]: explicit lifetime required in the type of `y`
   --> $DIR/issue-40288-2.rs:19:5
    |
 LL | fn lifetime_transmute_slice<'a, T: ?Sized>(x: &'a T, y: &T) -> &'a T {
-   |                                                         -- help: consider changing the type of `y` to : `&'a T`
+   |                                                         -- help: add explicit lifetime `'a` to the type of `y`: `&'a T`
 ...
 LL |     out[0]
    |     ^^^^^^ lifetime `'a` required
@@ -11,7 +11,7 @@ error[E0621]: explicit lifetime required in the type of `y`
   --> $DIR/issue-40288-2.rs:34:5
    |
 LL | fn lifetime_transmute_struct<'a, T: ?Sized>(x: &'a T, y: &T) -> &'a T {
-   |                                                          -- help: consider changing the type of `y` to : `&'a T`
+   |                                                          -- help: add explicit lifetime `'a` to the type of `y`: `&'a T`
 ...
 LL |     out.head
    |     ^^^^^^^^ lifetime `'a` required
diff --git a/src/test/ui/issue-46983.stderr b/src/test/ui/issue-46983.stderr
index 53fcdd71eb1..c4f2b3eba7d 100644
--- a/src/test/ui/issue-46983.stderr
+++ b/src/test/ui/issue-46983.stderr
@@ -2,7 +2,7 @@ error[E0621]: explicit lifetime required in the type of `x`
   --> $DIR/issue-46983.rs:14:5
    |
 LL | fn foo(x: &u32) -> &'static u32 {
-   |           ---- help: consider changing the type of `x` to : `&'static u32`
+   |           ---- help: add explicit lifetime `'static` to the type of `x`: `&'static u32`
 LL |     &*x
    |     ^^^ lifetime `'static` required
 
diff --git a/src/test/ui/lifetime-errors/42701_one_named_and_one_anonymous.nll.stderr b/src/test/ui/lifetime-errors/42701_one_named_and_one_anonymous.nll.stderr
index bec5fb2f72a..89313f898d5 100644
--- a/src/test/ui/lifetime-errors/42701_one_named_and_one_anonymous.nll.stderr
+++ b/src/test/ui/lifetime-errors/42701_one_named_and_one_anonymous.nll.stderr
@@ -8,7 +8,7 @@ error[E0621]: explicit lifetime required in the type of `x`
   --> $DIR/42701_one_named_and_one_anonymous.rs:16:5
    |
 LL |   fn foo2<'a>(a: &'a Foo, x: &i32) -> &'a i32 {
-   |                              ---- help: consider changing the type of `x` to : `&'a i32`
+   |                              ---- help: add explicit lifetime `'a` to the type of `x`: `&'a i32`
 LL | /     if true {
 LL | |         let p: &i32 = &a.field;
 LL | |         &*p
diff --git a/src/test/ui/lifetime-errors/42701_one_named_and_one_anonymous.stderr b/src/test/ui/lifetime-errors/42701_one_named_and_one_anonymous.stderr
index b23025ee127..b886450336d 100644
--- a/src/test/ui/lifetime-errors/42701_one_named_and_one_anonymous.stderr
+++ b/src/test/ui/lifetime-errors/42701_one_named_and_one_anonymous.stderr
@@ -2,7 +2,7 @@ error[E0621]: explicit lifetime required in the type of `x`
   --> $DIR/42701_one_named_and_one_anonymous.rs:20:9
    |
 LL | fn foo2<'a>(a: &'a Foo, x: &i32) -> &'a i32 {
-   |                            ---- help: consider changing the type of `x` to : `&'a i32`
+   |                            ---- help: add explicit lifetime `'a` to the type of `x`: `&'a i32`
 ...
 LL |         &*x //~ ERROR explicit lifetime
    |         ^^^ lifetime `'a` required
diff --git a/src/test/ui/lifetime-errors/ex1-return-one-existing-name-early-bound-in-struct.nll.stderr b/src/test/ui/lifetime-errors/ex1-return-one-existing-name-early-bound-in-struct.nll.stderr
index 9666e0112ac..3976cb30426 100644
--- a/src/test/ui/lifetime-errors/ex1-return-one-existing-name-early-bound-in-struct.nll.stderr
+++ b/src/test/ui/lifetime-errors/ex1-return-one-existing-name-early-bound-in-struct.nll.stderr
@@ -8,7 +8,7 @@ error[E0621]: explicit lifetime required in the type of `other`
   --> $DIR/ex1-return-one-existing-name-early-bound-in-struct.rs:18:15
    |
 LL |     fn bar(&self, other: Foo) -> Foo<'a> {
-   |                          --- help: consider changing the type of `other` to : `Foo<'a>`
+   |                          --- help: add explicit lifetime `'a` to the type of `other`: `Foo<'a>`
 LL |         match *self {
    |               ^^^^^ lifetime `'a` required
 
diff --git a/src/test/ui/lifetime-errors/ex1-return-one-existing-name-early-bound-in-struct.stderr b/src/test/ui/lifetime-errors/ex1-return-one-existing-name-early-bound-in-struct.stderr
index 0cce3d204ae..5847f755b3c 100644
--- a/src/test/ui/lifetime-errors/ex1-return-one-existing-name-early-bound-in-struct.stderr
+++ b/src/test/ui/lifetime-errors/ex1-return-one-existing-name-early-bound-in-struct.stderr
@@ -2,7 +2,7 @@ error[E0621]: explicit lifetime required in the type of `other`
   --> $DIR/ex1-return-one-existing-name-early-bound-in-struct.rs:21:21
    |
 LL |     fn bar(&self, other: Foo) -> Foo<'a> {
-   |                          --- help: consider changing the type of `other` to : `Foo<'a>`
+   |                          --- help: add explicit lifetime `'a` to the type of `other`: `Foo<'a>`
 ...
 LL |                     other //~ ERROR explicit lifetime
    |                     ^^^^^ lifetime `'a` required
diff --git a/src/test/ui/lifetime-errors/ex1-return-one-existing-name-if-else-2.nll.stderr b/src/test/ui/lifetime-errors/ex1-return-one-existing-name-if-else-2.nll.stderr
index 667d8548c72..00eff2fe3ae 100644
--- a/src/test/ui/lifetime-errors/ex1-return-one-existing-name-if-else-2.nll.stderr
+++ b/src/test/ui/lifetime-errors/ex1-return-one-existing-name-if-else-2.nll.stderr
@@ -8,7 +8,7 @@ error[E0621]: explicit lifetime required in the type of `x`
   --> $DIR/ex1-return-one-existing-name-if-else-2.rs:12:8
    |
 LL | fn foo<'a>(x: &i32, y: &'a i32) -> &'a i32 {
-   |               ---- help: consider changing the type of `x` to : `&'a i32`
+   |               ---- help: add explicit lifetime `'a` to the type of `x`: `&'a i32`
 LL |     if x > y { x } else { y } //~ ERROR explicit lifetime
    |        ^^^^^ lifetime `'a` required
 
diff --git a/src/test/ui/lifetime-errors/ex1-return-one-existing-name-if-else-2.stderr b/src/test/ui/lifetime-errors/ex1-return-one-existing-name-if-else-2.stderr
index cfbfd5ac448..a4e1fe5e183 100644
--- a/src/test/ui/lifetime-errors/ex1-return-one-existing-name-if-else-2.stderr
+++ b/src/test/ui/lifetime-errors/ex1-return-one-existing-name-if-else-2.stderr
@@ -2,7 +2,7 @@ error[E0621]: explicit lifetime required in the type of `x`
   --> $DIR/ex1-return-one-existing-name-if-else-2.rs:12:16
    |
 LL | fn foo<'a>(x: &i32, y: &'a i32) -> &'a i32 {
-   |               ---- help: consider changing the type of `x` to : `&'a i32`
+   |               ---- help: add explicit lifetime `'a` to the type of `x`: `&'a i32`
 LL |     if x > y { x } else { y } //~ ERROR explicit lifetime
    |                ^ lifetime `'a` required
 
diff --git a/src/test/ui/lifetime-errors/ex1-return-one-existing-name-if-else-3.nll.stderr b/src/test/ui/lifetime-errors/ex1-return-one-existing-name-if-else-3.nll.stderr
index 3e79d3e44df..a3b46aa04a6 100644
--- a/src/test/ui/lifetime-errors/ex1-return-one-existing-name-if-else-3.nll.stderr
+++ b/src/test/ui/lifetime-errors/ex1-return-one-existing-name-if-else-3.nll.stderr
@@ -8,7 +8,7 @@ error[E0621]: explicit lifetime required in parameter type
   --> $DIR/ex1-return-one-existing-name-if-else-3.rs:11:16
    |
 LL | fn foo<'a>((x, y): (&'a i32, &i32)) -> &'a i32 {
-   |                ^   --------------- help: consider changing type to : `(&'a i32, &'a i32)`
+   |                ^   --------------- help: add explicit lifetime `'a` to type: `(&'a i32, &'a i32)`
    |                |
    |                lifetime `'a` required
 
diff --git a/src/test/ui/lifetime-errors/ex1-return-one-existing-name-if-else-3.stderr b/src/test/ui/lifetime-errors/ex1-return-one-existing-name-if-else-3.stderr
index 70c25be2c30..a260c7bf7e9 100644
--- a/src/test/ui/lifetime-errors/ex1-return-one-existing-name-if-else-3.stderr
+++ b/src/test/ui/lifetime-errors/ex1-return-one-existing-name-if-else-3.stderr
@@ -2,7 +2,7 @@ error[E0621]: explicit lifetime required in parameter type
   --> $DIR/ex1-return-one-existing-name-if-else-3.rs:12:27
    |
 LL | fn foo<'a>((x, y): (&'a i32, &i32)) -> &'a i32 {
-   |                    --------------- help: consider changing type to : `(&'a i32, &'a i32)`
+   |                    --------------- help: add explicit lifetime `'a` to type: `(&'a i32, &'a i32)`
 LL |     if x > y { x } else { y } //~ ERROR explicit lifetime
    |                           ^ lifetime `'a` required
 
diff --git a/src/test/ui/lifetime-errors/ex1-return-one-existing-name-if-else-using-impl-2.nll.stderr b/src/test/ui/lifetime-errors/ex1-return-one-existing-name-if-else-using-impl-2.nll.stderr
index 419644cb60e..465b33be2d0 100644
--- a/src/test/ui/lifetime-errors/ex1-return-one-existing-name-if-else-using-impl-2.nll.stderr
+++ b/src/test/ui/lifetime-errors/ex1-return-one-existing-name-if-else-using-impl-2.nll.stderr
@@ -8,7 +8,7 @@ error[E0621]: explicit lifetime required in the type of `x`
   --> $DIR/ex1-return-one-existing-name-if-else-using-impl-2.rs:14:7
    |
 LL | fn foo<'a>(x: &i32, y: &'a i32) -> &'a i32 {
-   |               ---- help: consider changing the type of `x` to : `&'a i32`
+   |               ---- help: add explicit lifetime `'a` to the type of `x`: `&'a i32`
 LL |    if x > y { x } else { y } //~ ERROR explicit lifetime
    |       ^^^^^ lifetime `'a` required
 
diff --git a/src/test/ui/lifetime-errors/ex1-return-one-existing-name-if-else-using-impl-2.stderr b/src/test/ui/lifetime-errors/ex1-return-one-existing-name-if-else-using-impl-2.stderr
index 5c256aab62c..8eac8761bd4 100644
--- a/src/test/ui/lifetime-errors/ex1-return-one-existing-name-if-else-using-impl-2.stderr
+++ b/src/test/ui/lifetime-errors/ex1-return-one-existing-name-if-else-using-impl-2.stderr
@@ -2,7 +2,7 @@ error[E0621]: explicit lifetime required in the type of `x`
   --> $DIR/ex1-return-one-existing-name-if-else-using-impl-2.rs:14:15
    |
 LL | fn foo<'a>(x: &i32, y: &'a i32) -> &'a i32 {
-   |               ---- help: consider changing the type of `x` to : `&'a i32`
+   |               ---- help: add explicit lifetime `'a` to the type of `x`: `&'a i32`
 LL |    if x > y { x } else { y } //~ ERROR explicit lifetime
    |               ^ lifetime `'a` required
 
diff --git a/src/test/ui/lifetime-errors/ex1-return-one-existing-name-if-else-using-impl-3.nll.stderr b/src/test/ui/lifetime-errors/ex1-return-one-existing-name-if-else-using-impl-3.nll.stderr
index 97ff1879f1b..a62d7cc5a6f 100644
--- a/src/test/ui/lifetime-errors/ex1-return-one-existing-name-if-else-using-impl-3.nll.stderr
+++ b/src/test/ui/lifetime-errors/ex1-return-one-existing-name-if-else-using-impl-3.nll.stderr
@@ -8,7 +8,7 @@ error[E0621]: explicit lifetime required in the type of `x`
   --> $DIR/ex1-return-one-existing-name-if-else-using-impl-3.rs:18:5
    |
 LL |   fn foo<'a>(&'a self, x: &i32) -> &i32 {
-   |                           ---- help: consider changing the type of `x` to : `&'a i32`
+   |                           ---- help: add explicit lifetime `'a` to the type of `x`: `&'a i32`
 LL | 
 LL |     if true { &self.field } else { x } //~ ERROR explicit lifetime
    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ lifetime `'a` required
diff --git a/src/test/ui/lifetime-errors/ex1-return-one-existing-name-if-else-using-impl-3.stderr b/src/test/ui/lifetime-errors/ex1-return-one-existing-name-if-else-using-impl-3.stderr
index f8654baa86b..0ae98aeb843 100644
--- a/src/test/ui/lifetime-errors/ex1-return-one-existing-name-if-else-using-impl-3.stderr
+++ b/src/test/ui/lifetime-errors/ex1-return-one-existing-name-if-else-using-impl-3.stderr
@@ -2,7 +2,7 @@ error[E0621]: explicit lifetime required in the type of `x`
   --> $DIR/ex1-return-one-existing-name-if-else-using-impl-3.rs:18:36
    |
 LL |   fn foo<'a>(&'a self, x: &i32) -> &i32 {
-   |                           ---- help: consider changing the type of `x` to : `&'a i32`
+   |                           ---- help: add explicit lifetime `'a` to the type of `x`: `&'a i32`
 LL | 
 LL |     if true { &self.field } else { x } //~ ERROR explicit lifetime
    |                                    ^ lifetime `'a` required
diff --git a/src/test/ui/lifetime-errors/ex1-return-one-existing-name-if-else.nll.stderr b/src/test/ui/lifetime-errors/ex1-return-one-existing-name-if-else.nll.stderr
index 8c429bcbc95..93f8254f825 100644
--- a/src/test/ui/lifetime-errors/ex1-return-one-existing-name-if-else.nll.stderr
+++ b/src/test/ui/lifetime-errors/ex1-return-one-existing-name-if-else.nll.stderr
@@ -8,7 +8,7 @@ error[E0621]: explicit lifetime required in the type of `y`
   --> $DIR/ex1-return-one-existing-name-if-else.rs:12:8
    |
 LL | fn foo<'a>(x: &'a i32, y: &i32) -> &'a i32 {
-   |                           ---- help: consider changing the type of `y` to : `&'a i32`
+   |                           ---- help: add explicit lifetime `'a` to the type of `y`: `&'a i32`
 LL |     if x > y { x } else { y } //~ ERROR explicit lifetime
    |        ^^^^^ lifetime `'a` required
 
diff --git a/src/test/ui/lifetime-errors/ex1-return-one-existing-name-if-else.stderr b/src/test/ui/lifetime-errors/ex1-return-one-existing-name-if-else.stderr
index cd7719f7047..b68b90e77de 100644
--- a/src/test/ui/lifetime-errors/ex1-return-one-existing-name-if-else.stderr
+++ b/src/test/ui/lifetime-errors/ex1-return-one-existing-name-if-else.stderr
@@ -2,7 +2,7 @@ error[E0621]: explicit lifetime required in the type of `y`
   --> $DIR/ex1-return-one-existing-name-if-else.rs:12:27
    |
 LL | fn foo<'a>(x: &'a i32, y: &i32) -> &'a i32 {
-   |                           ---- help: consider changing the type of `y` to : `&'a i32`
+   |                           ---- help: add explicit lifetime `'a` to the type of `y`: `&'a i32`
 LL |     if x > y { x } else { y } //~ ERROR explicit lifetime
    |                           ^ lifetime `'a` required
 
diff --git a/src/test/ui/lifetime-errors/ex2a-push-one-existing-name-2.nll.stderr b/src/test/ui/lifetime-errors/ex2a-push-one-existing-name-2.nll.stderr
index d9c96a0e47c..a5fa83266a3 100644
--- a/src/test/ui/lifetime-errors/ex2a-push-one-existing-name-2.nll.stderr
+++ b/src/test/ui/lifetime-errors/ex2a-push-one-existing-name-2.nll.stderr
@@ -8,7 +8,7 @@ error[E0621]: explicit lifetime required in the type of `x`
   --> $DIR/ex2a-push-one-existing-name-2.rs:16:5
    |
 LL | fn foo<'a>(x: Ref<i32>, y: &mut Vec<Ref<'a, i32>>) {
-   |               -------- help: consider changing the type of `x` to : `Ref<'a, i32>`
+   |               -------- help: add explicit lifetime `'a` to the type of `x`: `Ref<'a, i32>`
 LL |     y.push(x); //~ ERROR explicit lifetime
    |     ^^^^^^^^^ lifetime `'a` required
 
diff --git a/src/test/ui/lifetime-errors/ex2a-push-one-existing-name-2.stderr b/src/test/ui/lifetime-errors/ex2a-push-one-existing-name-2.stderr
index d6944cc251f..6f0a5179d6b 100644
--- a/src/test/ui/lifetime-errors/ex2a-push-one-existing-name-2.stderr
+++ b/src/test/ui/lifetime-errors/ex2a-push-one-existing-name-2.stderr
@@ -2,7 +2,7 @@ error[E0621]: explicit lifetime required in the type of `x`
   --> $DIR/ex2a-push-one-existing-name-2.rs:16:12
    |
 LL | fn foo<'a>(x: Ref<i32>, y: &mut Vec<Ref<'a, i32>>) {
-   |               -------- help: consider changing the type of `x` to : `Ref<'a, i32>`
+   |               -------- help: add explicit lifetime `'a` to the type of `x`: `Ref<'a, i32>`
 LL |     y.push(x); //~ ERROR explicit lifetime
    |            ^ lifetime `'a` required
 
diff --git a/src/test/ui/lifetime-errors/ex2a-push-one-existing-name-early-bound.stderr b/src/test/ui/lifetime-errors/ex2a-push-one-existing-name-early-bound.stderr
index d6724607669..a8286ba2952 100644
--- a/src/test/ui/lifetime-errors/ex2a-push-one-existing-name-early-bound.stderr
+++ b/src/test/ui/lifetime-errors/ex2a-push-one-existing-name-early-bound.stderr
@@ -2,7 +2,7 @@ error[E0621]: explicit lifetime required in the type of `y`
   --> $DIR/ex2a-push-one-existing-name-early-bound.rs:17:12
    |
 LL | fn baz<'a, 'b, T>(x: &mut Vec<&'a T>, y: &T)
-   |                                          -- help: consider changing the type of `y` to : `&'a T`
+   |                                          -- help: add explicit lifetime `'a` to the type of `y`: `&'a T`
 ...
 LL |     x.push(y); //~ ERROR explicit lifetime required
    |            ^ lifetime `'a` required
diff --git a/src/test/ui/lifetime-errors/ex2a-push-one-existing-name.nll.stderr b/src/test/ui/lifetime-errors/ex2a-push-one-existing-name.nll.stderr
index d08a9d6084a..294a9106619 100644
--- a/src/test/ui/lifetime-errors/ex2a-push-one-existing-name.nll.stderr
+++ b/src/test/ui/lifetime-errors/ex2a-push-one-existing-name.nll.stderr
@@ -8,7 +8,7 @@ error[E0621]: explicit lifetime required in the type of `y`
   --> $DIR/ex2a-push-one-existing-name.rs:16:5
    |
 LL | fn foo<'a>(x: &mut Vec<Ref<'a, i32>>, y: Ref<i32>) {
-   |                                          -------- help: consider changing the type of `y` to : `Ref<'a, i32>`
+   |                                          -------- help: add explicit lifetime `'a` to the type of `y`: `Ref<'a, i32>`
 LL |     x.push(y); //~ ERROR explicit lifetime
    |     ^^^^^^^^^ lifetime `'a` required
 
diff --git a/src/test/ui/lifetime-errors/ex2a-push-one-existing-name.stderr b/src/test/ui/lifetime-errors/ex2a-push-one-existing-name.stderr
index 088605a2b85..ebe465aa581 100644
--- a/src/test/ui/lifetime-errors/ex2a-push-one-existing-name.stderr
+++ b/src/test/ui/lifetime-errors/ex2a-push-one-existing-name.stderr
@@ -2,7 +2,7 @@ error[E0621]: explicit lifetime required in the type of `y`
   --> $DIR/ex2a-push-one-existing-name.rs:16:12
    |
 LL | fn foo<'a>(x: &mut Vec<Ref<'a, i32>>, y: Ref<i32>) {
-   |                                          -------- help: consider changing the type of `y` to : `Ref<'a, i32>`
+   |                                          -------- help: add explicit lifetime `'a` to the type of `y`: `Ref<'a, i32>`
 LL |     x.push(y); //~ ERROR explicit lifetime
    |            ^ lifetime `'a` required
 
diff --git a/src/test/ui/nll/closure-requirements/region-lbr-anon-does-not-outlive-static.stderr b/src/test/ui/nll/closure-requirements/region-lbr-anon-does-not-outlive-static.stderr
index 25450252cde..a019a7224c6 100644
--- a/src/test/ui/nll/closure-requirements/region-lbr-anon-does-not-outlive-static.stderr
+++ b/src/test/ui/nll/closure-requirements/region-lbr-anon-does-not-outlive-static.stderr
@@ -8,7 +8,7 @@ error[E0621]: explicit lifetime required in the type of `x`
   --> $DIR/region-lbr-anon-does-not-outlive-static.rs:19:5
    |
 LL | fn foo(x: &u32) -> &'static u32 {
-   |           ---- help: consider changing the type of `x` to : `&ReStatic u32`
+   |           ---- help: add explicit lifetime `ReStatic` to the type of `x`: `&ReStatic u32`
 LL |     &*x
    |     ^^^ lifetime `ReStatic` required
 
diff --git a/src/test/ui/nll/guarantor-issue-46974.stderr b/src/test/ui/nll/guarantor-issue-46974.stderr
index 644d18419f1..6fc48129986 100644
--- a/src/test/ui/nll/guarantor-issue-46974.stderr
+++ b/src/test/ui/nll/guarantor-issue-46974.stderr
@@ -13,7 +13,7 @@ error[E0621]: explicit lifetime required in the type of `s`
   --> $DIR/guarantor-issue-46974.rs:25:5
    |
 LL | fn bar(s: &Box<(i32,)>) -> &'static i32 {
-   |           ------------ help: consider changing the type of `s` to : `&'static std::boxed::Box<(i32,)>`
+   |           ------------ help: add explicit lifetime `'static` to the type of `s`: `&'static std::boxed::Box<(i32,)>`
 LL |     // FIXME(#46983): error message should be better
 LL |     &s.0 //~ ERROR explicit lifetime required in the type of `s` [E0621]
    |     ^^^^ lifetime `'static` required
diff --git a/src/test/ui/nll/ty-outlives/impl-trait-captures.stderr b/src/test/ui/nll/ty-outlives/impl-trait-captures.stderr
index 944fc1c2666..a4f0e53386f 100644
--- a/src/test/ui/nll/ty-outlives/impl-trait-captures.stderr
+++ b/src/test/ui/nll/ty-outlives/impl-trait-captures.stderr
@@ -7,10 +7,12 @@ LL |     x
 error[E0621]: explicit lifetime required in the type of `x`
   --> $DIR/impl-trait-captures.rs:21:5
    |
-LL | fn foo<'a, T>(x: &T) -> impl Foo<'a> {
-   |                  -- help: consider changing the type of `x` to : `&ReEarlyBound(0, 'a) T`
 LL |     x
    |     ^ lifetime `ReEarlyBound(0, 'a)` required
+help: add explicit lifetime `ReEarlyBound(0, 'a)` to the type of `x`
+   |
+LL | fn foo<'a, T>(x: &ReEarlyBound(0, 'a) T) -> impl Foo<'a> {
+   |                  ^^^^^^^^^^^^^^^^^^^^^^
 
 error: aborting due to previous error