diff --git a/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/inference/PostponedArguments.kt b/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/inference/PostponedArguments.kt index 8ed284026e2..972b8578e48 100644 --- a/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/inference/PostponedArguments.kt +++ b/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/inference/PostponedArguments.kt @@ -42,7 +42,9 @@ fun Candidate.preprocessLambdaArgument( }?.type as ConeKotlinType? if (explicitTypeArgument == null || explicitTypeArgument.typeArguments.isNotEmpty()) { - return LambdaWithTypeVariableAsExpectedTypeAtom(argument, expectedType, this) + return LambdaWithTypeVariableAsExpectedTypeAtom(argument, expectedType, this).also { + this.postponedAtoms += it + } } } } diff --git a/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/inference/PostponedAtoms.kt b/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/inference/PostponedAtoms.kt index 3f495fd1bf4..917f8678005 100644 --- a/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/inference/PostponedAtoms.kt +++ b/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/inference/PostponedAtoms.kt @@ -90,9 +90,6 @@ class LambdaWithTypeVariableAsExpectedTypeAtom( private val initialExpectedTypeType: ConeKotlinType, val candidateOfOuterCall: Candidate, ) : PostponedResolvedAtom(), LambdaWithTypeVariableAsExpectedTypeMarker { - init { - candidateOfOuterCall.postponedAtoms += this - } override var parameterTypesFromDeclaration: List? = null private set