Frontend: fixed explicit receiver kind for dynamic call with implicit dispatch receiver.

Additionally added tests for other cases.
This commit is contained in:
Zalim Bashorov
2014-12-11 15:53:18 +03:00
parent 8de11e4664
commit 4dff9cf5fc
14 changed files with 175 additions and 10 deletions
@@ -0,0 +1,18 @@
class A {
fun dynamic.foo() {}
}
fun bar(a: A, b: dynamic) {
with (a) {
b.<caret>foo()
}
}
Resolved call:
Resulting descriptor: fun dynamic.foo(): Unit defined in A
Explicit receiver kind = EXTENSION_RECEIVER
Dispatch receiver = AExt{fun A.<anonymous>(): Unit defined in bar}
Extension receiver = b {('Nothing'..'Any?')}