2022-02-17 07:55:58 -06:00
|
|
|
trait Trait<'a> {
|
|
|
|
type Out;
|
|
|
|
fn call(&'a self) -> Self::Out;
|
|
|
|
}
|
|
|
|
|
|
|
|
struct X(());
|
|
|
|
|
|
|
|
impl<'a> Trait<'a> for X {
|
|
|
|
type Out = ();
|
|
|
|
fn call(&'a self) -> Self::Out {
|
|
|
|
()
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
fn f() -> impl for<'a> Trait<'a, Out = impl Sized + 'a> {
|
2022-05-14 04:25:53 -05:00
|
|
|
//~^ ERROR higher kinded lifetime bounds on nested opaque types are not supported yet
|
2022-02-17 07:55:58 -06:00
|
|
|
X(())
|
|
|
|
}
|
|
|
|
|
|
|
|
fn main() {
|
|
|
|
let _ = f();
|
|
|
|
}
|