error[E0521]: borrowed data escapes outside of associated function --> $DIR/issue-17758.rs:7:9 | LL | trait Foo<'a> { | -- lifetime `'a` defined here LL | fn foo(&'a self); LL | fn bar(&self) { | ----- | | | `self` is a reference that is only valid in the associated function body | let's call the lifetime of this reference `'1` LL | self.foo(); | ^^^^^^^^^^ | | | `self` escapes the associated function body here | argument requires that `'1` must outlive `'a` error: aborting due to previous error For more information about this error, try `rustc --explain E0521`.