Prohibit properties with backing fields inside inline classes

This commit is contained in:
Mikhail Zarechenskiy
2018-05-07 00:15:06 +03:00
parent 29d15b9990
commit 043c3d9a97
8 changed files with 95 additions and 9 deletions
@@ -0,0 +1,30 @@
package
public interface A {
public abstract val goodSize: kotlin.Int
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 interface B {
public abstract val badSize: kotlin.Int
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 final inline class Foo : A, B {
public constructor Foo(/*0*/ x: kotlin.Int)
public final val a0: kotlin.Int
public final val a1: kotlin.Int = 0
public final var a2: kotlin.Int
public final var a3: kotlin.Int
public open override /*1*/ val badSize: kotlin.Int = 0
public open override /*1*/ val goodSize: kotlin.Int
public final lateinit var lateinitProperty: kotlin.String
public final val x: kotlin.Int
public open override /*2*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*2*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*2*/ /*fake_override*/ fun toString(): kotlin.String
}