From 50f82c90944c8cd7aa23fc8dae48c8b195bb397b Mon Sep 17 00:00:00 2001 From: Mikhail Glukhikh Date: Mon, 17 Apr 2023 18:45:46 +0200 Subject: [PATCH] FirBuilderInferenceSession: fix calculation of effectivelyEmptyCommonSystem #KT-57873 Fixed --- .../fir/resolve/inference/FirBuilderInferenceSession.kt | 5 ++--- .../builderInference/inferenceFromLambdaReturnType.fir.txt | 2 +- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/inference/FirBuilderInferenceSession.kt b/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/inference/FirBuilderInferenceSession.kt index d4a1bfead0c..13fb95a2cb5 100644 --- a/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/inference/FirBuilderInferenceSession.kt +++ b/compiler/fir/resolve/src/org/jetbrains/kotlin/fir/resolve/inference/FirBuilderInferenceSession.kt @@ -155,9 +155,8 @@ class FirBuilderInferenceSession( val commonSystem = components.session.inferenceComponents.createConstraintSystem() val nonFixedToVariablesSubstitutor = createNonFixedTypeToVariableSubstitutor() - integrateConstraints(commonSystem, initialStorage, nonFixedToVariablesSubstitutor, false) - - var effectivelyEmptyCommonSystem = true + var effectivelyEmptyCommonSystem = + !integrateConstraints(commonSystem, initialStorage, nonFixedToVariablesSubstitutor, false) for ((_, candidate) in commonCalls) { val hasConstraints = diff --git a/compiler/testData/diagnostics/testsWithStdLib/builderInference/inferenceFromLambdaReturnType.fir.txt b/compiler/testData/diagnostics/testsWithStdLib/builderInference/inferenceFromLambdaReturnType.fir.txt index a89a3e3de8f..2db4b64a06b 100644 --- a/compiler/testData/diagnostics/testsWithStdLib/builderInference/inferenceFromLambdaReturnType.fir.txt +++ b/compiler/testData/diagnostics/testsWithStdLib/builderInference/inferenceFromLambdaReturnType.fir.txt @@ -8,7 +8,7 @@ FILE: inferenceFromLambdaReturnType.kt public final fun getWithFallback(fallback: R|(ThemeKey) -> S|): R|kotlin/Unit| { } public final fun main(): R|kotlin/Unit| { - R|/getWithFallback|( = getWithFallback@fun (it: R|ThemeKey|): R|kotlin/String| { + R|/getWithFallback|( = getWithFallback@fun (it: R|ThemeKey|): R|kotlin/String| { ^ String() } )