В .NET BCL есть круглые ссылки между:
-
System.dll
иSystem.Xml.dll
-
System.dll
иSystem.Configuration.dll
-
System.Xml.dll
иSystem.Configuration.dll
Вот скриншот из .NET Reflector, который показывает, что я имею в виду:
Как Microsoft создала эти сборки, для меня загадка. Требуется ли для этого специальный процесс компиляции? Я предполагаю, что здесь происходит что-то интересное.