Initialize builder inference lambda anyway, even a call is inapplicable
^KT-47744 Fixed
This commit is contained in:
committed by
teamcityserver
parent
2b0ba6fa40
commit
357fda2efa
+4
@@ -30,6 +30,8 @@ interface InferenceSession {
|
||||
diagnosticsHolder: KotlinDiagnosticsHolder
|
||||
): Map<TypeConstructor, UnwrappedType> = emptyMap()
|
||||
|
||||
override fun initializeLambda(lambda: ResolvedLambdaAtom) { }
|
||||
|
||||
override fun writeOnlyStubs(callInfo: SingleCallResolutionResult): Boolean = false
|
||||
override fun callCompleted(resolvedAtom: ResolvedAtom): Boolean = false
|
||||
override fun shouldCompleteResolvedSubAtomsOf(resolvedCallAtom: ResolvedCallAtom) = true
|
||||
@@ -53,6 +55,8 @@ interface InferenceSession {
|
||||
diagnosticsHolder: KotlinDiagnosticsHolder
|
||||
): Map<TypeConstructor, UnwrappedType>?
|
||||
|
||||
fun initializeLambda(lambda: ResolvedLambdaAtom)
|
||||
|
||||
fun writeOnlyStubs(callInfo: SingleCallResolutionResult): Boolean
|
||||
fun callCompleted(resolvedAtom: ResolvedAtom): Boolean
|
||||
fun shouldCompleteResolvedSubAtomsOf(resolvedCallAtom: ResolvedCallAtom): Boolean
|
||||
|
||||
+1
@@ -147,6 +147,7 @@ class PostponedArgumentsAnalyzer(
|
||||
returnArgumentsAnalysisResult
|
||||
|
||||
if (hasInapplicableCallForBuilderInference) {
|
||||
inferenceSession?.initializeLambda(lambda)
|
||||
c.getBuilder().removePostponedVariables()
|
||||
return
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user