JVM_IR: Perform asm type conversion for string concat arguments.

This ensures that the Unit instance is loaded when string
concatenation contains a sub part that is a call of a Unit
return-type method.
This commit is contained in:
Mads Ager
2019-03-12 10:51:33 +01:00
committed by max-kammerer
parent 013ad4b8e4
commit 8b566fda76
2 changed files with 1 additions and 2 deletions
@@ -892,7 +892,7 @@ class ExpressionCodegen(
// Use StringBuilder to concatenate.
AsmUtil.genStringBuilderConstructor(mv)
expression.arguments.forEach {
val stackValue = gen(it, data)
val stackValue = gen(it, it.asmType, data)
AsmUtil.genInvokeAppendMethod(mv, stackValue.type, stackValue.kotlinType)
}
mv.invokevirtual("java/lang/StringBuilder", "toString", "()Ljava/lang/String;", false)
@@ -1,4 +1,3 @@
// IGNORE_BACKEND: JVM_IR
data class A(val x: Unit)
fun box(): String {