summaryrefslogtreecommitdiffstats
path: root/tests/ui/traits/next-solver/overflow/recursive-self-normalization.rs
blob: f45d208e6667fccc529b51701c4100c99a24cd83 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
// compile-flags: -Znext-solver

trait Foo {
    type Assoc;
}

trait Bar {}
fn needs_bar<S: Bar>() {}

fn test<T: Foo<Assoc = <T as Foo>::Assoc>>() {
    needs_bar::<T::Assoc>();
    //~^ ERROR overflow evaluating the requirement `<T as Foo>::Assoc: Bar`
    //~| ERROR overflow evaluating the requirement `<T as Foo>::Assoc` [E0275]
}

fn main() {}