diff --git a/plugins/uast-kotlin/src/org/jetbrains/uast/kotlin/internal/kotlinInternalUastUtils.kt b/plugins/uast-kotlin/src/org/jetbrains/uast/kotlin/internal/kotlinInternalUastUtils.kt index 2a2abaae31a..f56e713b1dc 100644 --- a/plugins/uast-kotlin/src/org/jetbrains/uast/kotlin/internal/kotlinInternalUastUtils.kt +++ b/plugins/uast-kotlin/src/org/jetbrains/uast/kotlin/internal/kotlinInternalUastUtils.kt @@ -283,7 +283,9 @@ internal fun KtExpression.unwrapBlockOrParenthesis(): KtExpression { } internal fun KtElement.analyze(): BindingContext { + val containingFile = containingFile if (!isValid || containingFile !is KtFile) return BindingContext.EMPTY // EA-114080, EA-113475, EA-134193 + if (containingFile.doNotAnalyze != null) return BindingContext.EMPTY // To prevent exceptions during analysis return ServiceManager.getService(project, KotlinUastResolveProviderService::class.java) ?.getBindingContext(this) ?: BindingContext.EMPTY }