Check that resolve works properly with inner classes in enum entries

This commit is contained in:
Dmitry Petrov
2017-09-08 12:33:27 +03:00
parent ba2c3136bb
commit 26b2f59b86
4 changed files with 45 additions and 0 deletions
@@ -0,0 +1,13 @@
// !LANGUAGE: +InnerClassInEnumEntryClass
enum class A {
X {
val x = 1
fun foo() {}
inner class Inner {
val y = x
fun bar() = foo()
}
}
}
@@ -0,0 +1,20 @@
package
public final enum class A : kotlin.Enum<A> {
enum entry X
private constructor A()
public final override /*1*/ /*fake_override*/ val name: kotlin.String
public final override /*1*/ /*fake_override*/ val ordinal: kotlin.Int
protected final override /*1*/ /*fake_override*/ fun clone(): kotlin.Any
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: A): kotlin.Int
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
protected/*protected and package*/ final override /*1*/ /*fake_override*/ /*isHiddenForResolutionEverywhereBesideSupercalls*/ fun finalize(): kotlin.Unit
public final override /*1*/ /*fake_override*/ /*isHiddenForResolutionEverywhereBesideSupercalls*/ fun getDeclaringClass(): java.lang.Class<A!>!
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
// Static members
public final /*synthesized*/ fun valueOf(/*0*/ value: kotlin.String): A
public final /*synthesized*/ fun values(): kotlin.Array<A>
}