1 error[E0308]: mismatched types
2 --> $DIR/associated-types-eq-3.rs:23:18
4 LL | let _: Bar = x.boo();
5 | ^^^^^^^ expected struct `Bar`, found associated type
7 = note: expected type `Bar`
8 found type `<I as Foo>::A`
9 = note: consider constraining the associated type `<I as Foo>::A` to `Bar`
10 = note: for more information, visit https://doc.rust-lang.org/book/ch19-03-advanced-traits.html
12 error[E0271]: type mismatch resolving `<isize as Foo>::A == Bar`
13 --> $DIR/associated-types-eq-3.rs:38:5
15 LL | fn foo1<I: Foo<A=Bar>>(x: I) {
16 | ---- ----- required by this bound in `foo1`
19 | ^^^^ expected usize, found struct `Bar`
21 = note: expected type `usize`
24 error[E0271]: type mismatch resolving `<isize as Foo>::A == Bar`
25 --> $DIR/associated-types-eq-3.rs:41:9
28 | ^^ expected usize, found struct `Bar`
30 = note: expected type `usize`
32 = note: required for the cast to the object type `dyn Foo<A = Bar>`
34 error: aborting due to 3 previous errors
36 Some errors have detailed explanations: E0271, E0308.
37 For more information about an error, try `rustc --explain E0271`.