about summary refs log tree commit diff
path: root/src/test/ui/impl-trait
diff options
context:
space:
mode:
authorNiko Matsakis <niko@alum.mit.edu>2018-07-25 16:36:03 +0300
committerNiko Matsakis <niko@alum.mit.edu>2018-07-25 16:36:03 +0300
commit0d918a8575cfc7d7ec97b86e87c11e023ac3a37c (patch)
treec04cf9936068fffa25e25acc4704bc4003c16edb /src/test/ui/impl-trait
parent76991ea2377f1652846b89b2a1eb6a67fef7ecf3 (diff)
improve heuristics for what makes an interesting constraint
Diffstat (limited to 'src/test/ui/impl-trait')
-rw-r--r--src/test/ui/impl-trait/static-return-lifetime-infered.nll.stderr12
1 files changed, 7 insertions, 5 deletions
diff --git a/src/test/ui/impl-trait/static-return-lifetime-infered.nll.stderr b/src/test/ui/impl-trait/static-return-lifetime-infered.nll.stderr
index 4c0b3a5d931..c6f8d2e519c 100644
--- a/src/test/ui/impl-trait/static-return-lifetime-infered.nll.stderr
+++ b/src/test/ui/impl-trait/static-return-lifetime-infered.nll.stderr
@@ -10,19 +10,21 @@ warning: not reporting region error due to nll
 LL |         self.x.iter().map(|a| a.0)
    |                ^^^^
 
-error: unsatisfied lifetime constraints
+error: borrowed data escapes outside of closure
   --> $DIR/static-return-lifetime-infered.rs:17:9
    |
 LL |     fn iter_values_anon(&self) -> impl Iterator<Item=u32> {
-   |                         - let's call the lifetime of this reference `'1`
+   |                         ----- `self` is a reference that is only valid in the closure body
 LL |         self.x.iter().map(|a| a.0)
-   |         ^^^^^^ cast requires that `'1` must outlive `'static`
+   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^ `self` escapes the closure body here
 
-error: unsatisfied lifetime constraints
+error: borrowed data escapes outside of closure
   --> $DIR/static-return-lifetime-infered.rs:21:9
    |
+LL |     fn iter_values<'a>(&'a self) -> impl Iterator<Item=u32> {
+   |                        -------- `self` is a reference that is only valid in the closure body
 LL |         self.x.iter().map(|a| a.0)
-   |         ^^^^^^ cast requires that `'a` must outlive `'static`
+   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^ `self` escapes the closure body here
 
 error: aborting due to 2 previous errors