diff --git a/idea/src/org/jetbrains/kotlin/idea/inspections/blockingCallsDetection/CoroutineNonBlockingContextChecker.kt.183 b/idea/src/org/jetbrains/kotlin/idea/inspections/blockingCallsDetection/CoroutineNonBlockingContextChecker.kt.183 index 63c07dffaa7..8474ac7c862 100644 --- a/idea/src/org/jetbrains/kotlin/idea/inspections/blockingCallsDetection/CoroutineNonBlockingContextChecker.kt.183 +++ b/idea/src/org/jetbrains/kotlin/idea/inspections/blockingCallsDetection/CoroutineNonBlockingContextChecker.kt.183 @@ -13,10 +13,8 @@ import org.jetbrains.kotlin.builtins.getReceiverTypeFromFunctionType import org.jetbrains.kotlin.builtins.isBuiltinFunctionalType import org.jetbrains.kotlin.builtins.isSuspendFunctionType import org.jetbrains.kotlin.config.LanguageFeature -import org.jetbrains.kotlin.config.LanguageVersion import org.jetbrains.kotlin.idea.caches.resolve.analyze import org.jetbrains.kotlin.idea.caches.resolve.resolveToCall -import org.jetbrains.kotlin.idea.project.getLanguageVersionSettings import org.jetbrains.kotlin.lexer.KtTokens import org.jetbrains.kotlin.name.FqName import org.jetbrains.kotlin.psi.* @@ -32,8 +30,7 @@ class CoroutineNonBlockingContextChecker : NonBlockingContextChecker { override fun isApplicable(file: PsiFile): Boolean { val languageVersionSettings = file.project.getLanguageVersionSettings() - return languageVersionSettings.supportsFeature(LanguageFeature.Coroutines) && - languageVersionSettings.languageVersion >= LanguageVersion.KOTLIN_1_3 + return languageVersionSettings.supportsFeature(LanguageFeature.ReleaseCoroutines) } override fun isContextNonBlockingFor(element: PsiElement): Boolean { @@ -45,7 +42,7 @@ class CoroutineNonBlockingContextChecker : NonBlockingContextChecker { val containingArgument = PsiTreeUtil.getParentOfType(containingLambda, KtValueArgument::class.java) if (containingArgument != null) { val callExpression = PsiTreeUtil.getParentOfType(containingArgument, KtCallExpression::class.java) ?: return false - val call = callExpression.resolveToCall(BodyResolveMode.FULL) ?: return false + val call = callExpression.resolveToCall(BodyResolveMode.PARTIAL) ?: return false val hasBlockingAnnotation = call.getFirstArgument()?.resolveToCall() ?.resultingDescriptor?.annotations?.hasAnnotation(FqName(BLOCKING_CONTEXT_ANNOTATION))