Fix wrong deserialization order

For case when property and function have the same name or
extension and non-extension member have the same name
This commit is contained in:
Pavel V. Talanov
2014-11-14 15:18:58 +03:00
parent e8aee5cddf
commit 40addaed13
8 changed files with 141 additions and 35 deletions
@@ -0,0 +1,18 @@
//ALLOW_AST_ACCESS
package test
val a = 0
val c = 0
fun a() = 0
fun b() = 0
fun c() = 0
class A {
val a = 0
val c = 0
fun a() = 0
fun b() = 0
fun c() = 0
}
@@ -0,0 +1,20 @@
package test
internal val a: kotlin.Int = 0
internal fun <get-a>(): kotlin.Int
internal val c: kotlin.Int = 0
internal fun <get-c>(): kotlin.Int
internal fun a(): kotlin.Int
internal fun b(): kotlin.Int
internal fun c(): kotlin.Int
internal final class A {
/*primary*/ public constructor A()
internal final val a: kotlin.Int = 0
internal final fun <get-a>(): kotlin.Int
internal final val c: kotlin.Int = 0
internal final fun <get-c>(): kotlin.Int
internal final fun a(): kotlin.Int
internal final fun b(): kotlin.Int
internal final fun c(): kotlin.Int
}
@@ -0,0 +1,10 @@
//ALLOW_AST_ACCESS
package test
class A {
val a: Int = 3
val c: Int = 3
val Int.a: Int get() = 3
val Int.b: Int get() = 4
val Int.c: Int get() = 4
}
@@ -0,0 +1,15 @@
package test
internal final class A {
/*primary*/ public constructor A()
internal final val a: kotlin.Int = 3
internal final fun <get-a>(): kotlin.Int
internal final val c: kotlin.Int = 3
internal final fun <get-c>(): kotlin.Int
internal final val kotlin.Int.a: kotlin.Int
internal final fun kotlin.Int.<get-a>(): kotlin.Int
internal final val kotlin.Int.b: kotlin.Int
internal final fun kotlin.Int.<get-b>(): kotlin.Int
internal final val kotlin.Int.c: kotlin.Int
internal final fun kotlin.Int.<get-c>(): kotlin.Int
}