about summary refs log tree commit diff
path: root/tests/rustdoc-ui/ice-method-where-clause-circular-100620.rs
blob: e12b214410bc2e1bfdd5b412d120d4aaf6470ebd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
//@ check-pass
// https://github.com/rust-lang/rust/issues/100620

pub trait Bar<S> {}

pub trait Qux<T> {}

pub trait Foo<T, S> {
    fn bar()
    where
        T: Bar<S>,
    {
    }
}

pub struct Concrete;

impl<S> Foo<(), S> for Concrete {}

impl<T, S> Bar<S> for T where S: Qux<T> {}

impl<T, S> Qux<T> for S where T: Bar<S> {}