From 208c33a51dbb32459337d7a0b16cc8294cf88880 Mon Sep 17 00:00:00 2001 From: Ilya Kirillov Date: Mon, 28 Jan 2019 17:42:09 +0300 Subject: [PATCH] New J2K: Add support of prefix expression in ImplicitCastsConversion --- .../kotlin/j2k/conversions/ImplicitCastsConversion.kt | 6 ++++++ 1 file changed, 6 insertions(+) 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