| error[E0308]: mismatched types |
| --> $DIR/issue-20831-debruijn.rs:28:5 |
| | |
| LL | / fn subscribe(&mut self, t : Box<dyn Subscriber<Input=<Self as Publisher>::Output> + 'a>) { |
| LL | | // Not obvious, but there is an implicit lifetime here -------^ |
| LL | | |
| LL | | |
| ... | |
| LL | | self.sub = t; |
| LL | | } |
| | |_____^ lifetime mismatch |
| | |
| = note: expected type `'a` |
| found type `'_` |
| note: the anonymous lifetime #2 defined on the method body at 28:5... |
| --> $DIR/issue-20831-debruijn.rs:28:5 |
| | |
| LL | / fn subscribe(&mut self, t : Box<dyn Subscriber<Input=<Self as Publisher>::Output> + 'a>) { |
| LL | | // Not obvious, but there is an implicit lifetime here -------^ |
| LL | | |
| LL | | |
| ... | |
| LL | | self.sub = t; |
| LL | | } |
| | |_____^ |
| note: ...does not necessarily outlive the lifetime 'a as defined on the impl at 26:6 |
| --> $DIR/issue-20831-debruijn.rs:26:6 |
| | |
| LL | impl<'a> Publisher<'a> for MyStruct<'a> { |
| | ^^ |
| |
| error[E0308]: mismatched types |
| --> $DIR/issue-20831-debruijn.rs:28:5 |
| | |
| LL | / fn subscribe(&mut self, t : Box<dyn Subscriber<Input=<Self as Publisher>::Output> + 'a>) { |
| LL | | // Not obvious, but there is an implicit lifetime here -------^ |
| LL | | |
| LL | | |
| ... | |
| LL | | self.sub = t; |
| LL | | } |
| | |_____^ lifetime mismatch |
| | |
| = note: expected type `'a` |
| found type `'_` |
| note: the lifetime 'a as defined on the impl at 26:6... |
| --> $DIR/issue-20831-debruijn.rs:26:6 |
| | |
| LL | impl<'a> Publisher<'a> for MyStruct<'a> { |
| | ^^ |
| note: ...does not necessarily outlive the anonymous lifetime #2 defined on the method body at 28:5 |
| --> $DIR/issue-20831-debruijn.rs:28:5 |
| | |
| LL | / fn subscribe(&mut self, t : Box<dyn Subscriber<Input=<Self as Publisher>::Output> + 'a>) { |
| LL | | // Not obvious, but there is an implicit lifetime here -------^ |
| LL | | |
| LL | | |
| ... | |
| LL | | self.sub = t; |
| LL | | } |
| | |_____^ |
| |
| error[E0495]: cannot infer an appropriate lifetime for lifetime parameter `'a` due to conflicting requirements |
| --> $DIR/issue-20831-debruijn.rs:28:5 |
| | |
| LL | / fn subscribe(&mut self, t : Box<dyn Subscriber<Input=<Self as Publisher>::Output> + 'a>) { |
| LL | | // Not obvious, but there is an implicit lifetime here -------^ |
| LL | | |
| LL | | |
| ... | |
| LL | | self.sub = t; |
| LL | | } |
| | |_____^ |
| | |
| note: first, the lifetime cannot outlive the anonymous lifetime #2 defined on the method body at 28:5... |
| --> $DIR/issue-20831-debruijn.rs:28:5 |
| | |
| LL | / fn subscribe(&mut self, t : Box<dyn Subscriber<Input=<Self as Publisher>::Output> + 'a>) { |
| LL | | // Not obvious, but there is an implicit lifetime here -------^ |
| LL | | |
| LL | | |
| ... | |
| LL | | self.sub = t; |
| LL | | } |
| | |_____^ |
| note: ...but the lifetime must also be valid for the lifetime 'a as defined on the impl at 26:6... |
| --> $DIR/issue-20831-debruijn.rs:26:6 |
| | |
| LL | impl<'a> Publisher<'a> for MyStruct<'a> { |
| | ^^ |
| = note: ...so that the types are compatible: |
| expected Publisher<'_> |
| found Publisher<'_> |
| |
| error: aborting due to 3 previous errors |
| |
| For more information about this error, try `rustc --explain E0308`. |