From e8731f3f31d10bbd03a7584e9851daca600d2e60 Mon Sep 17 00:00:00 2001 From: Kirill Rakhman Date: Fri, 8 Sep 2023 17:45:16 +0200 Subject: [PATCH] [FIR] Use resolvedType instead of coneTypeOrNull in tests #KT-61367 --- .../frontend/fir/handlers/FirDiagnosticsHandler.kt | 11 +++++------ .../tests/org/jetbrains/kotlin/fir/FirResolveBench.kt | 4 ++-- 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/frontend/fir/handlers/FirDiagnosticsHandler.kt b/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/frontend/fir/handlers/FirDiagnosticsHandler.kt index 74ed476123b..41431a169b1 100644 --- a/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/frontend/fir/handlers/FirDiagnosticsHandler.kt +++ b/compiler/tests-common-new/tests/org/jetbrains/kotlin/test/frontend/fir/handlers/FirDiagnosticsHandler.kt @@ -212,7 +212,7 @@ class FirDiagnosticsHandler(testServices: TestServices) : FirAnalysisHandler(tes val calleeDeclaration = element.calleeReference.toResolvedCallableSymbol() ?: return val isInvokeCallWithDynamicReceiver = calleeDeclaration.name == OperatorNameConventions.INVOKE && element is FirQualifiedAccessExpression - && element.dispatchReceiver?.coneTypeOrNull?.isFunctionTypeWithDynamicReceiver(firFile.moduleData.session) == true + && element.dispatchReceiver?.resolvedType?.isFunctionTypeWithDynamicReceiver(firFile.moduleData.session) == true if (calleeDeclaration.origin !is FirDeclarationOrigin.DynamicScope && !isInvokeCallWithDynamicReceiver) { return @@ -293,14 +293,13 @@ class FirDiagnosticsHandler(testServices: TestServices) : FirAnalysisHandler(tes private fun DebugDiagnosticConsumer.reportExpressionTypeDiagnostic(element: FirExpression) { report(DebugInfoDiagnosticFactory1.EXPRESSION_TYPE, element) { + val type = element.resolvedType + val originalType = (element as? FirSmartCastExpression)?.takeIf { it.isStable }?.originalExpression?.resolvedType - val type = element.coneTypeSafe() - val originalType = (element as? FirSmartCastExpression)?.takeIf { it.isStable }?.originalExpression?.coneTypeOrNull - - if (type != null && originalType != null) { + if (originalType != null) { "${originalType.renderForDebugInfo()} & ${type.renderForDebugInfo()}" } else { - type?.renderForDebugInfo() ?: "Type is unknown" + type.renderForDebugInfo() } } } diff --git a/compiler/tests-common/tests/org/jetbrains/kotlin/fir/FirResolveBench.kt b/compiler/tests-common/tests/org/jetbrains/kotlin/fir/FirResolveBench.kt index 83f9e434340..15ea8b76943 100644 --- a/compiler/tests-common/tests/org/jetbrains/kotlin/fir/FirResolveBench.kt +++ b/compiler/tests-common/tests/org/jetbrains/kotlin/fir/FirResolveBench.kt @@ -275,7 +275,7 @@ class FirResolveBench(val withProgress: Boolean, val listener: BenchListener? = override fun visitFunctionCall(functionCall: FirFunctionCall) { val callee = functionCall.calleeReference - val type = functionCall.coneTypeOrNull + val type = functionCall.resolvedType if (type is ConeErrorType) { errorFunctionCallTypes++ val psi = callee.psi @@ -289,7 +289,7 @@ class FirResolveBench(val withProgress: Boolean, val listener: BenchListener? = override fun visitQualifiedAccessExpression(qualifiedAccessExpression: FirQualifiedAccessExpression) { val callee = qualifiedAccessExpression.calleeReference - val type = qualifiedAccessExpression.coneTypeOrNull + val type = qualifiedAccessExpression.resolvedType if (type is ConeErrorType) { errorQualifiedAccessTypes++ val psi = callee.psi