FIR IDE: fix SOE on opening project

Kotlin library may contain cycles which causes SOE in FirModuleInfoBasedModuleData.dependencies
This commit is contained in:
Ilya Kirillov
2021-05-17 19:21:17 +02:00
parent d365d7c784
commit aa70c952eb
@@ -14,9 +14,12 @@ import org.jetbrains.kotlin.resolve.PlatformDependentAnalyzerServices
class FirModuleInfoBasedModuleData(val moduleInfo: ModuleInfo) : FirModuleData() {
override val name: Name
get() = moduleInfo.name
override val dependencies: List<FirModuleData> = moduleInfo.dependencies()
.filterNot { it == moduleInfo }
.map { FirModuleInfoBasedModuleData(it) }
override val dependencies: List<FirModuleData> by lazy {
moduleInfo.dependencies()
.filterNot { it == moduleInfo }
.map { FirModuleInfoBasedModuleData(it) }
}
override val dependsOnDependencies: List<FirModuleData> = moduleInfo.expectedBy
.filterNot { it == moduleInfo }