[IR] update testdata: better support for IrEnumConstructorCall and IrEnumEntry
This commit is contained in:
committed by
teamcityserver
parent
602f0ddbc8
commit
5500b014f5
+1
-1
@@ -27,7 +27,7 @@ annotation class TestAnnotationClass : Annotation {
|
||||
|
||||
enum class TestEnumClass : Enum<TestEnumClass> {
|
||||
private constructor() /* primary */ {
|
||||
TODO("IrEnumConstructorCall")
|
||||
super/*Enum*/<TestEnumClass>()
|
||||
/* InstanceInitializerCall */
|
||||
|
||||
}
|
||||
|
||||
+72
-13
@@ -1,11 +1,13 @@
|
||||
enum class TestEnum1 : Enum<TestEnum1> {
|
||||
private constructor() /* primary */ {
|
||||
TODO("IrEnumConstructorCall")
|
||||
super/*Enum*/<TestEnum1>()
|
||||
/* InstanceInitializerCall */
|
||||
|
||||
}
|
||||
|
||||
TEST1 init = TODO("IrEnumConstructorCall") TEST2 init = TODO("IrEnumConstructorCall")
|
||||
TEST1 = TestEnum1()
|
||||
|
||||
TEST2 = TestEnum1()
|
||||
|
||||
fun values(): Array<TestEnum1> /* Synthetic body for ENUM_VALUES */
|
||||
|
||||
@@ -15,7 +17,7 @@ enum class TestEnum1 : Enum<TestEnum1> {
|
||||
|
||||
enum class TestEnum2 : Enum<TestEnum2> {
|
||||
private constructor(x: Int) /* primary */ {
|
||||
TODO("IrEnumConstructorCall")
|
||||
super/*Enum*/<TestEnum2>()
|
||||
/* InstanceInitializerCall */
|
||||
|
||||
}
|
||||
@@ -24,7 +26,11 @@ enum class TestEnum2 : Enum<TestEnum2> {
|
||||
field = x
|
||||
get
|
||||
|
||||
TEST1 init = TODO("IrEnumConstructorCall") TEST2 init = TODO("IrEnumConstructorCall") TEST3 init = TODO("IrEnumConstructorCall")
|
||||
TEST1 = TestEnum2(x = 1)
|
||||
|
||||
TEST2 = TestEnum2(x = 2)
|
||||
|
||||
TEST3 = TestEnum2(x = 3)
|
||||
|
||||
fun values(): Array<TestEnum2> /* Synthetic body for ENUM_VALUES */
|
||||
|
||||
@@ -34,12 +40,26 @@ enum class TestEnum2 : Enum<TestEnum2> {
|
||||
|
||||
abstract enum class TestEnum3 : Enum<TestEnum3> {
|
||||
private constructor() /* primary */ {
|
||||
TODO("IrEnumConstructorCall")
|
||||
super/*Enum*/<TestEnum3>()
|
||||
/* InstanceInitializerCall */
|
||||
|
||||
}
|
||||
|
||||
TEST init = TODO("IrEnumConstructorCall") abstract fun foo()
|
||||
TEST = TEST()
|
||||
private enum entry class TEST : TestEnum3 {
|
||||
private constructor() /* primary */ {
|
||||
super/*TestEnum3*/() /*~> Unit */
|
||||
/* InstanceInitializerCall */
|
||||
|
||||
}
|
||||
|
||||
override fun foo() {
|
||||
println(message = "Hello, world!")
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
abstract fun foo()
|
||||
|
||||
fun values(): Array<TestEnum3> /* Synthetic body for ENUM_VALUES */
|
||||
|
||||
@@ -49,7 +69,7 @@ abstract enum class TestEnum3 : Enum<TestEnum3> {
|
||||
|
||||
abstract enum class TestEnum4 : Enum<TestEnum4> {
|
||||
private constructor(x: Int) /* primary */ {
|
||||
TODO("IrEnumConstructorCall")
|
||||
super/*Enum*/<TestEnum4>()
|
||||
/* InstanceInitializerCall */
|
||||
|
||||
}
|
||||
@@ -58,7 +78,42 @@ abstract enum class TestEnum4 : Enum<TestEnum4> {
|
||||
field = x
|
||||
get
|
||||
|
||||
TEST1 init = TODO("IrEnumConstructorCall") TEST2 init = TODO("IrEnumConstructorCall") abstract fun foo()
|
||||
TEST1 = TEST1()
|
||||
private enum entry class TEST1 : TestEnum4 {
|
||||
private constructor() /* primary */ {
|
||||
super/*TestEnum4*/(x = 1) /*~> Unit */
|
||||
/* InstanceInitializerCall */
|
||||
|
||||
}
|
||||
|
||||
override fun foo() {
|
||||
println(message = TestEnum4)
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
TEST2 = TEST2()
|
||||
private enum entry class TEST2 : TestEnum4 {
|
||||
private constructor() /* primary */ {
|
||||
super/*TestEnum4*/(x = 2) /*~> Unit */
|
||||
/* InstanceInitializerCall */
|
||||
|
||||
}
|
||||
|
||||
val z: Int
|
||||
get
|
||||
|
||||
init {
|
||||
#z = <this>.<get-x>()
|
||||
}
|
||||
|
||||
override fun foo() {
|
||||
println(message = TestEnum4)
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
abstract fun foo()
|
||||
|
||||
fun values(): Array<TestEnum4> /* Synthetic body for ENUM_VALUES */
|
||||
|
||||
@@ -68,7 +123,7 @@ abstract enum class TestEnum4 : Enum<TestEnum4> {
|
||||
|
||||
enum class TestEnum5 : Enum<TestEnum5> {
|
||||
private constructor(x: Int = 0) /* primary */ {
|
||||
TODO("IrEnumConstructorCall")
|
||||
super/*Enum*/<TestEnum5>()
|
||||
/* InstanceInitializerCall */
|
||||
|
||||
}
|
||||
@@ -77,7 +132,11 @@ enum class TestEnum5 : Enum<TestEnum5> {
|
||||
field = x
|
||||
get
|
||||
|
||||
TEST1 init = TODO("IrEnumConstructorCall") TEST2 init = TODO("IrEnumConstructorCall") TEST3 init = TODO("IrEnumConstructorCall")
|
||||
TEST1 = TestEnum5()
|
||||
|
||||
TEST2 = TestEnum5()
|
||||
|
||||
TEST3 = TestEnum5(x = 0)
|
||||
|
||||
fun values(): Array<TestEnum5> /* Synthetic body for ENUM_VALUES */
|
||||
|
||||
@@ -91,7 +150,7 @@ fun f(): Int {
|
||||
|
||||
enum class TestEnum6 : Enum<TestEnum6> {
|
||||
private constructor(x: Int, y: Int) /* primary */ {
|
||||
TODO("IrEnumConstructorCall")
|
||||
super/*Enum*/<TestEnum6>()
|
||||
/* InstanceInitializerCall */
|
||||
|
||||
}
|
||||
@@ -104,10 +163,10 @@ enum class TestEnum6 : Enum<TestEnum6> {
|
||||
field = y
|
||||
get
|
||||
|
||||
TEST init = { // BLOCK
|
||||
TEST = { // BLOCK
|
||||
val tmp0_y: Int = f()
|
||||
val tmp1_x: Int = f()
|
||||
TODO("IrEnumConstructorCall")
|
||||
TestEnum6(x = tmp1_x, y = tmp0_y)
|
||||
}
|
||||
|
||||
fun values(): Array<TestEnum6> /* Synthetic body for ENUM_VALUES */
|
||||
|
||||
+65
-14
@@ -1,11 +1,11 @@
|
||||
enum class TestFinalEnum1 : Enum<TestFinalEnum1> {
|
||||
private constructor() /* primary */ {
|
||||
TODO("IrEnumConstructorCall")
|
||||
super/*Enum*/<TestFinalEnum1>()
|
||||
/* InstanceInitializerCall */
|
||||
|
||||
}
|
||||
|
||||
X1 init = TODO("IrEnumConstructorCall")
|
||||
X1 = TestFinalEnum1()
|
||||
|
||||
fun values(): Array<TestFinalEnum1> /* Synthetic body for ENUM_VALUES */
|
||||
|
||||
@@ -15,7 +15,7 @@ enum class TestFinalEnum1 : Enum<TestFinalEnum1> {
|
||||
|
||||
enum class TestFinalEnum2 : Enum<TestFinalEnum2> {
|
||||
private constructor(x: Int) /* primary */ {
|
||||
TODO("IrEnumConstructorCall")
|
||||
super/*Enum*/<TestFinalEnum2>()
|
||||
/* InstanceInitializerCall */
|
||||
|
||||
}
|
||||
@@ -24,7 +24,7 @@ enum class TestFinalEnum2 : Enum<TestFinalEnum2> {
|
||||
field = x
|
||||
get
|
||||
|
||||
X1 init = TODO("IrEnumConstructorCall")
|
||||
X1 = TestFinalEnum2(x = 1)
|
||||
|
||||
fun values(): Array<TestFinalEnum2> /* Synthetic body for ENUM_VALUES */
|
||||
|
||||
@@ -34,12 +34,14 @@ enum class TestFinalEnum2 : Enum<TestFinalEnum2> {
|
||||
|
||||
enum class TestFinalEnum3 : Enum<TestFinalEnum3> {
|
||||
private constructor() /* primary */ {
|
||||
TODO("IrEnumConstructorCall")
|
||||
super/*Enum*/<TestFinalEnum3>()
|
||||
/* InstanceInitializerCall */
|
||||
|
||||
}
|
||||
|
||||
X1 init = TODO("IrEnumConstructorCall") fun doStuff() {
|
||||
X1 = TestFinalEnum3()
|
||||
|
||||
fun doStuff() {
|
||||
}
|
||||
|
||||
fun values(): Array<TestFinalEnum3> /* Synthetic body for ENUM_VALUES */
|
||||
@@ -50,12 +52,24 @@ enum class TestFinalEnum3 : Enum<TestFinalEnum3> {
|
||||
|
||||
open enum class TestOpenEnum1 : Enum<TestOpenEnum1> {
|
||||
private constructor() /* primary */ {
|
||||
TODO("IrEnumConstructorCall")
|
||||
super/*Enum*/<TestOpenEnum1>()
|
||||
/* InstanceInitializerCall */
|
||||
|
||||
}
|
||||
|
||||
X1 init = TODO("IrEnumConstructorCall")
|
||||
X1 = X1()
|
||||
private enum entry class X1 : TestOpenEnum1 {
|
||||
private constructor() /* primary */ {
|
||||
super/*TestOpenEnum1*/() /*~> Unit */
|
||||
/* InstanceInitializerCall */
|
||||
|
||||
}
|
||||
|
||||
override fun toString(): String {
|
||||
return "X1"
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
fun values(): Array<TestOpenEnum1> /* Synthetic body for ENUM_VALUES */
|
||||
|
||||
@@ -65,12 +79,25 @@ open enum class TestOpenEnum1 : Enum<TestOpenEnum1> {
|
||||
|
||||
open enum class TestOpenEnum2 : Enum<TestOpenEnum2> {
|
||||
private constructor() /* primary */ {
|
||||
TODO("IrEnumConstructorCall")
|
||||
super/*Enum*/<TestOpenEnum2>()
|
||||
/* InstanceInitializerCall */
|
||||
|
||||
}
|
||||
|
||||
X1 init = TODO("IrEnumConstructorCall") open fun foo() {
|
||||
X1 = X1()
|
||||
private enum entry class X1 : TestOpenEnum2 {
|
||||
private constructor() /* primary */ {
|
||||
super/*TestOpenEnum2*/() /*~> Unit */
|
||||
/* InstanceInitializerCall */
|
||||
|
||||
}
|
||||
|
||||
override fun foo() {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
open fun foo() {
|
||||
}
|
||||
|
||||
fun values(): Array<TestOpenEnum2> /* Synthetic body for ENUM_VALUES */
|
||||
@@ -81,12 +108,25 @@ open enum class TestOpenEnum2 : Enum<TestOpenEnum2> {
|
||||
|
||||
abstract enum class TestAbstractEnum1 : Enum<TestAbstractEnum1> {
|
||||
private constructor() /* primary */ {
|
||||
TODO("IrEnumConstructorCall")
|
||||
super/*Enum*/<TestAbstractEnum1>()
|
||||
/* InstanceInitializerCall */
|
||||
|
||||
}
|
||||
|
||||
X1 init = TODO("IrEnumConstructorCall") abstract fun foo()
|
||||
X1 = X1()
|
||||
private enum entry class X1 : TestAbstractEnum1 {
|
||||
private constructor() /* primary */ {
|
||||
super/*TestAbstractEnum1*/() /*~> Unit */
|
||||
/* InstanceInitializerCall */
|
||||
|
||||
}
|
||||
|
||||
override fun foo() {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
abstract fun foo()
|
||||
|
||||
fun values(): Array<TestAbstractEnum1> /* Synthetic body for ENUM_VALUES */
|
||||
|
||||
@@ -101,12 +141,23 @@ interface IFoo {
|
||||
|
||||
abstract enum class TestAbstractEnum2 : Enum<TestAbstractEnum2>, IFoo {
|
||||
private constructor() /* primary */ {
|
||||
TODO("IrEnumConstructorCall")
|
||||
super/*Enum*/<TestAbstractEnum2>()
|
||||
/* InstanceInitializerCall */
|
||||
|
||||
}
|
||||
|
||||
X1 init = TODO("IrEnumConstructorCall")
|
||||
X1 = X1()
|
||||
private enum entry class X1 : TestAbstractEnum2 {
|
||||
private constructor() /* primary */ {
|
||||
super/*TestAbstractEnum2*/() /*~> Unit */
|
||||
/* InstanceInitializerCall */
|
||||
|
||||
}
|
||||
|
||||
override fun foo() {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
fun values(): Array<TestAbstractEnum2> /* Synthetic body for ENUM_VALUES */
|
||||
|
||||
|
||||
@@ -1,5 +1,23 @@
|
||||
open enum class A : Enum<A> {
|
||||
X init = TODO("IrEnumConstructorCall") Y init = TODO("IrEnumConstructorCall") Z init = TODO("IrEnumConstructorCall") val prop1: String
|
||||
X = A(arg = "asd")
|
||||
|
||||
Y = Y()
|
||||
private enum entry class Y : A {
|
||||
private constructor() /* primary */ {
|
||||
super/*A*/() /*~> Unit */
|
||||
/* InstanceInitializerCall */
|
||||
|
||||
}
|
||||
|
||||
override fun f(): String {
|
||||
return super.f().plus(other = "#Y")
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Z = A(x = 5)
|
||||
|
||||
val prop1: String
|
||||
get
|
||||
|
||||
val prop2: String
|
||||
@@ -12,14 +30,14 @@ open enum class A : Enum<A> {
|
||||
set
|
||||
|
||||
private constructor(arg: String) {
|
||||
TODO("IrEnumConstructorCall")
|
||||
super/*Enum*/<A>()
|
||||
/* InstanceInitializerCall */
|
||||
|
||||
#prop1 = arg
|
||||
}
|
||||
|
||||
private constructor() {
|
||||
TODO("IrEnumConstructorCall")
|
||||
super/*Enum*/<A>()
|
||||
/* InstanceInitializerCall */
|
||||
|
||||
#prop1 = "default"
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
enum class Test0 : Enum<Test0> {
|
||||
private constructor(x: Int) /* primary */ {
|
||||
TODO("IrEnumConstructorCall")
|
||||
super/*Enum*/<Test0>()
|
||||
/* InstanceInitializerCall */
|
||||
|
||||
}
|
||||
@@ -9,7 +9,9 @@ enum class Test0 : Enum<Test0> {
|
||||
field = x
|
||||
get
|
||||
|
||||
ZERO init = TODO("IrEnumConstructorCall") private constructor() {
|
||||
ZERO = Test0()
|
||||
|
||||
private constructor() {
|
||||
this/*Test0*/(x = 0)
|
||||
}
|
||||
|
||||
@@ -21,7 +23,7 @@ enum class Test0 : Enum<Test0> {
|
||||
|
||||
enum class Test1 : Enum<Test1> {
|
||||
private constructor(x: Int) /* primary */ {
|
||||
TODO("IrEnumConstructorCall")
|
||||
super/*Enum*/<Test1>()
|
||||
/* InstanceInitializerCall */
|
||||
|
||||
}
|
||||
@@ -30,7 +32,11 @@ enum class Test1 : Enum<Test1> {
|
||||
field = x
|
||||
get
|
||||
|
||||
ZERO init = TODO("IrEnumConstructorCall") ONE init = TODO("IrEnumConstructorCall") private constructor() {
|
||||
ZERO = Test1()
|
||||
|
||||
ONE = Test1(x = 1)
|
||||
|
||||
private constructor() {
|
||||
this/*Test1*/(x = 0)
|
||||
}
|
||||
|
||||
@@ -42,7 +48,7 @@ enum class Test1 : Enum<Test1> {
|
||||
|
||||
abstract enum class Test2 : Enum<Test2> {
|
||||
private constructor(x: Int) /* primary */ {
|
||||
TODO("IrEnumConstructorCall")
|
||||
super/*Enum*/<Test2>()
|
||||
/* InstanceInitializerCall */
|
||||
|
||||
}
|
||||
@@ -51,7 +57,35 @@ abstract enum class Test2 : Enum<Test2> {
|
||||
field = x
|
||||
get
|
||||
|
||||
ZERO init = TODO("IrEnumConstructorCall") ONE init = TODO("IrEnumConstructorCall") private constructor() {
|
||||
ZERO = ZERO()
|
||||
private enum entry class ZERO : Test2 {
|
||||
private constructor() /* primary */ {
|
||||
super/*Test2*/() /*~> Unit */
|
||||
/* InstanceInitializerCall */
|
||||
|
||||
}
|
||||
|
||||
override fun foo() {
|
||||
println(message = "ZERO")
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
ONE = ONE()
|
||||
private enum entry class ONE : Test2 {
|
||||
private constructor() /* primary */ {
|
||||
super/*Test2*/(x = 1) /*~> Unit */
|
||||
/* InstanceInitializerCall */
|
||||
|
||||
}
|
||||
|
||||
override fun foo() {
|
||||
println(message = "ONE")
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private constructor() {
|
||||
this/*Test2*/(x = 0)
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user