You get either some form of an infinite recursion (usually observed as an StackOverflowError) or logical errors when one of the completers observes a half-baked type and derives wrong results based on a wrong state of its dependencies.