Constructor with default arguments for inner class
#KT-2852 Fixed
This commit is contained in:
@@ -0,0 +1,8 @@
|
||||
class A(val a: Int = 0)
|
||||
|
||||
fun box(): String {
|
||||
if (A().a == 0 && A(1).a == 1) {
|
||||
return "OK"
|
||||
}
|
||||
return "fail"
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
class A {
|
||||
class B(val a: String = "a", val b: Int = 55, val c: String = "c")
|
||||
}
|
||||
|
||||
fun box(): String {
|
||||
val bDefault = A().B()
|
||||
val b = A().B("aa", 66, "cc")
|
||||
if (bDefault.a == "a" && bDefault.b == 55 && bDefault.c == "c") {
|
||||
if (b.a == "aa" && b.b == 66 && b.c == "cc") {
|
||||
return "OK"
|
||||
}
|
||||
}
|
||||
return "fail"
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
class A(val a: Int = 0, val b: String = "a")
|
||||
|
||||
fun box(): String {
|
||||
val a1 = A()
|
||||
val a2 = A(1)
|
||||
val a3 = A(b = "b")
|
||||
val a4 = A(2, "c")
|
||||
if (a1.a != 0 && a1.b != "a") return "fail"
|
||||
if (a2.a != 1 && a2.b != "a") return "fail"
|
||||
if (a3.a != 0 && a3.b != "b") return "fail"
|
||||
if (a4.a != 2 && a4.b != "c") return "fail"
|
||||
return "OK"
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
fun box(): String {
|
||||
val o = object {
|
||||
class A(val value: String = "OK")
|
||||
}
|
||||
|
||||
return o.A().value
|
||||
}
|
||||
Reference in New Issue
Block a user