Should this not be ok when the associated item exists in the current trait itself? Erroring code: ``` rust pub trait ShapeBuilder : Into<Shape<Self::Dim>> { type Dim; } pub struct Shape<D> { dim: D, } src/impl_constructors.rs:25:37: 25:46 error: unsupported cyclic reference between types/traits detected [E0391] src/impl_constructors.rs:25 pub trait ShapeBuilder : Into<Shape<Self::Dim>> ^~~~~~~~~ ``` Modifying it slightly compiles: ``` rust pub trait ShapeBuilder : Into<Shape<<Self as ShapeBuilder>::Dim>> { type Dim; } pub struct Shape<D> { dim: D, } ```