Error code E0391

A type dependency cycle has been encountered.

Erroneous code example:

#![allow(unused)]
fn main() {
trait FirstTrait : SecondTrait {

}

trait SecondTrait : FirstTrait {

}
}

The previous example contains a circular dependency between two traits: FirstTrait depends on SecondTrait which itself depends on FirstTrait.