Report UNINITIALIZED_VARIABLE also for qualified object property #KT-12809 Fixed

(cherry picked from commit 7b2857f)
This commit is contained in:
Mikhail Glukhikh
2016-08-05 13:24:52 +03:00
committed by Mikhail Glukhikh
parent 35446037bb
commit 0c98231f53
7 changed files with 92 additions and 1 deletions
@@ -0,0 +1,8 @@
// See KT-12809
open class A(val a: Any) {
override fun toString() = a.toString()
}
object B : A(B.<!UNINITIALIZED_VARIABLE!>foo<!>) { // call B.foo should be not-allowed
val foo = 4
}
@@ -0,0 +1,18 @@
package
public open class A {
public constructor A(/*0*/ a: kotlin.Any)
public final val a: kotlin.Any
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*/ fun toString(): kotlin.String
}
public object B : A {
private constructor B()
public final override /*1*/ /*fake_override*/ val a: kotlin.Any
public final val foo: kotlin.Int = 4
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
}
@@ -29,7 +29,7 @@ enum class D(val x: Int) {
}
enum class E(val v: Int) {
E1(Nested.COPY);
E1(Nested.<!UNINITIALIZED_VARIABLE!>COPY<!>);
object Nested {
val COPY = E1.v