2021-10-20 17:51:31 -05:00
|
|
|
// check-pass
|
2023-04-12 08:32:15 -05:00
|
|
|
#![feature(impl_trait_in_assoc_type)]
|
2021-10-20 17:51:31 -05:00
|
|
|
|
|
|
|
pub trait Trait {
|
|
|
|
type A;
|
|
|
|
|
|
|
|
fn f() -> Self::A;
|
|
|
|
}
|
|
|
|
|
|
|
|
pub trait Tr2<'a, 'b> {}
|
|
|
|
|
|
|
|
pub struct A<T>(T);
|
|
|
|
pub trait Tr {
|
|
|
|
type B;
|
|
|
|
}
|
|
|
|
|
|
|
|
impl<'a, 'b, T: Tr<B = dyn Tr2<'a, 'b>>> Trait for A<T> {
|
|
|
|
type A = impl core::fmt::Debug;
|
|
|
|
|
|
|
|
fn f() -> Self::A {}
|
|
|
|
}
|
|
|
|
|
|
|
|
fn main() {}
|