Do not generate unnecessary super-call checks for functions with defaults

Such check should only be generated for a function in an open class

 #KT-11962 Fixed
This commit is contained in:
Alexander Udalov
2016-12-23 18:24:26 +03:00
parent 3d9c264d63
commit b4051c4577
8 changed files with 65 additions and 46 deletions
@@ -1,13 +0,0 @@
inline fun test(a: Int = 1, b: Long = 1L, c: String = "123") {
val d = 1
}
//
// 1 test\$default\(IJLjava/lang/String;ILjava/lang/Object;\)V\s+L0
// 1 LOCALVARIABLE a I L0 L8 0
// 1 LOCALVARIABLE b J L0 L8 1
// 1 LOCALVARIABLE c Ljava/lang/String; L0 L8 3
// 1 LOCALVARIABLE \$i\$f\$test I L5 L8 4
// 1 LOCALVARIABLE d I L7 L8 5
@@ -1,4 +1,4 @@
class A {
open class A {
inline fun test(a: Int = 1, b: Long = 1L, c: String = "123") {
val d = 1
}