JS: refactor generation of functions with optional parameters. Fix #KT-7302, #KT-13888

This commit is contained in:
Alexey Andreev
2016-09-16 15:40:12 +03:00
parent 4b3cf432dc
commit d2050ace72
24 changed files with 428 additions and 256 deletions
@@ -0,0 +1,25 @@
package foo
var global: String = ""
fun bar(): Int {
global += ":bar:"
return 100
}
fun baz() = 1
class A(val x: Int = when (baz()) { 1 -> bar(); else -> 0 })
fun box(): String {
global = ""
val a1 = A(10)
assertEquals(10, a1.x)
assertEquals("", global)
val a2 = A()
assertEquals(100, a2.x)
assertEquals(":bar:", global)
return "OK"
}