Change resolution priority about implicit receivers and synthesized member-like descriptors.

Change resolution to consider extensions to implicit receiver before members of another implicit receiver.
Make synthesized member-like extensions resolve right after the members.

#KT-10510 Fixed
#KT-10219 Fixed
This commit is contained in:
Stanislav Erokhin
2016-01-13 16:34:16 +03:00
parent dee040a5b5
commit 3a9ecf0bce
28 changed files with 357 additions and 44 deletions
@@ -0,0 +1,21 @@
package
public var A.timeInMillis: kotlin.String
public fun a(/*0*/ c: Calendar): kotlin.Unit
public fun </*0*/ T> T.apply(/*0*/ f: T.() -> kotlin.Unit): T
public final class A {
public constructor A()
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
public open class Calendar {
public constructor Calendar()
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open fun getTimeInMillis(): kotlin.Long
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open fun setTimeInMillis(/*0*/ millis: kotlin.Long): kotlin.Unit
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}