From 7c38f99cbf0d2bd9943cf1aab4e3dfc2c975461c Mon Sep 17 00:00:00 2001 From: Victor Petukhov Date: Mon, 16 May 2022 11:16:58 +0200 Subject: [PATCH] [FE 1.0] Improve error message for disabled "Unit conversions" feature ^KT-49394 Fixed --- .../rendering/LanguageFeatureMessageRenderer.kt | 7 +++++++ .../testData/diagnostics/tests/unitConversion/kt49394.kt | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/compiler/frontend.common-psi/src/org/jetbrains/kotlin/diagnostics/rendering/LanguageFeatureMessageRenderer.kt b/compiler/frontend.common-psi/src/org/jetbrains/kotlin/diagnostics/rendering/LanguageFeatureMessageRenderer.kt index dade8820be0..efb7d15b323 100644 --- a/compiler/frontend.common-psi/src/org/jetbrains/kotlin/diagnostics/rendering/LanguageFeatureMessageRenderer.kt +++ b/compiler/frontend.common-psi/src/org/jetbrains/kotlin/diagnostics/rendering/LanguageFeatureMessageRenderer.kt @@ -12,6 +12,9 @@ class LanguageFeatureMessageRenderer @JvmOverloads constructor( private val type: Type, private val useHtml: Boolean = false ) : DiagnosticParameterRenderer> { + private val additionalFeatureMessages = mapOf( + LanguageFeature.UnitConversionsOnArbitraryExpressions to "You can also change the original type of this expression to (...) -> Unit" + ) enum class Type { UNSUPPORTED, @@ -52,6 +55,10 @@ class LanguageFeatureMessageRenderer @JvmOverloads constructor( } } + if (feature in additionalFeatureMessages) { + sb.append(". ${additionalFeatureMessages[feature]}") + } + return sb.toString() } } diff --git a/compiler/testData/diagnostics/tests/unitConversion/kt49394.kt b/compiler/testData/diagnostics/tests/unitConversion/kt49394.kt index aadb1a601bf..ef2bfb706b9 100644 --- a/compiler/testData/diagnostics/tests/unitConversion/kt49394.kt +++ b/compiler/testData/diagnostics/tests/unitConversion/kt49394.kt @@ -11,5 +11,5 @@ val x = { } fun test() { - handle(x) + handle( Unit")!>x) }