[FIR] Add regression tests for number of issues fixed in K2

List of issues:
KT-4113,  KT-6822,  KT-7389,  KT-17817, KT-20223
KT-21463, KT-24503, KT-24737, KT-24779, KT-24901
KT-27261, KT-28668, KT-30497, KT-30756, KT-36958
KT-37365, KT-37490, KT-38288, KT-41038, KT-41721
KT-42136, KT-42169, KT-42449, KT-42715, KT-43553
KT-43603, KT-43846, KT-43936, KT-46288, KT-46301
KT-47373, KT-47484, KT-47490, KT-47495, KT-47750
KT-47815, KT-47870, KT-48975, KT-49024, KT-49045
KT-50134, KT-50160, KT-50550, KT-51045, KT-51143
KT-51796, KT-52262, KT-52424, KT-52860, KT-52934
KT-53086, KT-53494, KT-53671, KT-53752, KT-53819
KT-54478, KT-54518, KT-54931, KT-54990, KT-55138
KT-55379, KT-55555, KT-56243
This commit is contained in:
Dmitriy Novozhilov
2023-02-10 11:31:10 +02:00
committed by Space Team
parent 8ae5213155
commit aef9b129d2
129 changed files with 4253 additions and 0 deletions
@@ -0,0 +1,57 @@
FILE: kt53494.kt
public open class C<out T> : R|kotlin/Any| {
public constructor<out T>(): R|C<T>| {
super<R|kotlin/Any|>()
}
}
public final data class Wrapped<out T> : R|C<T>| {
public constructor<out T>(value: R|T|): R|Wrapped<T>| {
super<R|C<T>|>()
}
public final val value: R|T| = R|<local>/value|
public get(): R|T|
public final operator fun component1(): R|T|
public final fun copy(value: R|T| = this@R|/Wrapped|.R|/Wrapped.value|): R|Wrapped<T>|
}
public final object Default : R|C<kotlin/Nothing>| {
private constructor(): R|Default| {
super<R|C<kotlin/Nothing>|>()
}
}
public final inline fun <reified T> test_1(t: R|T?|): R|C<T>| {
when () {
!=(R|<local>/t|, Null(null)) -> {
^test_1 R|/Wrapped.Wrapped|<R|T? & Any|>(R|<local>/t|)
}
}
^test_1 when () {
(R|<local>/t| is R|T|) -> {
R|/Wrapped.Wrapped|<R|it(kotlin/Nothing? & T)|>(R|<local>/t|)
}
else -> {
Q|Default|
}
}
}
public final inline fun <reified T> test_2(t: R|T?|): R|C<T>| {
^test_2 when () {
!=(R|<local>/t|, Null(null)) -> {
R|/Wrapped.Wrapped|<R|T? & Any|>(R|<local>/t|)
}
(R|<local>/t| is R|T|) -> {
R|/Wrapped.Wrapped|<R|it(kotlin/Nothing? & T)|>(R|<local>/t|)
}
else -> {
Q|Default|
}
}
}