[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:
committed by
Space Team
parent
8ae5213155
commit
aef9b129d2
+9
@@ -0,0 +1,9 @@
|
||||
FILE: classLiteralWithExclExcl.kt
|
||||
public final class B<T> : R|kotlin/Any| {
|
||||
public constructor<T>(): R|B<T>| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
}
|
||||
public final val any2: R|kotlin/reflect/KClass<ERROR CLASS: Unresolved name: invoke>| = <getClass>(Q|B|!!.<Unresolved name: invoke>#<<ERROR TYPE REF: Symbol not found for T>>)
|
||||
public get(): R|kotlin/reflect/KClass<ERROR CLASS: Unresolved name: invoke>|
|
||||
+4
@@ -0,0 +1,4 @@
|
||||
// ISSUE: KT-47373
|
||||
|
||||
class B<T>
|
||||
val any2 = <!UNRESOLVED_REFERENCE!><!NO_COMPANION_OBJECT!>B<!>!!<!><<!UNRESOLVED_REFERENCE!>T<!>>::class
|
||||
@@ -0,0 +1,73 @@
|
||||
FILE: a.kt
|
||||
package a
|
||||
|
||||
@R|kotlin/Suppress|() <DANGLING MODIFIER: Top level declaration expected>FILE: b.kt
|
||||
package b
|
||||
|
||||
public abstract interface I : R|kotlin/Any| {
|
||||
public open fun <T> f(): <ERROR TYPE REF: Qualified expression with unexpected selector> {
|
||||
^f <ERROR TYPE REF: Qualified expression with unexpected selector>ERROR_EXPR(The expression cannot be a selector (occur after a dot))String()
|
||||
}
|
||||
|
||||
public final class C : R|b/I| {
|
||||
public constructor(): R|b/I.C| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
FILE: c.kt
|
||||
package c
|
||||
|
||||
public abstract interface I : R|kotlin/Any| {
|
||||
public open fun <T : R|kotlin/String|> f(x: R|T?|): R|T| {
|
||||
^f R|<local>/x| ?: String(OK).<Unresolved name: strip>#()?.{ $subj$.<Unresolved name: substringBeforeLast>#(Char(61334), R|c/C.C|().R|c/I.f<Inapplicable(INAPPLICABLE): c/I.f>#|<R|kotlin/Long|>(Int(-62))) }!!
|
||||
}
|
||||
|
||||
}
|
||||
public final class C : R|c/I| {
|
||||
public constructor(): R|c/C| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
}
|
||||
public final fun box(): R|kotlin/String| {
|
||||
^box R|c/C.C|().R|c/I.f|<R|kotlin/String|>(Null(null))
|
||||
}
|
||||
FILE: d.kt
|
||||
package d
|
||||
|
||||
public abstract interface I : R|kotlin/Any| {
|
||||
public open fun <T> f(): <ERROR TYPE REF: cycle> {
|
||||
^f R|d/I.C.C<Inapplicable(INAPPLICABLE_ARGUMENTS_MAPPING_ERROR): d/I.C.C>#|(ERROR_EXPR(Argument is absent)).R|d/I.f<Inapplicable(INAPPLICABLE_ARGUMENTS_MAPPING_ERROR): d/I.f>#|<<ERROR TYPE REF: Cannot infer argument for type parameter T>>(ERROR_EXPR(No right operand))
|
||||
}
|
||||
|
||||
public final class C : R|d/I| {
|
||||
public constructor(): R|d/I.C| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
FILE: e.kt
|
||||
package e
|
||||
|
||||
public final class A<E> : R|kotlin/Any| {
|
||||
public constructor<E>(): R|e/A<E>| {
|
||||
super<R|kotlin/Any|>()
|
||||
}
|
||||
|
||||
public final var bar: <ERROR TYPE REF: Expression 'bar' of type 'ERROR CLASS: cycle' cannot be invoked as a function> = R|e/A.EmptyContinuation.EmptyContinuation<Inapplicable(INAPPLICABLE_ARGUMENTS_MAPPING_ERROR): e/A.EmptyContinuation.EmptyContinuation>#|(ERROR_EXPR(Argument is absent)).<Expression 'bar' of type 'ERROR CLASS: cycle' cannot be invoked as a function>#(ERROR_EXPR(No right operand))
|
||||
public get(): <ERROR TYPE REF: Expression 'bar' of type 'ERROR CLASS: cycle' cannot be invoked as a function>
|
||||
public set(value: <ERROR TYPE REF: Expression 'bar' of type 'ERROR CLASS: cycle' cannot be invoked as a function>): R|kotlin/Unit|
|
||||
|
||||
public final class EmptyContinuation : R|e/A<ERROR CLASS: Unwrapped type is null>| {
|
||||
public constructor(): R|e/A.EmptyContinuation| {
|
||||
super<R|e/A<ERROR CLASS: Unwrapped type is null>|>()
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,50 @@
|
||||
// ISSUE: KT-47484, KT-47495
|
||||
|
||||
// FILE: a.kt
|
||||
package a
|
||||
|
||||
@
|
||||
<!SYNTAX!>:<!>Suppress(<!NAMED_PARAMETER_NOT_FOUND!>receiver<!> = <!UNRESOLVED_REFERENCE!>iterator<!><!SYNTAX, SYNTAX!><!>
|
||||
|
||||
// FILE: b.kt
|
||||
package b
|
||||
|
||||
interface I {
|
||||
fun <T
|
||||
> f<!SYNTAX!><!> = "".
|
||||
(<!TYPECHECKER_HAS_RUN_INTO_RECURSIVE_PROBLEM!>C().<!FUNCTION_CALL_EXPECTED!>f<!><!><!SYNTAX!><!>
|
||||
class C : I<!SYNTAX!><!>
|
||||
|
||||
// FILE: c.kt
|
||||
package c
|
||||
|
||||
import kotlin.<!UNRESOLVED_IMPORT!>properties<!>.*
|
||||
import kotlin.reflect.*
|
||||
import kotlin.<!UNRESOLVED_IMPORT!>math<!>.*
|
||||
interface I {
|
||||
fun <T : <!FINAL_UPPER_BOUND!>String<!>> f(x: T?) = x ?: "OK".<!UNRESOLVED_REFERENCE!>strip<!>()?.substringBeforeLast('', <!TYPECHECKER_HAS_RUN_INTO_RECURSIVE_PROBLEM!>C().f<<!UPPER_BOUND_VIOLATED!>Long<!>>(<!ARGUMENT_TYPE_MISMATCH!>-62<!>)<!>)!!
|
||||
}
|
||||
|
||||
class C : I
|
||||
|
||||
fun box() = C().f<String>(null)
|
||||
|
||||
// FILE: d.kt
|
||||
package d
|
||||
|
||||
interface I {
|
||||
fun <T
|
||||
> f<!SYNTAX!><!> = <!TOO_MANY_ARGUMENTS!>C<!>(
|
||||
<!SYNTAX!><!SYNTAX!><!>.<!><!TOO_MANY_ARGUMENTS!>f<!><!SYNTAX!><!>
|
||||
class C : I<!SYNTAX!><!>
|
||||
|
||||
// FILE: e.kt
|
||||
package e
|
||||
|
||||
class A<E<!SYNTAX!><!>
|
||||
{
|
||||
|
||||
var bar = <!TOO_MANY_ARGUMENTS!>EmptyContinuation<!>(
|
||||
<!SYNTAX!><!SYNTAX!><!>.<!><!FUNCTION_EXPECTED!>bar<!><!SYNTAX!><!>
|
||||
|
||||
class EmptyContinuation : A<<!SYNTAX, SYNTAX!><!>
|
||||
+6
@@ -0,0 +1,6 @@
|
||||
FILE: typeArgumentsOnThis.kt
|
||||
public final fun x(): R|kotlin/Unit| {
|
||||
this#.<Unresolved name: invoke>#<<ERROR TYPE REF: Symbol not found for X>>::<Unresolved reference: y>#
|
||||
}
|
||||
public final val a: <ERROR TYPE REF: Unresolved reference: y> = this#.<Unresolved name: invoke>#<<ERROR TYPE REF: Symbol not found for X>>::<Unresolved reference: y>#
|
||||
public get(): <ERROR TYPE REF: Unresolved reference: y>
|
||||
@@ -0,0 +1,7 @@
|
||||
// ISSUE: KT-24737
|
||||
|
||||
fun x(){
|
||||
<!NO_THIS, UNRESOLVED_REFERENCE!>this<!><<!UNRESOLVED_REFERENCE!>X<!>>::y
|
||||
}
|
||||
|
||||
val a = <!NO_THIS, UNRESOLVED_REFERENCE!>this<!><<!UNRESOLVED_REFERENCE!>X<!>>::y
|
||||
Reference in New Issue
Block a user