From 6bc4e124fbf66b9a57fe6aea165aece0b6bbcbb7 Mon Sep 17 00:00:00 2001 From: Mads Ager Date: Fri, 7 May 2021 09:13:04 +0200 Subject: [PATCH] [JVM_IR] Guard against infinite recursion in JvmIrCodegenFactory. Fixed KTIJ-11580. --- .../org/jetbrains/kotlin/backend/jvm/JvmIrCodegenFactory.kt | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/compiler/ir/backend.jvm/entrypoint/src/org/jetbrains/kotlin/backend/jvm/JvmIrCodegenFactory.kt b/compiler/ir/backend.jvm/entrypoint/src/org/jetbrains/kotlin/backend/jvm/JvmIrCodegenFactory.kt index f289ae20f93..6a13e39b3b5 100644 --- a/compiler/ir/backend.jvm/entrypoint/src/org/jetbrains/kotlin/backend/jvm/JvmIrCodegenFactory.kt +++ b/compiler/ir/backend.jvm/entrypoint/src/org/jetbrains/kotlin/backend/jvm/JvmIrCodegenFactory.kt @@ -171,8 +171,7 @@ open class JvmIrCodegenFactory( val result = LinkedHashSet() fun collectImpl(descriptor: ModuleDescriptor) { val dependencies = descriptor.allDependencyModules - dependencies.forEach { if (it !in result) collectImpl(it) } - result += dependencies + dependencies.forEach { if (result.add(it)) collectImpl(it) } } collectImpl(this) return result.toList()