| error[E0700]: hidden type for `impl Swap + 'a` captures lifetime that does not appear in bounds |
| --> $DIR/rpit-hide-lifetime-for-swap.rs:17:5 |
| | |
| LL | fn hide<'a, 'b: 'a, T: 'static>(x: Rc<RefCell<&'b T>>) -> impl Swap + 'a { |
| | -- -------------- opaque type defined here |
| | | |
| | hidden type `Rc<RefCell<&'b T>>` captures the lifetime `'b` as defined here |
| LL | x |
| | ^ |
| | |
| help: to declare that `impl Swap + 'a` captures `'b`, you can add an explicit `'b` lifetime bound |
| | |
| LL | fn hide<'a, 'b: 'a, T: 'static>(x: Rc<RefCell<&'b T>>) -> impl Swap + 'a + 'b { |
| | ++++ |
| |
| error: aborting due to previous error |
| |
| For more information about this error, try `rustc --explain E0700`. |