Support IMPLICIT_INTEGER_COERCION

This commit is contained in:
Mikhael Bogdanov
2017-06-07 12:15:57 +02:00
parent d888addba0
commit 956cc0dbfd
@@ -545,6 +545,7 @@ class ExpressionCodegen(
coerce(expression.argument.asmType, Type.VOID_TYPE, mv)
return none()
}
IrTypeOperator.IMPLICIT_CAST -> {
gen(expression.argument, asmType, data)
}
@@ -577,7 +578,10 @@ class ExpressionCodegen(
"(Ljava/lang/Object;Ljava/lang/String;)V", false)
}
else -> super.visitTypeOperator(expression, data)
IrTypeOperator.IMPLICIT_INTEGER_COERCION -> {
gen(expression.argument, Type.INT_TYPE, data)
StackValue.coerce(Type.INT_TYPE, typeMapper.mapType(expression.type), mv)
}
}
return expression.onStack
}