KT-15898 Cannot use type alias to qualify enum entry

Type alias static scope includes enum entries for underlying enum class.
This commit is contained in:
Dmitry Petrov
2017-01-25 12:25:19 +03:00
parent a974ed1049
commit 1613ad0505
11 changed files with 120 additions and 2 deletions
@@ -0,0 +1,6 @@
enum class MyEnum { A }
typealias TestAlias = MyEnum
val test1 = MyEnum.A
val test2 = TestAlias.A
@@ -0,0 +1,24 @@
package
public val test1: MyEnum
public val test2: MyEnum
public final enum class MyEnum : kotlin.Enum<MyEnum> {
enum entry A
private constructor MyEnum()
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: MyEnum): 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<MyEnum!>!
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): MyEnum
public final /*synthesized*/ fun values(): kotlin.Array<MyEnum>
}
public typealias TestAlias = MyEnum