Fix cast for IMPLICIT_NOTNULL

This commit is contained in:
Mikhael Bogdanov
2017-11-17 14:33:18 +01:00
parent 05b56b0c4a
commit dde0535c5a
@@ -582,9 +582,9 @@ class ExpressionCodegen(
} }
IrTypeOperator.IMPLICIT_NOTNULL -> { IrTypeOperator.IMPLICIT_NOTNULL -> {
gen(expression.argument, OBJECT_TYPE, data) gen(expression.argument, asmType, data)
mv.dup() mv.dup()
mv.visitLdcInsn("TODO provide message") /*TODO*/ mv.visitLdcInsn("TODO provide message for IMPLICIT_NOTNULL") /*TODO*/
mv.invokestatic("kotlin/jvm/internal/Intrinsics", "checkExpressionValueIsNotNull", mv.invokestatic("kotlin/jvm/internal/Intrinsics", "checkExpressionValueIsNotNull",
"(Ljava/lang/Object;Ljava/lang/String;)V", false) "(Ljava/lang/Object;Ljava/lang/String;)V", false)
} }
@@ -1040,4 +1040,4 @@ fun DefaultCallArgs.generateOnStackIfNeeded(callGenerator: IrCallGenerator, isCo
callGenerator.putValueIfNeeded(parameterType, StackValue.constant(null, parameterType), ValueKind.METHOD_HANDLE_IN_DEFAULT, -1, codegen) callGenerator.putValueIfNeeded(parameterType, StackValue.constant(null, parameterType), ValueKind.METHOD_HANDLE_IN_DEFAULT, -1, codegen)
} }
return toInts.isNotEmpty() return toInts.isNotEmpty()
} }