diff --git a/j2k/newSrc/org/jetbrains/kotlin/j2k/conversions/ImplicitCastsConversion.kt b/j2k/newSrc/org/jetbrains/kotlin/j2k/conversions/ImplicitCastsConversion.kt index 1f4429b9c1d..a56e97000bf 100644 --- a/j2k/newSrc/org/jetbrains/kotlin/j2k/conversions/ImplicitCastsConversion.kt +++ b/j2k/newSrc/org/jetbrains/kotlin/j2k/conversions/ImplicitCastsConversion.kt @@ -79,6 +79,12 @@ class ImplicitCastsConversion(private val context: ConversionContext) : Recursiv } private fun JKExpression.castToAsPrimitiveTypes(toType: JKType): JKExpression? { + if (this is JKPrefixExpression + && (operator.token.text == "+" || operator.token.text == "-") + ) { + val casted = expression.castToAsPrimitiveTypes(toType) ?: return null + return JKPrefixExpressionImpl(casted, operator) + } val expressionTypeAsPrimitive = type(context.symbolProvider)?.asPrimitiveType() ?: return null val toTypeAsPrimitive = toType.asPrimitiveType() ?: return null if (toTypeAsPrimitive == expressionTypeAsPrimitive) return null