1 error: opaque type's hidden type cannot be another opaque type from the same scope
2 --> $DIR/two_tait_defining_each_other3.rs:10:16
4 LL | return x; // B's hidden type is A (opaquely)
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_other3.rs:4:10
10 LL | type B = impl Foo;
12 note: opaque type being used as hidden type
13 --> $DIR/two_tait_defining_each_other3.rs:3:10
15 LL | type A = impl Foo;
18 error: aborting due to previous error