Remove duplicate parameter null checks in JvmStatic delegate methods.
Remove unnecessary non-null parameter checks inside static delegate methods created for @JvmStatic companion object methods. Allows function generation strategy decide if such checks need to be injected. #KT-7188 Fixed
This commit is contained in:
committed by
Dmitry Petrov
parent
9e82ab38f0
commit
52ccd67ec1
@@ -0,0 +1,46 @@
|
||||
// WITH_RUNTIME
|
||||
// TARGET_BACKEND: JVM
|
||||
|
||||
// FILE: Dummy.kt
|
||||
// Empty body to trigger multifile test mode
|
||||
|
||||
// FILE: Test.kt
|
||||
class TestMethod {
|
||||
companion object {
|
||||
@JvmStatic
|
||||
fun test(s0: String, s1: String?) = s0 + (s1 ?: "null")
|
||||
}
|
||||
}
|
||||
|
||||
class TestMethodOverloads {
|
||||
companion object {
|
||||
@JvmStatic
|
||||
@JvmOverloads
|
||||
fun test(s0: String = "s0", s1: String = "s1", s2: String = "s2") = s0 + s1 + s2
|
||||
}
|
||||
}
|
||||
|
||||
class TestProperty {
|
||||
companion object {
|
||||
@JvmStatic
|
||||
var prop: String = "Blah"
|
||||
}
|
||||
}
|
||||
|
||||
class TestAccessor {
|
||||
companion object {
|
||||
var prop: String = "Blah" @JvmStatic set
|
||||
}
|
||||
}
|
||||
|
||||
// @TestMethod.class:
|
||||
// 0 INVOKESTATIC kotlin/jvm/internal/Intrinsics.checkParameterIsNotNull \(Ljava/lang/Object;Ljava/lang/String;\)V
|
||||
|
||||
// @TestMethodOverloads.class:
|
||||
// 0 INVOKESTATIC kotlin/jvm/internal/Intrinsics.checkParameterIsNotNull \(Ljava/lang/Object;Ljava/lang/String;\)V
|
||||
|
||||
// @TestProperty.class:
|
||||
// 0 INVOKESTATIC kotlin/jvm/internal/Intrinsics.checkParameterIsNotNull \(Ljava/lang/Object;Ljava/lang/String;\)V
|
||||
|
||||
// @TestAccessor.class:
|
||||
// 0 INVOKESTATIC kotlin/jvm/internal/Intrinsics.checkParameterIsNotNull \(Ljava/lang/Object;Ljava/lang/String;\)V
|
||||
Reference in New Issue
Block a user