error[E0700]: hidden type for `impl Future` captures lifetime that does not appear in bounds --> $DIR/cannot-capture-intersection.rs:22:9 | LL | fn foo<'a, 'b>(&'a self, x: &'b i32) -> impl Future { | ------------------------- opaque type defined here LL | self.ptr.foo(x) | ^^^^^^^^^^^^^^^ | = note: hidden type `Pin>>` captures lifetime `'_` error: aborting due to 1 previous error For more information about this error, try `rustc --explain E0700`.