Remove suspendCoroutineOrReturn intrinsic from compiler
#KT-21240: Fixed Also, change logic of intrinsics check. #KT-23438: Fixed
This commit is contained in:
@@ -496,7 +496,7 @@ public class JsInliner extends JsVisitorWithContextImpl {
|
||||
@NotNull LanguageVersionSettings languageVersionSettings
|
||||
) {
|
||||
if (!(descriptor instanceof FunctionDescriptor)) return false;
|
||||
return CommonCoroutineCodegenUtilKt.isBuiltInSuspendCoroutineOrReturn(
|
||||
return CommonCoroutineCodegenUtilKt.isBuiltInSuspendCoroutineUninterceptedOrReturn(
|
||||
(FunctionDescriptor) descriptor.getOriginal(), languageVersionSettings
|
||||
);
|
||||
}
|
||||
|
||||
+1
-7
@@ -5,7 +5,6 @@
|
||||
|
||||
package org.jetbrains.kotlin.js.translate.reference
|
||||
|
||||
import org.jetbrains.kotlin.backend.common.isBuiltInSuspendCoroutineOrReturn
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltIns
|
||||
import org.jetbrains.kotlin.builtins.PrimitiveType
|
||||
import org.jetbrains.kotlin.builtins.functions.FunctionInvokeDescriptor
|
||||
@@ -153,12 +152,7 @@ class CallArgumentTranslator private constructor(
|
||||
|
||||
val callableDescriptor = resolvedCall.resultingDescriptor
|
||||
if (callableDescriptor is FunctionDescriptor && callableDescriptor.isSuspend) {
|
||||
var continuationArg: JsExpression = TranslationUtils.translateContinuationArgument(context())
|
||||
if (callableDescriptor.original.isBuiltInSuspendCoroutineOrReturn(context.languageVersionSettings)) {
|
||||
val facadeName = context().getNameForDescriptor(TranslationUtils.getCoroutineProperty(context(), "facade"))
|
||||
continuationArg = JsAstUtils.pureFqn(facadeName, continuationArg)
|
||||
}
|
||||
result.add(continuationArg)
|
||||
result.add(TranslationUtils.translateContinuationArgument(context()))
|
||||
}
|
||||
|
||||
removeLastUndefinedArguments(result)
|
||||
|
||||
Reference in New Issue
Block a user