error: non-defining opaque type use in defining scope --> $DIR/issue-88595.rs:22:23 | LL | fn a(&'a self) -> Self::B<'a> {} | ^^^^^^^^^^^ | note: lifetime used multiple times --> $DIR/issue-88595.rs:18:6 | LL | impl<'a> A<'a> for C { | ^^ LL | type B<'b> = impl Clone; | ^^ error: could not find defining uses --> $DIR/issue-88595.rs:19:18 | LL | type B<'b> = impl Clone; | ^^^^^^^^^^ error: aborting due to 2 previous errors