Minor: pass suspend flag to lambda's copy

This commit is contained in:
Ilmir Usmanov
2018-07-03 21:38:01 +03:00
parent 28ad498956
commit 4e8cc53962
4 changed files with 11 additions and 13 deletions
@@ -754,7 +754,7 @@ public class FunctionCodegen {
@NotNull List<ValueParameterDescriptor> destructuredParametersForSuspendLambda,
int shiftForDestructuringVariables
) {
if (functionDescriptor.isSuspend()) {
if (functionDescriptor.isSuspend() && !(functionDescriptor instanceof AnonymousFunctionDescriptor)) {
FunctionDescriptor unwrapped = CoroutineCodegenUtilKt.unwrapInitialDescriptorForSuspendFunction(
functionDescriptor
);
@@ -611,7 +611,7 @@ class CodegenAnnotatingVisitor extends KtVisitorVoid {
nameStack.push(name);
if (functionDescriptor instanceof SimpleFunctionDescriptor && functionDescriptor.isSuspend()) {
createAndRecordSuspendFunctionView(closure, (SimpleFunctionDescriptor) functionDescriptor,true);
createAndRecordSuspendFunctionView(closure, (SimpleFunctionDescriptor) functionDescriptor, true);
}
functionsStack.push(functionDescriptor);