From 10ea8abc2b52ec70a851086dc06172064f3d2d47 Mon Sep 17 00:00:00 2001 From: Vladimir Dolzhenko Date: Mon, 14 Oct 2019 14:19:24 +0200 Subject: [PATCH] Wrap file.declarations with runReadAction #EA-209932 Fixed --- .../src/org/jetbrains/kotlin/backend/common/CodegenUtil.kt | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/compiler/backend-common/src/org/jetbrains/kotlin/backend/common/CodegenUtil.kt b/compiler/backend-common/src/org/jetbrains/kotlin/backend/common/CodegenUtil.kt index 54fc1bbef03..e7eb0413350 100644 --- a/compiler/backend-common/src/org/jetbrains/kotlin/backend/common/CodegenUtil.kt +++ b/compiler/backend-common/src/org/jetbrains/kotlin/backend/common/CodegenUtil.kt @@ -5,6 +5,7 @@ package org.jetbrains.kotlin.backend.common +import com.intellij.openapi.application.ApplicationManager import com.intellij.openapi.project.Project import com.intellij.psi.PsiElement import org.jetbrains.kotlin.backend.common.bridges.findInterfaceImplementation @@ -171,10 +172,12 @@ object CodegenUtil { * Returns functions, properties and type aliases in the given [file] which should be generated by the back-end. */ @JvmStatic - fun getMemberDeclarationsToGenerate(file: KtFile): List = - file.declarations.filter { declaration -> + fun getMemberDeclarationsToGenerate(file: KtFile): List { + val declarations = ApplicationManager.getApplication().runReadAction> { file.declarations } + return declarations.filter { declaration -> !declaration.hasExpectModifier() && (declaration is KtNamedFunction || declaration is KtProperty || declaration is KtTypeAlias) } + } @JvmStatic fun getMemberDescriptorsToGenerate(file: KtFile, bindingContext: BindingContext): List =