Secondary constructors delegation calls and body resolve

This commit is contained in:
Denis Zharkov
2015-02-03 14:14:37 +03:00
parent b2cecf1dd0
commit 1555eec954
71 changed files with 1093 additions and 50 deletions
@@ -0,0 +1,22 @@
open class B {
constructor(vararg x: Int) {}
}
class A : B {
<caret>constructor(vararg x: Int): super(*x, *intArray(1, 2, 3), 4) {}
}
Resolved call:
Resulting descriptor: constructor B(vararg x: Int) defined in B
Explicit receiver kind = NO_EXPLICIT_RECEIVER
Dispatch receiver = NO_RECEIVER
Extension receiver = NO_RECEIVER
Value arguments mapping:
SUCCESS x : IntArray = x
SUCCESS x : IntArray = intArray(1, 2, 3)
SUCCESS x : IntArray = 4