[IR] update testdata: better support for enum and object accesses

This commit is contained in:
Zalim Bashorov
2020-11-10 19:54:38 +03:00
committed by teamcityserver
parent 1fd12b7b8a
commit 5cb2572c60
13 changed files with 28 additions and 28 deletions
+2 -2
View File
@@ -87,7 +87,7 @@ abstract enum class TestEnum4 : Enum<TestEnum4> {
} }
override fun foo() { override fun foo() {
println(message = TestEnum4) println(message = TestEnum4.TEST1)
} }
} }
@@ -108,7 +108,7 @@ abstract enum class TestEnum4 : Enum<TestEnum4> {
} }
override fun foo() { override fun foo() {
println(message = TestEnum4) println(message = TestEnum4.TEST2)
} }
} }
@@ -27,7 +27,7 @@ annotation class TestAnn : Annotation {
} }
@TestAnn(x = En) @TestAnn(x = En.A)
fun test1() { fun test1() {
} }
@@ -1,7 +1,7 @@
@file:A(x = "File annotation") @file:A(x = "File annotation")
package test package test
@Target(allowedTargets = [AnnotationTarget]) @Target(allowedTargets = [AnnotationTarget.FILE])
annotation class A : Annotation { annotation class A : Annotation {
constructor(x: String) /* primary */ constructor(x: String) /* primary */
val x: String val x: String
@@ -1,4 +1,4 @@
@Target(allowedTargets = [AnnotationTarget]) @Target(allowedTargets = [AnnotationTarget.TYPEALIAS])
annotation class TestAnn : Annotation { annotation class TestAnn : Annotation {
constructor(x: String) /* primary */ constructor(x: String) /* primary */
val x: String val x: String
@@ -1,4 +1,4 @@
@Target(allowedTargets = [AnnotationTarget]) @Target(allowedTargets = [AnnotationTarget.TYPE_PARAMETER])
annotation class Anno : Annotation { annotation class Anno : Annotation {
constructor() /* primary */ constructor() /* primary */
@@ -19,7 +19,7 @@ abstract enum class X : Enum<X> {
override val value: Function0<String> override val value: Function0<String>
field = local fun <anonymous>(): String { field = local fun <anonymous>(): String {
return B.<get-value2>() return X.B.<get-value2>()
} }
override get override get
@@ -36,6 +36,6 @@ abstract enum class X : Enum<X> {
} }
fun box(): String { fun box(): String {
return X.<get-value>().invoke() return X.B.<get-value>().invoke()
} }
@@ -28,8 +28,8 @@ open enum class MyEnum : Enum<MyEnum> {
val aLambda: Function0<Unit> val aLambda: Function0<Unit>
field = local fun <anonymous>() { field = local fun <anonymous>() {
Z.<set-counter>(<set-?> = 1) MyEnum.Z.<set-counter>(<set-?> = 1)
Z.foo() MyEnum.Z.foo()
} }
get get
@@ -44,13 +44,13 @@ open enum class MyEnum : Enum<MyEnum> {
} }
init { init {
Z.<set-counter>(<set-?> = 1) MyEnum.Z.<set-counter>(<set-?> = 1)
Z.foo() MyEnum.Z.foo()
} }
fun test() { fun test() {
Z.<set-counter>(<set-?> = 1) MyEnum.Z.<set-counter>(<set-?> = 1)
Z.foo() MyEnum.Z.foo()
} }
} }
@@ -18,7 +18,7 @@ fun testVariableAssignment_throws(a: A) {
{ // BLOCK { // BLOCK
val tmp0_subject: A = a val tmp0_subject: A = a
when { when {
EQEQ(arg0 = tmp0_subject, arg1 = A) -> x = 11 EQEQ(arg0 = tmp0_subject, arg1 = A.V1) -> x = 11
true -> noWhenBranchMatchedException() true -> noWhenBranchMatchedException()
} }
} }
@@ -28,7 +28,7 @@ fun testStatement_empty(a: A) {
{ // BLOCK { // BLOCK
val tmp0_subject: A = a val tmp0_subject: A = a
when { when {
EQEQ(arg0 = tmp0_subject, arg1 = A) -> 1 /*~> Unit */ EQEQ(arg0 = tmp0_subject, arg1 = A.V1) -> 1 /*~> Unit */
} }
} }
} }
@@ -37,7 +37,7 @@ fun testParenthesized_throwsJvm(a: A) {
{ // BLOCK { // BLOCK
val tmp0_subject: A = a val tmp0_subject: A = a
when { when {
EQEQ(arg0 = tmp0_subject, arg1 = A) -> 1 /*~> Unit */ EQEQ(arg0 = tmp0_subject, arg1 = A.V1) -> 1 /*~> Unit */
} }
} }
} }
@@ -46,7 +46,7 @@ fun testAnnotated_throwsJvm(a: A) {
{ // BLOCK { // BLOCK
val tmp0_subject: A = a val tmp0_subject: A = a
when { when {
EQEQ(arg0 = tmp0_subject, arg1 = A) -> 1 /*~> Unit */ EQEQ(arg0 = tmp0_subject, arg1 = A.V1) -> 1 /*~> Unit */
} }
} }
} }
@@ -55,7 +55,7 @@ fun testExpression_throws(a: A): Int {
return { // BLOCK return { // BLOCK
val tmp0_subject: A = a val tmp0_subject: A = a
when { when {
EQEQ(arg0 = tmp0_subject, arg1 = A) -> 1 EQEQ(arg0 = tmp0_subject, arg1 = A.V1) -> 1
true -> noWhenBranchMatchedException() true -> noWhenBranchMatchedException()
} }
} }
@@ -68,7 +68,7 @@ fun testIfTheElseStatement_empty(a: A, flag: Boolean) {
{ // BLOCK { // BLOCK
val tmp0_subject: A = a val tmp0_subject: A = a
when { when {
EQEQ(arg0 = tmp0_subject, arg1 = A) -> 1 /*~> Unit */ EQEQ(arg0 = tmp0_subject, arg1 = A.V1) -> 1 /*~> Unit */
} }
} }
} }
@@ -82,7 +82,7 @@ fun testIfTheElseParenthesized_throwsJvm(a: A, flag: Boolean) {
{ // BLOCK { // BLOCK
val tmp0_subject: A = a val tmp0_subject: A = a
when { when {
EQEQ(arg0 = tmp0_subject, arg1 = A) -> 1 /*~> Unit */ EQEQ(arg0 = tmp0_subject, arg1 = A.V1) -> 1 /*~> Unit */
} }
} }
} }
@@ -96,7 +96,7 @@ fun testIfTheElseAnnotated_throwsJvm(a: A, flag: Boolean) {
{ // BLOCK { // BLOCK
val tmp0_subject: A = a val tmp0_subject: A = a
when { when {
EQEQ(arg0 = tmp0_subject, arg1 = A) -> 1 /*~> Unit */ EQEQ(arg0 = tmp0_subject, arg1 = A.V1) -> 1 /*~> Unit */
} }
} }
} }
@@ -108,7 +108,7 @@ fun testLambdaResultExpression_throws(a: A) {
return { // BLOCK return { // BLOCK
val tmp0_subject: A = a val tmp0_subject: A = a
when { when {
EQEQ(arg0 = tmp0_subject, arg1 = A) -> 1 EQEQ(arg0 = tmp0_subject, arg1 = A.V1) -> 1
true -> noWhenBranchMatchedException() true -> noWhenBranchMatchedException()
} }
} }
@@ -35,6 +35,6 @@ val test1: Int
get get
val test2: Int val test2: Int
field = En.invoke(i = 42) field = En.X.invoke(i = 42)
get get
+1 -1
View File
@@ -45,7 +45,7 @@ class Z {
} }
fun test1(): Enum { fun test1(): Enum {
return Enum return Enum.A
} }
fun test2(): A { fun test2(): A {
+1 -1
View File
@@ -24,7 +24,7 @@ open enum class Z : Enum<Z> {
} }
fun test2() { fun test2() {
ENTRY.test() Z.ENTRY.test()
} }
} }
+1 -1
View File
@@ -1,4 +1,4 @@
val test: JEnum val test: JEnum
field = JEnum field = JEnum.ONE
get get
@@ -26,7 +26,7 @@ inline fun <T : Any?> unsafeFlow(crossinline block: @ExtensionFunctionType Suspe
TODO() TODO()
} }
@Deprecated(message = "binary compatibility with a version w/o FlowCollector receiver", level = DeprecationLevel) @Deprecated(message = "binary compatibility with a version w/o FlowCollector receiver", level = DeprecationLevel.HIDDEN)
fun <T : Any?> Flow<T>.onCompletion(action: SuspendFunction1<@ParameterName(name = "cause") Throwable?, Unit>): Flow<T> { fun <T : Any?> Flow<T>.onCompletion(action: SuspendFunction1<@ParameterName(name = "cause") Throwable?, Unit>): Flow<T> {
return <this>.onCompletion<T>(action = local suspend fun FlowCollector<T>.<anonymous>(it: Throwable?) { return <this>.onCompletion<T>(action = local suspend fun FlowCollector<T>.<anonymous>(it: Throwable?) {
action.invoke(p1 = it) action.invoke(p1 = it)