about summary refs log tree commit diff
path: root/tests/ui/impl-trait/associated-type-cycle.rs
blob: 4c1fc1a0fa612a2111caddd376c331e55e443d17 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
trait Foo {
    type Bar;
    fn foo(self) -> Self::Bar;
}

impl Foo for Box<dyn Foo> {
    //~^ ERROR: the value of the associated type `Bar` in `Foo` must be specified
    type Bar = <Self as Foo>::Bar;
    fn foo(self) -> <Self as Foo>::Bar {
        (*self).foo()
    }
}

fn main() {}