Two classes using each other constitute the simplest imaginable cycle in a dependency graph. The presence of many cycles in a system will lead to its lumping.
Related smells: Cyclically-dependent Modularization Dependency Cycles between Packages/Subsystems
M. Lippert, S. Roock, “Refactoring in Large Software Projects: Performing Complex Restructurings Successfully”. John Wiley and Sons, 2006.
All rights reserved (c) Tushar Sharma 2017-23.