1 error: opaque type's hidden type cannot be another opaque type from the same scope
2 --> $DIR/two_tait_defining_each_other.rs:12:5
4 LL | x // A's hidden type is `Bar`, because all the hidden types of `B` are compared with each other
5 | ^ one of the two opaque types used here has to be outside its defining scope
7 note: opaque type whose hidden type is being assigned
8 --> $DIR/two_tait_defining_each_other.rs:4:10
10 LL | type B = impl Foo;
12 note: opaque type being used as hidden type
13 --> $DIR/two_tait_defining_each_other.rs:3:10
15 LL | type A = impl Foo;
18 error: aborting due to previous error