Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

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.

See https://rustc-dev-guide.rust-lang.org/overview.html#queries and https://rustc-dev-guide.rust-lang.org/query.html for more information.