Fix builder inference tests

This commit is contained in:
Victor Petukhov
2021-05-24 15:02:08 +03:00
parent be22078bd1
commit 758eb8f851
46 changed files with 1233 additions and 326 deletions
@@ -20,7 +20,7 @@ FILE: KtFirCompositeScope.kt
public final fun getAllNames(): R|kotlin/collections/Set<kotlin/String>| {
^getAllNames R|/withValidityAssertion|<R|kotlin/collections/Set<kotlin/String>|>(<L> = withValidityAssertion@fun <anonymous>(): R|kotlin/collections/Set<kotlin/String>| <inline=Inline, kind=UNKNOWN> {
^ R|/buildSet|<R|kotlin/String|>(<L> = buildSet@fun R|kotlin/collections/MutableSet<kotlin/String>|.<anonymous>(): R|kotlin/Unit| <inline=Inline, kind=UNKNOWN> {
this@R|/KtFirCompositeScope|.R|/KtFirCompositeScope.subScopes|.R|kotlin/collections/flatMapTo|<R|KtScope|, R|kotlin/String|, R|kotlin/collections/MutableCollection<in kotlin/String>|>(this@R|special/anonymous|, <L> = flatMapTo@fun <anonymous>(it: R|KtScope|): R|kotlin/collections/Iterable<kotlin/String>| <inline=Inline, kind=UNKNOWN> {
this@R|/KtFirCompositeScope|.R|/KtFirCompositeScope.subScopes|.R|kotlin/collections/flatMapTo|<R|KtScope|, R|kotlin/String|, R|kotlin/collections/MutableSet<kotlin/String>|>(this@R|special/anonymous|, <L> = flatMapTo@fun <anonymous>(it: R|KtScope|): R|kotlin/collections/Iterable<kotlin/String>| <inline=Inline, kind=UNKNOWN> {
^ R|<local>/it|.R|/KtScope.getAllNames|()
}
)
@@ -1,5 +1,6 @@
// !LANGUAGE: +UnrestrictedBuilderInference
// WITH_RUNTIME
// DONT_TARGET_EXACT_BACKEND: WASM
// FILE: main.kt
import kotlin.experimental.ExperimentalTypeInference
@@ -1,6 +1,8 @@
// !LANGUAGE: +UnrestrictedBuilderInference
// !DIAGNOSTICS: -UNUSED_PARAMETER -DEPRECATION -EXPERIMENTAL_IS_NOT_ENABLED -UNUSED_VARIABLE
// WITH_RUNTIME
// TARGET_BACKEND: JVM
// IGNORE_BACKEND_FIR: JVM_IR
// FILE: Test.java
@@ -1,5 +1,6 @@
// !LANGUAGE: +UnrestrictedBuilderInference
// WITH_RUNTIME
// DONT_TARGET_EXACT_BACKEND: WASM
// FILE: Test.java
@@ -1,6 +1,9 @@
// !LANGUAGE: +UnrestrictedBuilderInference
// !DIAGNOSTICS: -UNUSED_PARAMETER -DEPRECATION -EXPERIMENTAL_IS_NOT_ENABLED -UNUSED_VARIABLE
// WITH_RUNTIME
// TARGET_BACKEND: JVM
// IGNORE_BACKEND_FIR: JVM_IR
// DONT_TARGET_EXACT_BACKEND: WASM
// FILE: Test.java
@@ -1,6 +1,7 @@
// !LANGUAGE: +UnrestrictedBuilderInference
// !DIAGNOSTICS: -UNUSED_PARAMETER -DEPRECATION -EXPERIMENTAL_IS_NOT_ENABLED -UNUSED_VARIABLE
// WITH_RUNTIME
// DONT_TARGET_EXACT_BACKEND: WASM
// FILE: Test.java
@@ -1,6 +1,9 @@
// !LANGUAGE: +UnrestrictedBuilderInference
// !DIAGNOSTICS: -UNUSED_PARAMETER -DEPRECATION -EXPERIMENTAL_IS_NOT_ENABLED -UNUSED_VARIABLE
// WITH_RUNTIME
// TARGET_BACKEND: JVM
// IGNORE_BACKEND_FIR: JVM_IR
// DONT_TARGET_EXACT_BACKEND: WASM
// FILE: Test.java
@@ -1,5 +1,8 @@
// !LANGUAGE: +UnrestrictedBuilderInference
// WITH_RUNTIME
// TARGET_BACKEND: JVM
// IGNORE_BACKEND_FIR: JVM_IR
// DONT_TARGET_EXACT_BACKEND: WASM
// FILE: Test.java
@@ -1,6 +1,7 @@
// ISSUE: KT-41164
// WITH_RUNTIME
// IGNORE_BACKEND_FIR: JVM_IR
// DONT_TARGET_EXACT_BACKEND: WASM
import kotlin.experimental.ExperimentalTypeInference
@@ -1,5 +1,6 @@
// !DIAGNOSTICS: -UNUSED_PARAMETER -DEPRECATION -UNCHECKED_CAST -EXPERIMENTAL_IS_NOT_ENABLED -UNUSED_VARIABLE
// WITH_RUNTIME
// DONT_TARGET_EXACT_BACKEND: WASM
// FILE: main.kt
import kotlin.experimental.ExperimentalTypeInference
@@ -1,5 +1,6 @@
// !LANGUAGE: +NewInference
// WITH_RUNTIME
// DONT_TARGET_EXACT_BACKEND: WASM
// Issue: KT-36371
import kotlin.experimental.ExperimentalTypeInference
@@ -1,8 +1,9 @@
// !LANGUAGE: +UnrestrictedBuilderInference
// !DIAGNOSTICS: -DEPRECATION -EXPERIMENTAL_IS_NOT_ENABLED
// WITH_RUNTIME
// IGNORE_BACKEND_FIR: JVM_IR
// DONT_TARGET_EXACT_BACKEND: WASM
// FILE: main.kt
import kotlin.experimental.ExperimentalTypeInference
interface TestInterface<R> {
@@ -1,6 +1,8 @@
// !LANGUAGE: +UnrestrictedBuilderInference
// !DIAGNOSTICS: -DEPRECATION -EXPERIMENTAL_IS_NOT_ENABLED
// WITH_RUNTIME
// IGNORE_BACKEND_FIR: JVM_IR
// DONT_TARGET_EXACT_BACKEND: WASM
// FILE: main.kt
import kotlin.experimental.ExperimentalTypeInference
@@ -1,4 +1,5 @@
// WITH_RUNTIME
// DONT_TARGET_EXACT_BACKEND: WASM
import kotlin.experimental.ExperimentalTypeInference
@@ -1,6 +1,9 @@
// !LANGUAGE: +UnrestrictedBuilderInference
// WITH_RUNTIME
// SKIP_TXT
// DONT_TARGET_EXACT_BACKEND: WASM
// IGNORE_LIGHT_ANALYSIS
// IGNORE_BACKEND: JVM
import kotlin.experimental.ExperimentalTypeInference
@@ -1,6 +1,7 @@
// WITH_RUNTIME
// SKIP_TXT
// !DIAGNOSTICS: -CAST_NEVER_SUCCEEDS -UNCHECKED_CAST -UNUSED_PARAMETER -UNUSED_VARIABLE -EXPERIMENTAL_API_USAGE_ERROR -UNUSED_EXPRESSION
// DONT_TARGET_EXACT_BACKEND: WASM
import kotlin.experimental.ExperimentalTypeInference
@@ -1,47 +1,24 @@
// IGNORE_BACKEND_FIR: JVM_IR
// !LANGUAGE: +NewInference
// WITH_RUNTIME
// DONT_TARGET_EXACT_BACKEND: WASM
// !LANGUAGE: -StrictOnlyInputTypesChecks
import kotlin.experimental.ExperimentalTypeInference
fun <K> FlowCollector<K>.bar(): K = null as K
fun <K> FlowCollector<K>.foo(): K = null as K
fun bar2(): Int = 1
fun foo2(): Float = 1f
val bar4: Int
get() = 1
var foo4: Float
get() = 1f
set(value) {}
fun <T> materialize() = null as T
interface FlowCollector<in T> {}
@Suppress("EXPERIMENTAL_API_USAGE_ERROR")
fun <L> flow(@BuilderInference block: suspend FlowCollector<L>.() -> Unit) = Flow(block)
class Flow<out R>(private val block: suspend FlowCollector<R>.() -> Unit)
fun poll81(): Flow<String> {
return flow {
val inv = ::bar2 in setOf(::foo2)
inv
@OptIn(ExperimentalTypeInference::class)
fun <R> scopedFlow(@BuilderInference block: suspend CoroutineScope.(FlowCollector<R>) -> Unit): Flow<R> =
flow {
val collector = <!DEBUG_INFO_EXPRESSION_TYPE("")!>this<!>
flowScope { block(collector) }
}
}
fun poll83(): Flow<String> {
return flow {
val inv = ::bar4 in setOf(::foo4)
inv
}
}
@OptIn(ExperimentalTypeInference::class)
fun <T> flow(@BuilderInference block: suspend FlowCollector<T>.() -> Unit): Flow<T> = TODO()
fun box(): String {
poll81()
poll83()
return "OK"
}
@OptIn(ExperimentalTypeInference::class)
fun <R> flowScope(@BuilderInference block: suspend CoroutineScope.() -> R): R = TODO()
interface CoroutineScope
interface Flow<out T>
interface FlowCollector<in T>
@@ -1,6 +1,8 @@
// !LANGUAGE: +UnrestrictedBuilderInference
// WITH_RUNTIME
// !DIAGNOSTICS: -EXPERIMENTAL_API_USAGE_ERROR -CAST_NEVER_SUCCEEDS
// IGNORE_BACKEND_FIR: JVM_IR
// DONT_TARGET_EXACT_BACKEND: WASM
import kotlin.experimental.ExperimentalTypeInference
@@ -3,7 +3,6 @@
// Issues: KT-33542, KT-33544
// WITH_RUNTIME
// KJS_WITH_FULL_RUNTIME
// IGNORE_BACKEND_FIR: JVM_IR
// !LANGUAGE: +NewInference
import kotlin.experimental.ExperimentalTypeInference
@@ -15,7 +15,7 @@ fun main() {
}
buildList {
add(3)
val x: String = get(0)
val x: String = <!INITIALIZER_TYPE_MISMATCH!>get(0)<!>
}
buildList {
add("3")
@@ -28,6 +28,6 @@ fun main() {
}
buildList {
add("")
val x: StringBuilder = get(0)
val x: StringBuilder = <!INITIALIZER_TYPE_MISMATCH!>get(0)<!>
}
}
}
@@ -1,21 +0,0 @@
// !DIAGNOSTICS: -UNUSED_PARAMETER -DEPRECATION -UNCHECKED_CAST -EXPERIMENTAL_IS_NOT_ENABLED -UNUSED_VARIABLE
// WITH_RUNTIME
// FILE: main.kt
import kotlin.experimental.ExperimentalTypeInference
@UseExperimental(ExperimentalTypeInference::class)
fun <R> build(@BuilderInference block: TestInterface<R>.() -> Unit): R = TODO()
interface TestInterface<R> {
fun emit(r: R)
fun get(): R
}
fun main() {
build myLabel@ {
emit("")
val x = this@myLabel
""
}
}
@@ -1,3 +1,4 @@
// FIR_IDENTICAL
// !DIAGNOSTICS: -UNUSED_PARAMETER -DEPRECATION -UNCHECKED_CAST -EXPERIMENTAL_IS_NOT_ENABLED -UNUSED_VARIABLE
// WITH_RUNTIME
@@ -388,49 +388,49 @@ fun poll66(): Flow<String> {
fun poll7(): Flow<String> {
return flow {
val inv = ::bar!!
val inv = ::bar<!NOT_NULL_ASSERTION_ON_CALLABLE_REFERENCE!>!!<!>
inv()
}
}
fun poll71(): Flow<String> {
return flow {
val inv = ::bar2!!
val inv = ::bar2<!NOT_NULL_ASSERTION_ON_CALLABLE_REFERENCE!>!!<!>
inv()
}
}
fun poll72(): Flow<String> {
return flow {
val inv = ::bar3!!
val inv = ::bar3<!NOT_NULL_ASSERTION_ON_CALLABLE_REFERENCE!>!!<!>
inv()
}
}
fun poll73(): Flow<String> {
return flow {
val inv = ::bar4!!
val inv = ::bar4<!NOT_NULL_ASSERTION_ON_CALLABLE_REFERENCE!>!!<!>
inv
}
}
fun poll74(): Flow<String> {
return flow {
val inv = ::bar5!!
val inv = ::bar5<!NOT_NULL_ASSERTION_ON_CALLABLE_REFERENCE!>!!<!>
inv
}
}
fun poll75(): Flow<String> {
return flow {
val inv = ::Foo6!!
val inv = ::Foo6<!NOT_NULL_ASSERTION_ON_CALLABLE_REFERENCE!>!!<!>
inv
}
}
fun poll76(): Flow<String> {
return flow {
val inv = ::Foo7!!
val inv = ::Foo7<!NOT_NULL_ASSERTION_ON_CALLABLE_REFERENCE!>!!<!>
inv
}
}
@@ -438,21 +438,21 @@ fun poll76(): Flow<String> {
fun poll8(): Flow<String> {
return flow {
val inv = <!NEW_INFERENCE_ERROR!>::bar in <!NEW_INFERENCE_ERROR!>setOf(::foo)<!><!>
inv()
<!UNRESOLVED_REFERENCE!>inv<!>()
}
}
fun poll81(): Flow<String> {
return flow {
val inv = ::bar2 in setOf(::foo2)
inv()
<!UNRESOLVED_REFERENCE!>inv<!>()
}
}
fun poll82(): Flow<String> {
return flow {
val inv = ::bar3 in <!NEW_INFERENCE_ERROR!>setOf(::foo3)<!>
inv()
<!UNRESOLVED_REFERENCE!>inv<!>()
}
}
@@ -72,7 +72,7 @@ fun poll14(flag: Boolean): Flow<String> {
fun poll15(flag: Boolean): Flow<String> {
return flow {
val inv = if (flag) { ::bar5 } else { ::foo5 }
inv(<!NO_VALUE_FOR_PARAMETER!>)<!>
inv(<!NO_VALUE_FOR_PARAMETER{LT}!>)<!>
}
}
@@ -93,7 +93,7 @@ fun poll17(flag: Boolean): Flow<String> {
fun poll4(): Flow<String> {
return flow {
val inv = try { ::bar } finally { ::foo }
inv(<!NO_VALUE_FOR_PARAMETER!>)<!>
inv(<!NO_VALUE_FOR_PARAMETER{LT}!>)<!>
}
}
@@ -121,7 +121,7 @@ fun poll43(): Flow<String> {
fun poll44(): Flow<String> {
return flow {
val inv = try { ::bar5 } finally { ::foo5 }
inv(<!NO_VALUE_FOR_PARAMETER!>)<!>
inv(<!NO_VALUE_FOR_PARAMETER{LT}!>)<!>
}
}
@@ -142,7 +142,7 @@ fun poll46(): Flow<String> {
fun poll5(): Flow<String> {
return flow {
val inv = try { ::bar } catch (e: Exception) { ::foo } finally { ::foo }
inv(<!NO_VALUE_FOR_PARAMETER!>)<!>
inv(<!NO_VALUE_FOR_PARAMETER{LT}!>)<!>
}
}
@@ -170,7 +170,7 @@ fun poll53(): Flow<String> {
fun poll54(): Flow<String> {
return flow {
val inv = try { ::bar5 } catch (e: Exception) { ::foo5 } finally { ::foo5 }
inv(<!NO_VALUE_FOR_PARAMETER!>)<!>
inv(<!NO_VALUE_FOR_PARAMETER{LT}!>)<!>
}
}
@@ -38,7 +38,7 @@ class Flow<out R>(private val block: suspend FlowCollector<R>.() -> Unit)
fun poll7(): Flow<String> {
return flow {
val inv = ::bar<!NOT_NULL_ASSERTION_ON_CALLABLE_REFERENCE!>!!<!>
inv(<!NO_VALUE_FOR_PARAMETER!>)<!>
inv(<!NO_VALUE_FOR_PARAMETER{LT}!>)<!>
}
}
@@ -38,49 +38,49 @@ class Flow<out R>(private val block: suspend FlowCollector<R>.() -> Unit)
fun poll7(): Flow<String> {
return flow {
val inv = ::bar!!
val inv = ::bar<!NOT_NULL_ASSERTION_ON_CALLABLE_REFERENCE!>!!<!>
inv()
}
}
fun poll71(): Flow<String> {
return flow {
val inv = ::bar2!!
val inv = ::bar2<!NOT_NULL_ASSERTION_ON_CALLABLE_REFERENCE!>!!<!>
inv()
}
}
fun poll72(): Flow<String> {
return flow {
val inv = ::bar3!!
val inv = ::bar3<!NOT_NULL_ASSERTION_ON_CALLABLE_REFERENCE!>!!<!>
inv()
}
}
fun poll73(): Flow<String> {
return flow {
val inv = ::bar4!!
val inv = ::bar4<!NOT_NULL_ASSERTION_ON_CALLABLE_REFERENCE!>!!<!>
inv
}
}
fun poll74(): Flow<String> {
return flow {
val inv = ::bar5!!
val inv = ::bar5<!NOT_NULL_ASSERTION_ON_CALLABLE_REFERENCE!>!!<!>
inv
}
}
fun poll75(): Flow<String> {
return flow {
val inv = ::Foo6!!
val inv = ::Foo6<!NOT_NULL_ASSERTION_ON_CALLABLE_REFERENCE!>!!<!>
inv
}
}
fun poll76(): Flow<String> {
return flow {
val inv = ::Foo7!!
val inv = ::Foo7<!NOT_NULL_ASSERTION_ON_CALLABLE_REFERENCE!>!!<!>
inv
}
}
@@ -389,49 +389,49 @@ fun poll66(): Flow<String> {
fun poll7(): Flow<String> {
return flow {
val inv = ::bar!!
val inv = ::bar<!NOT_NULL_ASSERTION_ON_CALLABLE_REFERENCE!>!!<!>
inv()
}
}
fun poll71(): Flow<String> {
return flow {
val inv = ::bar2!!
val inv = ::bar2<!NOT_NULL_ASSERTION_ON_CALLABLE_REFERENCE!>!!<!>
inv()
}
}
fun poll72(): Flow<String> {
return flow {
val inv = ::bar3!!
val inv = ::bar3<!NOT_NULL_ASSERTION_ON_CALLABLE_REFERENCE!>!!<!>
inv()
}
}
fun poll73(): Flow<String> {
return flow {
val inv = ::bar4!!
val inv = ::bar4<!NOT_NULL_ASSERTION_ON_CALLABLE_REFERENCE!>!!<!>
inv
}
}
fun poll74(): Flow<String> {
return flow {
val inv = ::bar5!!
val inv = ::bar5<!NOT_NULL_ASSERTION_ON_CALLABLE_REFERENCE!>!!<!>
inv
}
}
fun poll75(): Flow<String> {
return flow {
val inv = ::Foo6!!
val inv = ::Foo6<!NOT_NULL_ASSERTION_ON_CALLABLE_REFERENCE!>!!<!>
inv
}
}
fun poll76(): Flow<String> {
return flow {
val inv = ::Foo7!!
val inv = ::Foo7<!NOT_NULL_ASSERTION_ON_CALLABLE_REFERENCE!>!!<!>
inv
}
}
@@ -439,21 +439,21 @@ fun poll76(): Flow<String> {
fun poll8(): Flow<String> {
return flow {
val inv = ::bar in setOf(::foo)
inv()
<!UNRESOLVED_REFERENCE!>inv<!>()
}
}
fun poll81(): Flow<String> {
return flow {
val inv = ::bar2 in setOf(::foo2)
inv()
<!UNRESOLVED_REFERENCE!>inv<!>()
}
}
fun poll82(): Flow<String> {
return flow {
val inv = ::bar3 in setOf(::foo3)
inv()
<!UNRESOLVED_REFERENCE!>inv<!>()
}
}
@@ -0,0 +1,267 @@
While resolving call R?C|/build|(<L> = build@fun R|TestInterface<Stub: TypeVariable(R)>|.<anonymous>(): R|kotlin/Unit| <inline=Unknown> {
this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.emit: R|kotlin/Unit|>|(String(1))
Q|Test|.R|/Test.foo|<R|ft<Stub: TypeVariable(R), Stub: TypeVariable(R)?>|>(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.get: R|Stub: TypeVariable(R)|>|())
Q|Test|.R|/Test.foo|<R|ft<Inv<Stub: TypeVariable(R)>, Inv<Stub: TypeVariable(R)>?>|>(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.getInv: R|Inv<Stub: TypeVariable(R)>|>|())
R|/id|<R|Stub: TypeVariable(R)|>(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.get: R|Stub: TypeVariable(R)|>|())
R|/select|<R|Stub: TypeVariable(R)|>(vararg(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.get: R|Stub: TypeVariable(R)|>|(), this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.get: R|Stub: TypeVariable(R)|>|()))
R|/select|<R|ft<Stub: TypeVariable(R), Stub: TypeVariable(R)?>|>(vararg(Q|Test|.R|/Test.foo|<R|ft<Stub: TypeVariable(R), Stub: TypeVariable(R)?>|>(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.get: R|Stub: TypeVariable(R)|>|()), Q|Test|.R|/Test.foo|<R|ft<Stub: TypeVariable(R), Stub: TypeVariable(R)?>|>(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.get: R|Stub: TypeVariable(R)|>|())))
R?C|/select|(Q|Test|.R|/Test.foo|<R|ft<Stub: TypeVariable(R), Stub: TypeVariable(R)?>|>(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.get: R|Stub: TypeVariable(R)|>|()), this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.get: R|Stub: TypeVariable(R)|>|())
select#(getInv#(), getInv#())
select#(Test#.foo#(getInv#()), Test#.foo#(getInv#()))
select#(Test#.foo#(getInv#()), getInv#())
select#(getInv#(), Test#.foo#(getInv#()))
select#(id#(get#()), id#(get#()))
build2#(<L> = build2@fun <implicit>.<anonymous>(): <implicit> <inline=Unknown> {
emit#(IntegerLiteral(1))
select#(this@build#.get#(), get#())
select#(Test#.foo#(this@build#.get#()), Test#.foo#(get#()))
select#(this@build#.getInv#(), getInv#())
select#(Test#.foo#(this@build#.getInv#()), Test#.foo#(getInv#()))
select#(Test#.foo#(this@build#.getInv#()), getInv#())
select#(id#(this@build#.get#()), id#(get#()))
String()
}
)
String()
}
)
java.lang.RuntimeException: While resolving call R?C|/build|(<L> = build@fun R|TestInterface<Stub: TypeVariable(R)>|.<anonymous>(): R|kotlin/Unit| <inline=Unknown> {
this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.emit: R|kotlin/Unit|>|(String(1))
Q|Test|.R|/Test.foo|<R|ft<Stub: TypeVariable(R), Stub: TypeVariable(R)?>|>(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.get: R|Stub: TypeVariable(R)|>|())
Q|Test|.R|/Test.foo|<R|ft<Inv<Stub: TypeVariable(R)>, Inv<Stub: TypeVariable(R)>?>|>(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.getInv: R|Inv<Stub: TypeVariable(R)>|>|())
R|/id|<R|Stub: TypeVariable(R)|>(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.get: R|Stub: TypeVariable(R)|>|())
R|/select|<R|Stub: TypeVariable(R)|>(vararg(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.get: R|Stub: TypeVariable(R)|>|(), this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.get: R|Stub: TypeVariable(R)|>|()))
R|/select|<R|ft<Stub: TypeVariable(R), Stub: TypeVariable(R)?>|>(vararg(Q|Test|.R|/Test.foo|<R|ft<Stub: TypeVariable(R), Stub: TypeVariable(R)?>|>(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.get: R|Stub: TypeVariable(R)|>|()), Q|Test|.R|/Test.foo|<R|ft<Stub: TypeVariable(R), Stub: TypeVariable(R)?>|>(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.get: R|Stub: TypeVariable(R)|>|())))
R?C|/select|(Q|Test|.R|/Test.foo|<R|ft<Stub: TypeVariable(R), Stub: TypeVariable(R)?>|>(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.get: R|Stub: TypeVariable(R)|>|()), this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.get: R|Stub: TypeVariable(R)|>|())
select#(getInv#(), getInv#())
select#(Test#.foo#(getInv#()), Test#.foo#(getInv#()))
select#(Test#.foo#(getInv#()), getInv#())
select#(getInv#(), Test#.foo#(getInv#()))
select#(id#(get#()), id#(get#()))
build2#(<L> = build2@fun <implicit>.<anonymous>(): <implicit> <inline=Unknown> {
emit#(IntegerLiteral(1))
select#(this@build#.get#(), get#())
select#(Test#.foo#(this@build#.get#()), Test#.foo#(get#()))
select#(this@build#.getInv#(), getInv#())
select#(Test#.foo#(this@build#.getInv#()), Test#.foo#(getInv#()))
select#(Test#.foo#(this@build#.getInv#()), getInv#())
select#(id#(this@build#.get#()), id#(get#()))
String()
}
)
String()
}
)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirExpressionsResolveTransformer.transformFunctionCall(FirExpressionsResolveTransformer.kt:298)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformFunctionCall(FirBodyResolveTransformer.kt:107)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformFunctionCall(FirBodyResolveTransformer.kt:27)
at org.jetbrains.kotlin.fir.expressions.FirFunctionCall.transform(FirFunctionCall.kt:37)
at org.jetbrains.kotlin.fir.declarations.impl.FirPropertyImpl.transformInitializer(FirPropertyImpl.kt:104)
at org.jetbrains.kotlin.fir.declarations.impl.FirPropertyImpl.transformInitializer(FirPropertyImpl.kt:34)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer.transformLocalVariable(FirDeclarationsResolveTransformer.kt:276)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer.transformProperty(FirDeclarationsResolveTransformer.kt:119)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformProperty(FirBodyResolveTransformer.kt:259)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformProperty(FirBodyResolveTransformer.kt:27)
at org.jetbrains.kotlin.fir.declarations.FirProperty.transform(FirProperty.kt:58)
at org.jetbrains.kotlin.fir.expressions.FirExpressionUtilKt.transformStatementsIndexed(FirExpressionUtil.kt:134)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirExpressionsResolveTransformer.transformBlockInCurrentScope$resolve(FirExpressionsResolveTransformer.kt:323)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirExpressionsResolveTransformer.transformBlock(FirExpressionsResolveTransformer.kt:314)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformBlock(FirBodyResolveTransformer.kt:122)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformBlock(FirBodyResolveTransformer.kt:27)
at org.jetbrains.kotlin.fir.expressions.FirBlock.transform(FirBlock.kt:28)
at org.jetbrains.kotlin.fir.declarations.impl.FirSimpleFunctionImpl.transformBody(FirSimpleFunctionImpl.kt:99)
at org.jetbrains.kotlin.fir.declarations.impl.FirSimpleFunctionImpl.transformChildren(FirSimpleFunctionImpl.kt:75)
at org.jetbrains.kotlin.fir.declarations.impl.FirSimpleFunctionImpl.transformChildren(FirSimpleFunctionImpl.kt:33)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformElement(FirBodyResolveTransformer.kt:60)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformDeclarationContent(FirBodyResolveTransformer.kt:244)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer.transformDeclarationContent(FirDeclarationsResolveTransformer.kt:69)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer.transformFunction(FirDeclarationsResolveTransformer.kt:527)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer.transformFunctionWithGivenSignature(FirDeclarationsResolveTransformer.kt:490)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer.access$transformFunctionWithGivenSignature(FirDeclarationsResolveTransformer.kt:41)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer$transformSimpleFunction$1$1.invoke(FirDeclarationsResolveTransformer.kt:479)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer$transformSimpleFunction$1$1.invoke(FirDeclarationsResolveTransformer.kt:477)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.BodyResolveContext.forFunctionBody(BodyResolveContext.kt:896)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer.transformSimpleFunction(FirDeclarationsResolveTransformer.kt:477)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformSimpleFunction(FirBodyResolveTransformer.kt:281)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformSimpleFunction(FirBodyResolveTransformer.kt:27)
at org.jetbrains.kotlin.fir.declarations.FirSimpleFunction.transform(FirSimpleFunction.kt:52)
at org.jetbrains.kotlin.fir.visitors.FirTransformerUtilKt.transformInplace(FirTransformerUtil.kt:19)
at org.jetbrains.kotlin.fir.declarations.impl.FirFileImpl.transformDeclarations(FirFileImpl.kt:61)
at org.jetbrains.kotlin.fir.declarations.impl.FirFileImpl.transformChildren(FirFileImpl.kt:46)
at org.jetbrains.kotlin.fir.declarations.impl.FirFileImpl.transformChildren(FirFileImpl.kt:25)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformElement(FirBodyResolveTransformer.kt:60)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformDeclarationContent(FirBodyResolveTransformer.kt:244)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformFile(FirBodyResolveTransformer.kt:54)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformFile(FirBodyResolveTransformer.kt:27)
at org.jetbrains.kotlin.fir.declarations.FirFile.transform(FirFile.kt:37)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformerAdapter.transformFile(FirBodyResolveTransformerAdapters.kt:37)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformerAdapter.transformFile(FirBodyResolveTransformerAdapters.kt:23)
at org.jetbrains.kotlin.fir.declarations.FirFile.transform(FirFile.kt:37)
at org.jetbrains.kotlin.fir.resolve.transformers.FirTransformerBasedResolveProcessor.processFile(FirResolveProcessor.kt:29)
at org.jetbrains.kotlin.fir.resolve.transformers.FirTotalResolveProcessor.process(FirTotalResolveProcessor.kt:23)
at org.jetbrains.kotlin.fir.analysis.FirAnalyzerFacade.runResolution(FirAnalyzerFacade.kt:69)
at org.jetbrains.kotlin.test.frontend.fir.FirFrontendFacade.analyze(FirFrontendFacade.kt:75)
at org.jetbrains.kotlin.test.frontend.fir.FirFrontendFacade.analyze(FirFrontendFacade.kt:26)
at org.jetbrains.kotlin.test.model.FrontendFacade.transform(Facades.kt:36)
at org.jetbrains.kotlin.test.model.FrontendFacade.transform(Facades.kt:25)
at org.jetbrains.kotlin.test.TestRunner.processModule(TestRunner.kt:125)
at org.jetbrains.kotlin.test.TestRunner.runTestImpl(TestRunner.kt:66)
at org.jetbrains.kotlin.test.TestRunner.runTest(TestRunner.kt:20)
at org.jetbrains.kotlin.test.TestRunner.runTest$default(TestRunner.kt:18)
at org.jetbrains.kotlin.test.runners.AbstractKotlinCompilerTest.runTest(AbstractKotlinCompilerTest.kt:80)
at org.jetbrains.kotlin.test.runners.FirOldFrontendDiagnosticsTestGenerated$Tests$Inference$BuilderInference$StubTypes.testCommonSuperType(FirOldFrontendDiagnosticsTestGenerated.java:12699)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.junit.platform.commons.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:688)
at org.junit.jupiter.engine.execution.MethodInvocation.proceed(MethodInvocation.java:60)
at org.junit.jupiter.engine.execution.InvocationInterceptorChain$ValidatingInvocation.proceed(InvocationInterceptorChain.java:131)
at org.junit.jupiter.engine.extension.TimeoutExtension.intercept(TimeoutExtension.java:149)
at org.junit.jupiter.engine.extension.TimeoutExtension.interceptTestableMethod(TimeoutExtension.java:140)
at org.junit.jupiter.engine.extension.TimeoutExtension.interceptTestMethod(TimeoutExtension.java:84)
at org.junit.jupiter.engine.execution.ExecutableInvoker$ReflectiveInterceptorCall.lambda$ofVoidMethod$0(ExecutableInvoker.java:115)
at org.junit.jupiter.engine.execution.ExecutableInvoker.lambda$invoke$0(ExecutableInvoker.java:105)
at org.junit.jupiter.engine.execution.InvocationInterceptorChain$InterceptedInvocation.proceed(InvocationInterceptorChain.java:106)
at org.junit.jupiter.engine.execution.InvocationInterceptorChain.proceed(InvocationInterceptorChain.java:64)
at org.junit.jupiter.engine.execution.InvocationInterceptorChain.chainAndInvoke(InvocationInterceptorChain.java:45)
at org.junit.jupiter.engine.execution.InvocationInterceptorChain.invoke(InvocationInterceptorChain.java:37)
at org.junit.jupiter.engine.execution.ExecutableInvoker.invoke(ExecutableInvoker.java:104)
at org.junit.jupiter.engine.execution.ExecutableInvoker.invoke(ExecutableInvoker.java:98)
at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.lambda$invokeTestMethod$6(TestMethodTestDescriptor.java:210)
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.invokeTestMethod(TestMethodTestDescriptor.java:206)
at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.execute(TestMethodTestDescriptor.java:131)
at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.execute(TestMethodTestDescriptor.java:65)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$5(NodeTestTask.java:139)
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$7(NodeTestTask.java:129)
at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:127)
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:126)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:84)
at org.junit.platform.engine.support.hierarchical.ForkJoinPoolHierarchicalTestExecutorService$ExclusiveTask.compute(ForkJoinPoolHierarchicalTestExecutorService.java:185)
at org.junit.platform.engine.support.hierarchical.ForkJoinPoolHierarchicalTestExecutorService.invokeAll(ForkJoinPoolHierarchicalTestExecutorService.java:129)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$5(NodeTestTask.java:143)
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$7(NodeTestTask.java:129)
at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:127)
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:126)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:84)
at org.junit.platform.engine.support.hierarchical.ForkJoinPoolHierarchicalTestExecutorService$ExclusiveTask.compute(ForkJoinPoolHierarchicalTestExecutorService.java:185)
at org.junit.platform.engine.support.hierarchical.ForkJoinPoolHierarchicalTestExecutorService.invokeAll(ForkJoinPoolHierarchicalTestExecutorService.java:129)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$5(NodeTestTask.java:143)
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$7(NodeTestTask.java:129)
at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:127)
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:126)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:84)
at org.junit.platform.engine.support.hierarchical.ForkJoinPoolHierarchicalTestExecutorService$ExclusiveTask.compute(ForkJoinPoolHierarchicalTestExecutorService.java:185)
at org.junit.platform.engine.support.hierarchical.ForkJoinPoolHierarchicalTestExecutorService.invokeAll(ForkJoinPoolHierarchicalTestExecutorService.java:129)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$5(NodeTestTask.java:143)
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$7(NodeTestTask.java:129)
at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:127)
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:126)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:84)
at org.junit.platform.engine.support.hierarchical.ForkJoinPoolHierarchicalTestExecutorService$ExclusiveTask.compute(ForkJoinPoolHierarchicalTestExecutorService.java:185)
at org.junit.platform.engine.support.hierarchical.ForkJoinPoolHierarchicalTestExecutorService.invokeAll(ForkJoinPoolHierarchicalTestExecutorService.java:129)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$5(NodeTestTask.java:143)
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$7(NodeTestTask.java:129)
at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:127)
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:126)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:84)
at org.junit.platform.engine.support.hierarchical.ForkJoinPoolHierarchicalTestExecutorService$ExclusiveTask.compute(ForkJoinPoolHierarchicalTestExecutorService.java:185)
at org.junit.platform.engine.support.hierarchical.ForkJoinPoolHierarchicalTestExecutorService.invokeAll(ForkJoinPoolHierarchicalTestExecutorService.java:129)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$5(NodeTestTask.java:143)
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$7(NodeTestTask.java:129)
at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:127)
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:126)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:84)
at org.junit.platform.engine.support.hierarchical.ForkJoinPoolHierarchicalTestExecutorService$ExclusiveTask.compute(ForkJoinPoolHierarchicalTestExecutorService.java:185)
at org.junit.platform.engine.support.hierarchical.ForkJoinPoolHierarchicalTestExecutorService.invokeAll(ForkJoinPoolHierarchicalTestExecutorService.java:129)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$5(NodeTestTask.java:143)
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$7(NodeTestTask.java:129)
at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:127)
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:126)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:84)
at org.junit.platform.engine.support.hierarchical.ForkJoinPoolHierarchicalTestExecutorService$ExclusiveTask.compute(ForkJoinPoolHierarchicalTestExecutorService.java:185)
at java.util.concurrent.RecursiveAction.exec(RecursiveAction.java:189)
at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289)
at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1056)
at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1692)
at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:157)
Caused by: java.lang.RuntimeException: While resolving call R?C|/select|(Q|Test|.R|/Test.foo|<R|ft<Stub: TypeVariable(R), Stub: TypeVariable(R)?>|>(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.get: R|Stub: TypeVariable(R)|>|()), this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.get: R|Stub: TypeVariable(R)|>|())
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirExpressionsResolveTransformer.transformFunctionCall(FirExpressionsResolveTransformer.kt:298)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformFunctionCall(FirBodyResolveTransformer.kt:107)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformFunctionCall(FirBodyResolveTransformer.kt:27)
at org.jetbrains.kotlin.fir.expressions.FirFunctionCall.transform(FirFunctionCall.kt:37)
at org.jetbrains.kotlin.fir.expressions.FirExpressionUtilKt.transformStatementsIndexed(FirExpressionUtil.kt:134)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirExpressionsResolveTransformer.transformBlockInCurrentScope$resolve(FirExpressionsResolveTransformer.kt:323)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirExpressionsResolveTransformer.transformBlock(FirExpressionsResolveTransformer.kt:314)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformBlock(FirBodyResolveTransformer.kt:122)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformBlock(FirBodyResolveTransformer.kt:27)
at org.jetbrains.kotlin.fir.expressions.FirBlock.transform(FirBlock.kt:28)
at org.jetbrains.kotlin.fir.declarations.impl.FirAnonymousFunctionImpl.transformBody(FirAnonymousFunctionImpl.kt:102)
at org.jetbrains.kotlin.fir.declarations.impl.FirAnonymousFunctionImpl.transformChildren(FirAnonymousFunctionImpl.kt:74)
at org.jetbrains.kotlin.fir.declarations.impl.FirAnonymousFunctionImpl.transformChildren(FirAnonymousFunctionImpl.kt:31)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformElement(FirBodyResolveTransformer.kt:60)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformDeclarationContent(FirBodyResolveTransformer.kt:244)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer.transformDeclarationContent(FirDeclarationsResolveTransformer.kt:69)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer.transformFunction(FirDeclarationsResolveTransformer.kt:527)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer.transformAnonymousFunctionWithLambdaResolution(FirDeclarationsResolveTransformer.kt:430)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer.access$transformAnonymousFunctionWithLambdaResolution(FirDeclarationsResolveTransformer.kt:41)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer$transformAnonymousFunction$3.invoke(FirDeclarationsResolveTransformer.kt:638)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer$transformAnonymousFunction$3.invoke(FirDeclarationsResolveTransformer.kt:636)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.BodyResolveContext.withAnonymousFunction(BodyResolveContext.kt:946)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer.transformAnonymousFunction(FirDeclarationsResolveTransformer.kt:636)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformAnonymousFunction(FirBodyResolveTransformer.kt:306)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformAnonymousFunction(FirBodyResolveTransformer.kt:27)
at org.jetbrains.kotlin.fir.declarations.FirAnonymousFunction.transform(FirAnonymousFunction.kt:50)
at org.jetbrains.kotlin.fir.visitors.FirTransformerUtilKt.transformSingle(FirTransformerUtil.kt:12)
at org.jetbrains.kotlin.fir.resolve.inference.FirCallCompleter$LambdaAnalyzerImpl.analyzeAndGetLambdaReturnArguments(FirCallCompleter.kt:239)
at org.jetbrains.kotlin.fir.resolve.inference.PostponedArgumentsAnalyzer.analyzeLambda(PostponedArgumentsAnalyzer.kt:131)
at org.jetbrains.kotlin.fir.resolve.inference.PostponedArgumentsAnalyzer.analyze(PostponedArgumentsAnalyzer.kt:59)
at org.jetbrains.kotlin.fir.resolve.inference.FirCallCompleter$runCompletionForCall$1.invoke(FirCallCompleter.kt:125)
at org.jetbrains.kotlin.fir.resolve.inference.FirCallCompleter$runCompletionForCall$1.invoke(FirCallCompleter.kt:124)
at org.jetbrains.kotlin.fir.resolve.inference.ConstraintSystemCompleter.analyzeArgumentWithFixedParameterTypes(ConstraintSystemCompleter.kt:131)
at org.jetbrains.kotlin.fir.resolve.inference.ConstraintSystemCompleter.complete(ConstraintSystemCompleter.kt:48)
at org.jetbrains.kotlin.fir.resolve.inference.ConstraintSystemCompleter.complete$default(ConstraintSystemCompleter.kt:31)
at org.jetbrains.kotlin.fir.resolve.inference.FirCallCompleter.runCompletionForCall(FirCallCompleter.kt:118)
at org.jetbrains.kotlin.fir.resolve.inference.FirCallCompleter.completeCall(FirCallCompleter.kt:80)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirExpressionsResolveTransformer.transformFunctionCall(FirExpressionsResolveTransformer.kt:296)
... 154 more
Caused by: java.lang.AssertionError: There should be at least one non-stub type to compute common supertype but there are: [Stub: TypeVariable(R), Stub: TypeVariable(R)]
at org.jetbrains.kotlin.resolve.calls.NewCommonSuperTypeCalculator.commonSuperTypeForNotNullTypes(NewCommonSuperTypeCalculator.kt:174)
at org.jetbrains.kotlin.resolve.calls.NewCommonSuperTypeCalculator.commonSuperTypeForSimpleTypes(NewCommonSuperTypeCalculator.kt:93)
at org.jetbrains.kotlin.resolve.calls.NewCommonSuperTypeCalculator.commonSuperType(NewCommonSuperTypeCalculator.kt:53)
at org.jetbrains.kotlin.resolve.calls.NewCommonSuperTypeCalculator.commonSuperType(NewCommonSuperTypeCalculator.kt:18)
at org.jetbrains.kotlin.resolve.calls.inference.components.ResultTypeResolver.computeCommonSuperType(ResultTypeResolver.kt:175)
at org.jetbrains.kotlin.resolve.calls.inference.components.ResultTypeResolver.findSubType(ResultTypeResolver.kt:135)
at org.jetbrains.kotlin.resolve.calls.inference.components.ResultTypeResolver.findResultTypeOrNull(ResultTypeResolver.kt:42)
at org.jetbrains.kotlin.resolve.calls.inference.components.ResultTypeResolver.findResultType(ResultTypeResolver.kt:27)
at org.jetbrains.kotlin.fir.resolve.inference.ConstraintSystemCompleter.fixVariable(ConstraintSystemCompleter.kt:322)
at org.jetbrains.kotlin.fir.resolve.inference.ConstraintSystemCompleter.fixVariablesOrReportNotEnoughInformation(ConstraintSystemCompleter.kt:219)
at org.jetbrains.kotlin.fir.resolve.inference.ConstraintSystemCompleter.complete(ConstraintSystemCompleter.kt:108)
at org.jetbrains.kotlin.fir.resolve.inference.ConstraintSystemCompleter.complete$default(ConstraintSystemCompleter.kt:31)
at org.jetbrains.kotlin.fir.resolve.inference.FirCallCompleter.runCompletionForCall(FirCallCompleter.kt:118)
at org.jetbrains.kotlin.fir.resolve.inference.FirCallCompleter.completeCall(FirCallCompleter.kt:80)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirExpressionsResolveTransformer.transformFunctionCall(FirExpressionsResolveTransformer.kt:296)
... 191 more
@@ -47,24 +47,24 @@ fun test() {
build2 {
emit(1)
select1(this@build.get(), getIn())
select1(get(), Test.foo(this@build.getIn()))
select1(Test.foo(this@build.get()), Test.foo(getIn()))
select1(Test.foo(get()), this@build.getIn())
select2(this@build.get(), getIn())
select2(get(), Test.foo(this@build.getIn()))
select2(Test.foo(this@build.get()), Test.foo(getIn()))
select2(Test.foo(get()), this@build.getIn())
select3(this@build.get(), getIn())
select3(get(), Test.foo(this@build.getIn()))
select3(Test.foo(this@build.get()), Test.foo(getIn()))
select3(Test.foo(get()), this@build.getIn())
select4(this@build.get(), getIn())
select4(get(), Test.foo(this@build.getIn()))
select4(Test.foo(this@build.get()), Test.foo(getIn()))
select4(Test.foo(get()), this@build.getIn())
select1(this@build.get(), <!ARGUMENT_TYPE_MISMATCH!>getIn()<!>)
select1(get(), <!ARGUMENT_TYPE_MISMATCH!>Test.foo(this@build.getIn())<!>)
select1(Test.foo(this@build.get()), <!ARGUMENT_TYPE_MISMATCH!>Test.foo(getIn())<!>)
select1(Test.foo(get()), <!ARGUMENT_TYPE_MISMATCH!>this@build.getIn()<!>)
select2(this@build.get(), <!ARGUMENT_TYPE_MISMATCH!>getIn()<!>)
select2(get(), <!ARGUMENT_TYPE_MISMATCH!>Test.foo(this@build.getIn())<!>)
select2(Test.foo(this@build.get()), <!ARGUMENT_TYPE_MISMATCH!>Test.foo(getIn())<!>)
select2(Test.foo(get()), <!ARGUMENT_TYPE_MISMATCH!>this@build.getIn()<!>)
select3(this@build.get(), <!ARGUMENT_TYPE_MISMATCH!>getIn()<!>)
select3(get(), <!ARGUMENT_TYPE_MISMATCH!>Test.foo(this@build.getIn())<!>)
select3(Test.foo(this@build.get()), <!ARGUMENT_TYPE_MISMATCH!>Test.foo(getIn())<!>)
select3(Test.foo(get()), <!ARGUMENT_TYPE_MISMATCH!>this@build.getIn()<!>)
select4(this@build.get(), <!ARGUMENT_TYPE_MISMATCH!>getIn()<!>)
select4(get(), <!ARGUMENT_TYPE_MISMATCH!>Test.foo(this@build.getIn())<!>)
select4(Test.foo(this@build.get()), <!ARGUMENT_TYPE_MISMATCH!>Test.foo(getIn())<!>)
select4(Test.foo(get()), <!ARGUMENT_TYPE_MISMATCH!>this@build.getIn()<!>)
select4(id(Test.foo(this@build.get())), getIn())
select4(id(Test.foo(this@build.get())), <!ARGUMENT_TYPE_MISMATCH!>getIn()<!>)
""
}
""
@@ -0,0 +1,287 @@
While resolving call R?C|/build|(<L> = build@fun R|TestInterface<Stub: TypeVariable(R1)>|.<anonymous>(): R|kotlin/Unit| <inline=Unknown> {
this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.emit: R|kotlin/Unit|>|(String(1))
R|/select1|<R|Stub: TypeVariable(R1)|>(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.get: R|Stub: TypeVariable(R1)|>|(), this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.getOut: R|Out<Stub: TypeVariable(R1)>|>|())
R|/select1|<R|Stub: TypeVariable(R1)|>(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.get: R|Stub: TypeVariable(R1)|>|(), Q|Test|.R|/Test.foo|<R|ft<Out<Stub: TypeVariable(R1)>, Out<Stub: TypeVariable(R1)>?>|>(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.getOut: R|Out<Stub: TypeVariable(R1)>|>|()))
R?C|/select1|(Q|Test|.R|/Test.foo|<R|ft<Stub: TypeVariable(R1), Stub: TypeVariable(R1)?>|>(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.get: R|Stub: TypeVariable(R1)|>|()), Q|Test|.R|/Test.foo|<R|ft<Out<Stub: TypeVariable(R1)>, Out<Stub: TypeVariable(R1)>?>|>(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.getOut: R|Out<Stub: TypeVariable(R1)>|>|()))
select1#(Test#.foo#(get#()), getOut#())
select2#(get#(), getOut#())
select2#(get#(), Test#.foo#(getOut#()))
select2#(Test#.foo#(get#()), Test#.foo#(getOut#()))
select2#(Test#.foo#(get#()), getOut#())
select3#(get#(), getOut#())
select3#(get#(), Test#.foo#(getOut#()))
select3#(Test#.foo#(get#()), Test#.foo#(getOut#()))
select3#(Test#.foo#(get#()), getOut#())
select4#(get#(), getOut#())
select4#(get#(), Test#.foo#(getOut#()))
select4#(Test#.foo#(get#()), Test#.foo#(getOut#()))
select4#(Test#.foo#(get#()), getOut#())
select4#(id#(Test#.foo#(get#())), getOut#())
build2#(<L> = build2@fun <implicit>.<anonymous>(): <implicit> <inline=Unknown> {
emit#(IntegerLiteral(1))
select1#(this@build#.get#(), getOut#())
select1#(get#(), Test#.foo#(this@build#.getOut#()))
select1#(Test#.foo#(this@build#.get#()), Test#.foo#(getOut#()))
select1#(Test#.foo#(get#()), this@build#.getOut#())
select2#(this@build#.get#(), getOut#())
select2#(get#(), Test#.foo#(this@build#.getOut#()))
select2#(Test#.foo#(this@build#.get#()), Test#.foo#(getOut#()))
select2#(Test#.foo#(get#()), this@build#.getOut#())
select3#(this@build#.get#(), getOut#())
select3#(get#(), Test#.foo#(this@build#.getOut#()))
select3#(Test#.foo#(this@build#.get#()), Test#.foo#(getOut#()))
select3#(Test#.foo#(get#()), this@build#.getOut#())
select4#(this@build#.get#(), getOut#())
select4#(get#(), Test#.foo#(this@build#.getOut#()))
select4#(Test#.foo#(this@build#.get#()), Test#.foo#(getOut#()))
select4#(Test#.foo#(get#()), this@build#.getOut#())
select4#(id#(Test#.foo#(this@build#.get#())), getOut#())
String()
}
)
String()
}
)
java.lang.RuntimeException: While resolving call R?C|/build|(<L> = build@fun R|TestInterface<Stub: TypeVariable(R1)>|.<anonymous>(): R|kotlin/Unit| <inline=Unknown> {
this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.emit: R|kotlin/Unit|>|(String(1))
R|/select1|<R|Stub: TypeVariable(R1)|>(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.get: R|Stub: TypeVariable(R1)|>|(), this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.getOut: R|Out<Stub: TypeVariable(R1)>|>|())
R|/select1|<R|Stub: TypeVariable(R1)|>(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.get: R|Stub: TypeVariable(R1)|>|(), Q|Test|.R|/Test.foo|<R|ft<Out<Stub: TypeVariable(R1)>, Out<Stub: TypeVariable(R1)>?>|>(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.getOut: R|Out<Stub: TypeVariable(R1)>|>|()))
R?C|/select1|(Q|Test|.R|/Test.foo|<R|ft<Stub: TypeVariable(R1), Stub: TypeVariable(R1)?>|>(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.get: R|Stub: TypeVariable(R1)|>|()), Q|Test|.R|/Test.foo|<R|ft<Out<Stub: TypeVariable(R1)>, Out<Stub: TypeVariable(R1)>?>|>(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.getOut: R|Out<Stub: TypeVariable(R1)>|>|()))
select1#(Test#.foo#(get#()), getOut#())
select2#(get#(), getOut#())
select2#(get#(), Test#.foo#(getOut#()))
select2#(Test#.foo#(get#()), Test#.foo#(getOut#()))
select2#(Test#.foo#(get#()), getOut#())
select3#(get#(), getOut#())
select3#(get#(), Test#.foo#(getOut#()))
select3#(Test#.foo#(get#()), Test#.foo#(getOut#()))
select3#(Test#.foo#(get#()), getOut#())
select4#(get#(), getOut#())
select4#(get#(), Test#.foo#(getOut#()))
select4#(Test#.foo#(get#()), Test#.foo#(getOut#()))
select4#(Test#.foo#(get#()), getOut#())
select4#(id#(Test#.foo#(get#())), getOut#())
build2#(<L> = build2@fun <implicit>.<anonymous>(): <implicit> <inline=Unknown> {
emit#(IntegerLiteral(1))
select1#(this@build#.get#(), getOut#())
select1#(get#(), Test#.foo#(this@build#.getOut#()))
select1#(Test#.foo#(this@build#.get#()), Test#.foo#(getOut#()))
select1#(Test#.foo#(get#()), this@build#.getOut#())
select2#(this@build#.get#(), getOut#())
select2#(get#(), Test#.foo#(this@build#.getOut#()))
select2#(Test#.foo#(this@build#.get#()), Test#.foo#(getOut#()))
select2#(Test#.foo#(get#()), this@build#.getOut#())
select3#(this@build#.get#(), getOut#())
select3#(get#(), Test#.foo#(this@build#.getOut#()))
select3#(Test#.foo#(this@build#.get#()), Test#.foo#(getOut#()))
select3#(Test#.foo#(get#()), this@build#.getOut#())
select4#(this@build#.get#(), getOut#())
select4#(get#(), Test#.foo#(this@build#.getOut#()))
select4#(Test#.foo#(this@build#.get#()), Test#.foo#(getOut#()))
select4#(Test#.foo#(get#()), this@build#.getOut#())
select4#(id#(Test#.foo#(this@build#.get#())), getOut#())
String()
}
)
String()
}
)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirExpressionsResolveTransformer.transformFunctionCall(FirExpressionsResolveTransformer.kt:298)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformFunctionCall(FirBodyResolveTransformer.kt:107)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformFunctionCall(FirBodyResolveTransformer.kt:27)
at org.jetbrains.kotlin.fir.expressions.FirFunctionCall.transform(FirFunctionCall.kt:37)
at org.jetbrains.kotlin.fir.declarations.impl.FirPropertyImpl.transformInitializer(FirPropertyImpl.kt:104)
at org.jetbrains.kotlin.fir.declarations.impl.FirPropertyImpl.transformInitializer(FirPropertyImpl.kt:34)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer.transformLocalVariable(FirDeclarationsResolveTransformer.kt:276)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer.transformProperty(FirDeclarationsResolveTransformer.kt:119)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformProperty(FirBodyResolveTransformer.kt:259)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformProperty(FirBodyResolveTransformer.kt:27)
at org.jetbrains.kotlin.fir.declarations.FirProperty.transform(FirProperty.kt:58)
at org.jetbrains.kotlin.fir.expressions.FirExpressionUtilKt.transformStatementsIndexed(FirExpressionUtil.kt:134)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirExpressionsResolveTransformer.transformBlockInCurrentScope$resolve(FirExpressionsResolveTransformer.kt:323)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirExpressionsResolveTransformer.transformBlock(FirExpressionsResolveTransformer.kt:314)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformBlock(FirBodyResolveTransformer.kt:122)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformBlock(FirBodyResolveTransformer.kt:27)
at org.jetbrains.kotlin.fir.expressions.FirBlock.transform(FirBlock.kt:28)
at org.jetbrains.kotlin.fir.declarations.impl.FirSimpleFunctionImpl.transformBody(FirSimpleFunctionImpl.kt:99)
at org.jetbrains.kotlin.fir.declarations.impl.FirSimpleFunctionImpl.transformChildren(FirSimpleFunctionImpl.kt:75)
at org.jetbrains.kotlin.fir.declarations.impl.FirSimpleFunctionImpl.transformChildren(FirSimpleFunctionImpl.kt:33)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformElement(FirBodyResolveTransformer.kt:60)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformDeclarationContent(FirBodyResolveTransformer.kt:244)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer.transformDeclarationContent(FirDeclarationsResolveTransformer.kt:69)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer.transformFunction(FirDeclarationsResolveTransformer.kt:527)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer.transformFunctionWithGivenSignature(FirDeclarationsResolveTransformer.kt:490)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer.access$transformFunctionWithGivenSignature(FirDeclarationsResolveTransformer.kt:41)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer$transformSimpleFunction$1$1.invoke(FirDeclarationsResolveTransformer.kt:479)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer$transformSimpleFunction$1$1.invoke(FirDeclarationsResolveTransformer.kt:477)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.BodyResolveContext.forFunctionBody(BodyResolveContext.kt:896)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer.transformSimpleFunction(FirDeclarationsResolveTransformer.kt:477)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformSimpleFunction(FirBodyResolveTransformer.kt:281)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformSimpleFunction(FirBodyResolveTransformer.kt:27)
at org.jetbrains.kotlin.fir.declarations.FirSimpleFunction.transform(FirSimpleFunction.kt:52)
at org.jetbrains.kotlin.fir.visitors.FirTransformerUtilKt.transformInplace(FirTransformerUtil.kt:19)
at org.jetbrains.kotlin.fir.declarations.impl.FirFileImpl.transformDeclarations(FirFileImpl.kt:61)
at org.jetbrains.kotlin.fir.declarations.impl.FirFileImpl.transformChildren(FirFileImpl.kt:46)
at org.jetbrains.kotlin.fir.declarations.impl.FirFileImpl.transformChildren(FirFileImpl.kt:25)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformElement(FirBodyResolveTransformer.kt:60)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformDeclarationContent(FirBodyResolveTransformer.kt:244)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformFile(FirBodyResolveTransformer.kt:54)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformFile(FirBodyResolveTransformer.kt:27)
at org.jetbrains.kotlin.fir.declarations.FirFile.transform(FirFile.kt:37)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformerAdapter.transformFile(FirBodyResolveTransformerAdapters.kt:37)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformerAdapter.transformFile(FirBodyResolveTransformerAdapters.kt:23)
at org.jetbrains.kotlin.fir.declarations.FirFile.transform(FirFile.kt:37)
at org.jetbrains.kotlin.fir.resolve.transformers.FirTransformerBasedResolveProcessor.processFile(FirResolveProcessor.kt:29)
at org.jetbrains.kotlin.fir.resolve.transformers.FirTotalResolveProcessor.process(FirTotalResolveProcessor.kt:23)
at org.jetbrains.kotlin.fir.analysis.FirAnalyzerFacade.runResolution(FirAnalyzerFacade.kt:69)
at org.jetbrains.kotlin.test.frontend.fir.FirFrontendFacade.analyze(FirFrontendFacade.kt:75)
at org.jetbrains.kotlin.test.frontend.fir.FirFrontendFacade.analyze(FirFrontendFacade.kt:26)
at org.jetbrains.kotlin.test.model.FrontendFacade.transform(Facades.kt:36)
at org.jetbrains.kotlin.test.model.FrontendFacade.transform(Facades.kt:25)
at org.jetbrains.kotlin.test.TestRunner.processModule(TestRunner.kt:125)
at org.jetbrains.kotlin.test.TestRunner.runTestImpl(TestRunner.kt:66)
at org.jetbrains.kotlin.test.TestRunner.runTest(TestRunner.kt:20)
at org.jetbrains.kotlin.test.TestRunner.runTest$default(TestRunner.kt:18)
at org.jetbrains.kotlin.test.runners.AbstractKotlinCompilerTest.runTest(AbstractKotlinCompilerTest.kt:80)
at org.jetbrains.kotlin.test.runners.FirOldFrontendDiagnosticsTestGenerated$Tests$Inference$BuilderInference$StubTypes.testCommonSuperTypeCovariant(FirOldFrontendDiagnosticsTestGenerated.java:12711)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.junit.platform.commons.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:688)
at org.junit.jupiter.engine.execution.MethodInvocation.proceed(MethodInvocation.java:60)
at org.junit.jupiter.engine.execution.InvocationInterceptorChain$ValidatingInvocation.proceed(InvocationInterceptorChain.java:131)
at org.junit.jupiter.engine.extension.TimeoutExtension.intercept(TimeoutExtension.java:149)
at org.junit.jupiter.engine.extension.TimeoutExtension.interceptTestableMethod(TimeoutExtension.java:140)
at org.junit.jupiter.engine.extension.TimeoutExtension.interceptTestMethod(TimeoutExtension.java:84)
at org.junit.jupiter.engine.execution.ExecutableInvoker$ReflectiveInterceptorCall.lambda$ofVoidMethod$0(ExecutableInvoker.java:115)
at org.junit.jupiter.engine.execution.ExecutableInvoker.lambda$invoke$0(ExecutableInvoker.java:105)
at org.junit.jupiter.engine.execution.InvocationInterceptorChain$InterceptedInvocation.proceed(InvocationInterceptorChain.java:106)
at org.junit.jupiter.engine.execution.InvocationInterceptorChain.proceed(InvocationInterceptorChain.java:64)
at org.junit.jupiter.engine.execution.InvocationInterceptorChain.chainAndInvoke(InvocationInterceptorChain.java:45)
at org.junit.jupiter.engine.execution.InvocationInterceptorChain.invoke(InvocationInterceptorChain.java:37)
at org.junit.jupiter.engine.execution.ExecutableInvoker.invoke(ExecutableInvoker.java:104)
at org.junit.jupiter.engine.execution.ExecutableInvoker.invoke(ExecutableInvoker.java:98)
at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.lambda$invokeTestMethod$6(TestMethodTestDescriptor.java:210)
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.invokeTestMethod(TestMethodTestDescriptor.java:206)
at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.execute(TestMethodTestDescriptor.java:131)
at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.execute(TestMethodTestDescriptor.java:65)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$5(NodeTestTask.java:139)
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$7(NodeTestTask.java:129)
at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:127)
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:126)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:84)
at org.junit.platform.engine.support.hierarchical.ForkJoinPoolHierarchicalTestExecutorService$ExclusiveTask.compute(ForkJoinPoolHierarchicalTestExecutorService.java:185)
at java.util.concurrent.RecursiveAction.exec(RecursiveAction.java:189)
at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289)
at java.util.concurrent.ForkJoinTask.doJoin(ForkJoinTask.java:389)
at java.util.concurrent.ForkJoinTask.join(ForkJoinTask.java:719)
at org.junit.platform.engine.support.hierarchical.ForkJoinPoolHierarchicalTestExecutorService.joinConcurrentTasksInReverseOrderToEnableWorkStealing(ForkJoinPoolHierarchicalTestExecutorService.java:162)
at org.junit.platform.engine.support.hierarchical.ForkJoinPoolHierarchicalTestExecutorService.invokeAll(ForkJoinPoolHierarchicalTestExecutorService.java:136)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$5(NodeTestTask.java:143)
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$7(NodeTestTask.java:129)
at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:127)
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:126)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:84)
at org.junit.platform.engine.support.hierarchical.ForkJoinPoolHierarchicalTestExecutorService$ExclusiveTask.compute(ForkJoinPoolHierarchicalTestExecutorService.java:185)
at java.util.concurrent.RecursiveAction.exec(RecursiveAction.java:189)
at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289)
at java.util.concurrent.ForkJoinTask.doJoin(ForkJoinTask.java:389)
at java.util.concurrent.ForkJoinTask.join(ForkJoinTask.java:719)
at org.junit.platform.engine.support.hierarchical.ForkJoinPoolHierarchicalTestExecutorService.joinConcurrentTasksInReverseOrderToEnableWorkStealing(ForkJoinPoolHierarchicalTestExecutorService.java:162)
at org.junit.platform.engine.support.hierarchical.ForkJoinPoolHierarchicalTestExecutorService.invokeAll(ForkJoinPoolHierarchicalTestExecutorService.java:136)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$5(NodeTestTask.java:143)
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$7(NodeTestTask.java:129)
at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:127)
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:126)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:84)
at org.junit.platform.engine.support.hierarchical.ForkJoinPoolHierarchicalTestExecutorService$ExclusiveTask.compute(ForkJoinPoolHierarchicalTestExecutorService.java:185)
at java.util.concurrent.RecursiveAction.exec(RecursiveAction.java:189)
at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289)
at java.util.concurrent.ForkJoinTask.doJoin(ForkJoinTask.java:389)
at java.util.concurrent.ForkJoinTask.join(ForkJoinTask.java:719)
at org.junit.platform.engine.support.hierarchical.ForkJoinPoolHierarchicalTestExecutorService.joinConcurrentTasksInReverseOrderToEnableWorkStealing(ForkJoinPoolHierarchicalTestExecutorService.java:162)
at org.junit.platform.engine.support.hierarchical.ForkJoinPoolHierarchicalTestExecutorService.invokeAll(ForkJoinPoolHierarchicalTestExecutorService.java:136)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$5(NodeTestTask.java:143)
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$7(NodeTestTask.java:129)
at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:127)
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:126)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:84)
at org.junit.platform.engine.support.hierarchical.ForkJoinPoolHierarchicalTestExecutorService$ExclusiveTask.compute(ForkJoinPoolHierarchicalTestExecutorService.java:185)
at java.util.concurrent.RecursiveAction.exec(RecursiveAction.java:189)
at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289)
at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1056)
at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1692)
at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:157)
Caused by: java.lang.RuntimeException: While resolving call R?C|/select1|(Q|Test|.R|/Test.foo|<R|ft<Stub: TypeVariable(R1), Stub: TypeVariable(R1)?>|>(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.get: R|Stub: TypeVariable(R1)|>|()), Q|Test|.R|/Test.foo|<R|ft<Out<Stub: TypeVariable(R1)>, Out<Stub: TypeVariable(R1)>?>|>(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.getOut: R|Out<Stub: TypeVariable(R1)>|>|()))
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirExpressionsResolveTransformer.transformFunctionCall(FirExpressionsResolveTransformer.kt:298)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformFunctionCall(FirBodyResolveTransformer.kt:107)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformFunctionCall(FirBodyResolveTransformer.kt:27)
at org.jetbrains.kotlin.fir.expressions.FirFunctionCall.transform(FirFunctionCall.kt:37)
at org.jetbrains.kotlin.fir.expressions.FirExpressionUtilKt.transformStatementsIndexed(FirExpressionUtil.kt:134)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirExpressionsResolveTransformer.transformBlockInCurrentScope$resolve(FirExpressionsResolveTransformer.kt:323)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirExpressionsResolveTransformer.transformBlock(FirExpressionsResolveTransformer.kt:314)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformBlock(FirBodyResolveTransformer.kt:122)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformBlock(FirBodyResolveTransformer.kt:27)
at org.jetbrains.kotlin.fir.expressions.FirBlock.transform(FirBlock.kt:28)
at org.jetbrains.kotlin.fir.declarations.impl.FirAnonymousFunctionImpl.transformBody(FirAnonymousFunctionImpl.kt:102)
at org.jetbrains.kotlin.fir.declarations.impl.FirAnonymousFunctionImpl.transformChildren(FirAnonymousFunctionImpl.kt:74)
at org.jetbrains.kotlin.fir.declarations.impl.FirAnonymousFunctionImpl.transformChildren(FirAnonymousFunctionImpl.kt:31)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformElement(FirBodyResolveTransformer.kt:60)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformDeclarationContent(FirBodyResolveTransformer.kt:244)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer.transformDeclarationContent(FirDeclarationsResolveTransformer.kt:69)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer.transformFunction(FirDeclarationsResolveTransformer.kt:527)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer.transformAnonymousFunctionWithLambdaResolution(FirDeclarationsResolveTransformer.kt:430)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer.access$transformAnonymousFunctionWithLambdaResolution(FirDeclarationsResolveTransformer.kt:41)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer$transformAnonymousFunction$3.invoke(FirDeclarationsResolveTransformer.kt:638)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer$transformAnonymousFunction$3.invoke(FirDeclarationsResolveTransformer.kt:636)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.BodyResolveContext.withAnonymousFunction(BodyResolveContext.kt:946)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer.transformAnonymousFunction(FirDeclarationsResolveTransformer.kt:636)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformAnonymousFunction(FirBodyResolveTransformer.kt:306)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformAnonymousFunction(FirBodyResolveTransformer.kt:27)
at org.jetbrains.kotlin.fir.declarations.FirAnonymousFunction.transform(FirAnonymousFunction.kt:50)
at org.jetbrains.kotlin.fir.visitors.FirTransformerUtilKt.transformSingle(FirTransformerUtil.kt:12)
at org.jetbrains.kotlin.fir.resolve.inference.FirCallCompleter$LambdaAnalyzerImpl.analyzeAndGetLambdaReturnArguments(FirCallCompleter.kt:239)
at org.jetbrains.kotlin.fir.resolve.inference.PostponedArgumentsAnalyzer.analyzeLambda(PostponedArgumentsAnalyzer.kt:131)
at org.jetbrains.kotlin.fir.resolve.inference.PostponedArgumentsAnalyzer.analyze(PostponedArgumentsAnalyzer.kt:59)
at org.jetbrains.kotlin.fir.resolve.inference.FirCallCompleter$runCompletionForCall$1.invoke(FirCallCompleter.kt:125)
at org.jetbrains.kotlin.fir.resolve.inference.FirCallCompleter$runCompletionForCall$1.invoke(FirCallCompleter.kt:124)
at org.jetbrains.kotlin.fir.resolve.inference.ConstraintSystemCompleter.analyzeArgumentWithFixedParameterTypes(ConstraintSystemCompleter.kt:131)
at org.jetbrains.kotlin.fir.resolve.inference.ConstraintSystemCompleter.complete(ConstraintSystemCompleter.kt:48)
at org.jetbrains.kotlin.fir.resolve.inference.ConstraintSystemCompleter.complete$default(ConstraintSystemCompleter.kt:31)
at org.jetbrains.kotlin.fir.resolve.inference.FirCallCompleter.runCompletionForCall(FirCallCompleter.kt:118)
at org.jetbrains.kotlin.fir.resolve.inference.FirCallCompleter.completeCall(FirCallCompleter.kt:80)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirExpressionsResolveTransformer.transformFunctionCall(FirExpressionsResolveTransformer.kt:296)
... 139 more
Caused by: java.lang.AssertionError: There should be at least one non-stub type to compute common supertype but there are: [Stub: TypeVariable(R1), Stub: TypeVariable(R1)]
at org.jetbrains.kotlin.resolve.calls.NewCommonSuperTypeCalculator.commonSuperTypeForNotNullTypes(NewCommonSuperTypeCalculator.kt:174)
at org.jetbrains.kotlin.resolve.calls.NewCommonSuperTypeCalculator.commonSuperTypeForSimpleTypes(NewCommonSuperTypeCalculator.kt:93)
at org.jetbrains.kotlin.resolve.calls.NewCommonSuperTypeCalculator.commonSuperType(NewCommonSuperTypeCalculator.kt:53)
at org.jetbrains.kotlin.resolve.calls.NewCommonSuperTypeCalculator.commonSuperType(NewCommonSuperTypeCalculator.kt:18)
at org.jetbrains.kotlin.resolve.calls.inference.components.ResultTypeResolver.computeCommonSuperType(ResultTypeResolver.kt:175)
at org.jetbrains.kotlin.resolve.calls.inference.components.ResultTypeResolver.findSubType(ResultTypeResolver.kt:135)
at org.jetbrains.kotlin.resolve.calls.inference.components.ResultTypeResolver.findResultTypeOrNull(ResultTypeResolver.kt:42)
at org.jetbrains.kotlin.resolve.calls.inference.components.ResultTypeResolver.findResultType(ResultTypeResolver.kt:27)
at org.jetbrains.kotlin.fir.resolve.inference.ConstraintSystemCompleter.fixVariable(ConstraintSystemCompleter.kt:322)
at org.jetbrains.kotlin.fir.resolve.inference.ConstraintSystemCompleter.fixVariablesOrReportNotEnoughInformation(ConstraintSystemCompleter.kt:219)
at org.jetbrains.kotlin.fir.resolve.inference.ConstraintSystemCompleter.complete(ConstraintSystemCompleter.kt:108)
at org.jetbrains.kotlin.fir.resolve.inference.ConstraintSystemCompleter.complete$default(ConstraintSystemCompleter.kt:31)
at org.jetbrains.kotlin.fir.resolve.inference.FirCallCompleter.runCompletionForCall(FirCallCompleter.kt:118)
at org.jetbrains.kotlin.fir.resolve.inference.FirCallCompleter.completeCall(FirCallCompleter.kt:80)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirExpressionsResolveTransformer.transformFunctionCall(FirExpressionsResolveTransformer.kt:296)
... 176 more
@@ -47,16 +47,16 @@ fun test() {
build2 {
emit(1)
select1(this@build.get(), getInv())
select1(get(), Test.foo(this@build.getInv()))
select1(Test.foo(this@build.get()), Test.foo(getInv()))
select1(Test.foo(get()), this@build.getInv())
select4(this@build.get(), getInv())
select4(get(), Test.foo(this@build.getInv()))
select4(Test.foo(this@build.get()), Test.foo(getInv()))
select4(Test.foo(get()), this@build.getInv())
select1(this@build.get(), <!ARGUMENT_TYPE_MISMATCH!>getInv()<!>)
select1(get(), <!ARGUMENT_TYPE_MISMATCH!>Test.foo(this@build.getInv())<!>)
select1(Test.foo(this@build.get()), <!ARGUMENT_TYPE_MISMATCH!>Test.foo(getInv())<!>)
select1(Test.foo(get()), <!ARGUMENT_TYPE_MISMATCH!>this@build.getInv()<!>)
select4(this@build.get(), <!ARGUMENT_TYPE_MISMATCH!>getInv()<!>)
select4(get(), <!ARGUMENT_TYPE_MISMATCH!>Test.foo(this@build.getInv())<!>)
select4(Test.foo(this@build.get()), <!ARGUMENT_TYPE_MISMATCH!>Test.foo(getInv())<!>)
select4(Test.foo(get()), <!ARGUMENT_TYPE_MISMATCH!>this@build.getInv()<!>)
select4(id(Test.foo(this@build.get())), getInv())
select4(id(Test.foo(this@build.get())), <!ARGUMENT_TYPE_MISMATCH!>getInv()<!>)
""
}
""
@@ -78,16 +78,16 @@ fun test() {
build2 {
emit(1)
select2(this@build.get(), getInv())
select2(get(), Test.foo(this@build.getInv()))
select2(Test.foo(this@build.get()), Test.foo(getInv()))
select2(Test.foo(get()), this@build.getInv())
select3(this@build.get(), getInv())
select3(get(), Test.foo(this@build.getInv()))
select3(Test.foo(this@build.get()), Test.foo(getInv()))
select3(Test.foo(get()), this@build.getInv())
select2(this@build.get(), <!ARGUMENT_TYPE_MISMATCH!>getInv()<!>)
select2(get(), <!ARGUMENT_TYPE_MISMATCH!>Test.foo(this@build.getInv())<!>)
select2(Test.foo(this@build.get()), <!ARGUMENT_TYPE_MISMATCH!>Test.foo(getInv())<!>)
select2(Test.foo(get()), <!ARGUMENT_TYPE_MISMATCH!>this@build.getInv()<!>)
select3(this@build.get(), <!ARGUMENT_TYPE_MISMATCH!>getInv()<!>)
select3(get(), <!ARGUMENT_TYPE_MISMATCH!>Test.foo(this@build.getInv())<!>)
select3(Test.foo(this@build.get()), <!ARGUMENT_TYPE_MISMATCH!>Test.foo(getInv())<!>)
select3(Test.foo(get()), <!ARGUMENT_TYPE_MISMATCH!>this@build.getInv()<!>)
""
}
""
}
}
}
@@ -0,0 +1,253 @@
While resolving call R?C|/build|(<L> = build@fun R|TestInterface<Stub: TypeVariable(R)>|.<anonymous>(): R|kotlin/Unit| <inline=Unknown> {
this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.emit: R|kotlin/Unit|>|(String(1))
Q|Test|.R|/Test.foo|<R|ft<Stub: TypeVariable(R), Stub: TypeVariable(R)?>|>(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.get: R|Stub: TypeVariable(R)|>|())
Q|Test|.R|/Test.foo|<R|ft<Inv<Stub: TypeVariable(R)>, Inv<Stub: TypeVariable(R)>?>|>(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.getInv: R|Inv<Stub: TypeVariable(R)>|>|())
R|/id|<R|Stub: TypeVariable(R)|>(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.get: R|Stub: TypeVariable(R)|>|())
R|/select|<R|Stub: TypeVariable(R)|>(vararg(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.get: R|Stub: TypeVariable(R)|>|(), this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.get: R|Stub: TypeVariable(R)|>|()))
R|/select|<R|Stub: TypeVariable(R)?|>(vararg(Q|Test|.R|/Test.foo|<R|ft<Stub: TypeVariable(R), Stub: TypeVariable(R)?>|>(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.get: R|Stub: TypeVariable(R)|>|()), Q|Test|.R|/Test.foo|<R|ft<Stub: TypeVariable(R), Stub: TypeVariable(R)?>|>(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.get: R|Stub: TypeVariable(R)|>|())))
R?C|/select|(Q|Test|.R|/Test.foo|<R|ft<Stub: TypeVariable(R), Stub: TypeVariable(R)?>|>(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.get: R|Stub: TypeVariable(R)|>|()), this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.get: R|Stub: TypeVariable(R)|>|())
select#(getInv#(), getInv#())
select#(Test#.foo#(getInv#()), Test#.foo#(getInv#()))
select#(Test#.foo#(getInv#()), getInv#())
select#(getInv#(), Test#.foo#(getInv#()))
select#(id#(get#()), id#(get#()))
build2#(<L> = build2@fun <implicit>.<anonymous>(): <implicit> <inline=Unknown> {
emit#(IntegerLiteral(1))
select#(this@build#.get#(), get#())
select#(Test#.foo#(this@build#.get#()), Test#.foo#(get#()))
select#(this@build#.getInv#(), getInv#())
select#(Test#.foo#(this@build#.getInv#()), Test#.foo#(getInv#()))
select#(Test#.foo#(this@build#.getInv#()), getInv#())
select#(id#(this@build#.get#()), id#(get#()))
String()
}
)
String()
}
)
java.lang.RuntimeException: While resolving call R?C|/build|(<L> = build@fun R|TestInterface<Stub: TypeVariable(R)>|.<anonymous>(): R|kotlin/Unit| <inline=Unknown> {
this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.emit: R|kotlin/Unit|>|(String(1))
Q|Test|.R|/Test.foo|<R|ft<Stub: TypeVariable(R), Stub: TypeVariable(R)?>|>(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.get: R|Stub: TypeVariable(R)|>|())
Q|Test|.R|/Test.foo|<R|ft<Inv<Stub: TypeVariable(R)>, Inv<Stub: TypeVariable(R)>?>|>(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.getInv: R|Inv<Stub: TypeVariable(R)>|>|())
R|/id|<R|Stub: TypeVariable(R)|>(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.get: R|Stub: TypeVariable(R)|>|())
R|/select|<R|Stub: TypeVariable(R)|>(vararg(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.get: R|Stub: TypeVariable(R)|>|(), this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.get: R|Stub: TypeVariable(R)|>|()))
R|/select|<R|Stub: TypeVariable(R)?|>(vararg(Q|Test|.R|/Test.foo|<R|ft<Stub: TypeVariable(R), Stub: TypeVariable(R)?>|>(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.get: R|Stub: TypeVariable(R)|>|()), Q|Test|.R|/Test.foo|<R|ft<Stub: TypeVariable(R), Stub: TypeVariable(R)?>|>(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.get: R|Stub: TypeVariable(R)|>|())))
R?C|/select|(Q|Test|.R|/Test.foo|<R|ft<Stub: TypeVariable(R), Stub: TypeVariable(R)?>|>(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.get: R|Stub: TypeVariable(R)|>|()), this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.get: R|Stub: TypeVariable(R)|>|())
select#(getInv#(), getInv#())
select#(Test#.foo#(getInv#()), Test#.foo#(getInv#()))
select#(Test#.foo#(getInv#()), getInv#())
select#(getInv#(), Test#.foo#(getInv#()))
select#(id#(get#()), id#(get#()))
build2#(<L> = build2@fun <implicit>.<anonymous>(): <implicit> <inline=Unknown> {
emit#(IntegerLiteral(1))
select#(this@build#.get#(), get#())
select#(Test#.foo#(this@build#.get#()), Test#.foo#(get#()))
select#(this@build#.getInv#(), getInv#())
select#(Test#.foo#(this@build#.getInv#()), Test#.foo#(getInv#()))
select#(Test#.foo#(this@build#.getInv#()), getInv#())
select#(id#(this@build#.get#()), id#(get#()))
String()
}
)
String()
}
)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirExpressionsResolveTransformer.transformFunctionCall(FirExpressionsResolveTransformer.kt:298)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformFunctionCall(FirBodyResolveTransformer.kt:107)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformFunctionCall(FirBodyResolveTransformer.kt:27)
at org.jetbrains.kotlin.fir.expressions.FirFunctionCall.transform(FirFunctionCall.kt:37)
at org.jetbrains.kotlin.fir.declarations.impl.FirPropertyImpl.transformInitializer(FirPropertyImpl.kt:104)
at org.jetbrains.kotlin.fir.declarations.impl.FirPropertyImpl.transformInitializer(FirPropertyImpl.kt:34)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer.transformLocalVariable(FirDeclarationsResolveTransformer.kt:276)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer.transformProperty(FirDeclarationsResolveTransformer.kt:119)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformProperty(FirBodyResolveTransformer.kt:259)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformProperty(FirBodyResolveTransformer.kt:27)
at org.jetbrains.kotlin.fir.declarations.FirProperty.transform(FirProperty.kt:58)
at org.jetbrains.kotlin.fir.expressions.FirExpressionUtilKt.transformStatementsIndexed(FirExpressionUtil.kt:134)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirExpressionsResolveTransformer.transformBlockInCurrentScope$resolve(FirExpressionsResolveTransformer.kt:323)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirExpressionsResolveTransformer.transformBlock(FirExpressionsResolveTransformer.kt:314)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformBlock(FirBodyResolveTransformer.kt:122)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformBlock(FirBodyResolveTransformer.kt:27)
at org.jetbrains.kotlin.fir.expressions.FirBlock.transform(FirBlock.kt:28)
at org.jetbrains.kotlin.fir.declarations.impl.FirSimpleFunctionImpl.transformBody(FirSimpleFunctionImpl.kt:99)
at org.jetbrains.kotlin.fir.declarations.impl.FirSimpleFunctionImpl.transformChildren(FirSimpleFunctionImpl.kt:75)
at org.jetbrains.kotlin.fir.declarations.impl.FirSimpleFunctionImpl.transformChildren(FirSimpleFunctionImpl.kt:33)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformElement(FirBodyResolveTransformer.kt:60)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformDeclarationContent(FirBodyResolveTransformer.kt:244)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer.transformDeclarationContent(FirDeclarationsResolveTransformer.kt:69)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer.transformFunction(FirDeclarationsResolveTransformer.kt:527)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer.transformFunctionWithGivenSignature(FirDeclarationsResolveTransformer.kt:490)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer.access$transformFunctionWithGivenSignature(FirDeclarationsResolveTransformer.kt:41)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer$transformSimpleFunction$1$1.invoke(FirDeclarationsResolveTransformer.kt:479)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer$transformSimpleFunction$1$1.invoke(FirDeclarationsResolveTransformer.kt:477)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.BodyResolveContext.forFunctionBody(BodyResolveContext.kt:896)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer.transformSimpleFunction(FirDeclarationsResolveTransformer.kt:477)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformSimpleFunction(FirBodyResolveTransformer.kt:281)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformSimpleFunction(FirBodyResolveTransformer.kt:27)
at org.jetbrains.kotlin.fir.declarations.FirSimpleFunction.transform(FirSimpleFunction.kt:52)
at org.jetbrains.kotlin.fir.visitors.FirTransformerUtilKt.transformInplace(FirTransformerUtil.kt:19)
at org.jetbrains.kotlin.fir.declarations.impl.FirFileImpl.transformDeclarations(FirFileImpl.kt:61)
at org.jetbrains.kotlin.fir.declarations.impl.FirFileImpl.transformChildren(FirFileImpl.kt:46)
at org.jetbrains.kotlin.fir.declarations.impl.FirFileImpl.transformChildren(FirFileImpl.kt:25)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformElement(FirBodyResolveTransformer.kt:60)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformDeclarationContent(FirBodyResolveTransformer.kt:244)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformFile(FirBodyResolveTransformer.kt:54)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformFile(FirBodyResolveTransformer.kt:27)
at org.jetbrains.kotlin.fir.declarations.FirFile.transform(FirFile.kt:37)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformerAdapter.transformFile(FirBodyResolveTransformerAdapters.kt:37)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformerAdapter.transformFile(FirBodyResolveTransformerAdapters.kt:23)
at org.jetbrains.kotlin.fir.declarations.FirFile.transform(FirFile.kt:37)
at org.jetbrains.kotlin.fir.resolve.transformers.FirTransformerBasedResolveProcessor.processFile(FirResolveProcessor.kt:29)
at org.jetbrains.kotlin.fir.resolve.transformers.FirTotalResolveProcessor.process(FirTotalResolveProcessor.kt:23)
at org.jetbrains.kotlin.fir.analysis.FirAnalyzerFacade.runResolution(FirAnalyzerFacade.kt:69)
at org.jetbrains.kotlin.test.frontend.fir.FirFrontendFacade.analyze(FirFrontendFacade.kt:75)
at org.jetbrains.kotlin.test.frontend.fir.FirFrontendFacade.analyze(FirFrontendFacade.kt:26)
at org.jetbrains.kotlin.test.model.FrontendFacade.transform(Facades.kt:36)
at org.jetbrains.kotlin.test.model.FrontendFacade.transform(Facades.kt:25)
at org.jetbrains.kotlin.test.TestRunner.processModule(TestRunner.kt:125)
at org.jetbrains.kotlin.test.TestRunner.runTestImpl(TestRunner.kt:66)
at org.jetbrains.kotlin.test.TestRunner.runTest(TestRunner.kt:20)
at org.jetbrains.kotlin.test.TestRunner.runTest$default(TestRunner.kt:18)
at org.jetbrains.kotlin.test.runners.AbstractKotlinCompilerTest.runTest(AbstractKotlinCompilerTest.kt:80)
at org.jetbrains.kotlin.test.runners.FirOldFrontendDiagnosticsTestGenerated$Tests$Inference$BuilderInference$StubTypes.testCommonSuperTypeNullable(FirOldFrontendDiagnosticsTestGenerated.java:12723)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.junit.platform.commons.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:688)
at org.junit.jupiter.engine.execution.MethodInvocation.proceed(MethodInvocation.java:60)
at org.junit.jupiter.engine.execution.InvocationInterceptorChain$ValidatingInvocation.proceed(InvocationInterceptorChain.java:131)
at org.junit.jupiter.engine.extension.TimeoutExtension.intercept(TimeoutExtension.java:149)
at org.junit.jupiter.engine.extension.TimeoutExtension.interceptTestableMethod(TimeoutExtension.java:140)
at org.junit.jupiter.engine.extension.TimeoutExtension.interceptTestMethod(TimeoutExtension.java:84)
at org.junit.jupiter.engine.execution.ExecutableInvoker$ReflectiveInterceptorCall.lambda$ofVoidMethod$0(ExecutableInvoker.java:115)
at org.junit.jupiter.engine.execution.ExecutableInvoker.lambda$invoke$0(ExecutableInvoker.java:105)
at org.junit.jupiter.engine.execution.InvocationInterceptorChain$InterceptedInvocation.proceed(InvocationInterceptorChain.java:106)
at org.junit.jupiter.engine.execution.InvocationInterceptorChain.proceed(InvocationInterceptorChain.java:64)
at org.junit.jupiter.engine.execution.InvocationInterceptorChain.chainAndInvoke(InvocationInterceptorChain.java:45)
at org.junit.jupiter.engine.execution.InvocationInterceptorChain.invoke(InvocationInterceptorChain.java:37)
at org.junit.jupiter.engine.execution.ExecutableInvoker.invoke(ExecutableInvoker.java:104)
at org.junit.jupiter.engine.execution.ExecutableInvoker.invoke(ExecutableInvoker.java:98)
at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.lambda$invokeTestMethod$6(TestMethodTestDescriptor.java:210)
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.invokeTestMethod(TestMethodTestDescriptor.java:206)
at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.execute(TestMethodTestDescriptor.java:131)
at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.execute(TestMethodTestDescriptor.java:65)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$5(NodeTestTask.java:139)
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$7(NodeTestTask.java:129)
at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:127)
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:126)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:84)
at org.junit.platform.engine.support.hierarchical.ForkJoinPoolHierarchicalTestExecutorService$ExclusiveTask.compute(ForkJoinPoolHierarchicalTestExecutorService.java:185)
at java.util.concurrent.RecursiveAction.exec(RecursiveAction.java:189)
at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289)
at java.util.concurrent.ForkJoinTask.doJoin(ForkJoinTask.java:389)
at java.util.concurrent.ForkJoinTask.join(ForkJoinTask.java:719)
at org.junit.platform.engine.support.hierarchical.ForkJoinPoolHierarchicalTestExecutorService.joinConcurrentTasksInReverseOrderToEnableWorkStealing(ForkJoinPoolHierarchicalTestExecutorService.java:162)
at org.junit.platform.engine.support.hierarchical.ForkJoinPoolHierarchicalTestExecutorService.invokeAll(ForkJoinPoolHierarchicalTestExecutorService.java:136)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$5(NodeTestTask.java:143)
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$7(NodeTestTask.java:129)
at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:127)
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:126)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:84)
at org.junit.platform.engine.support.hierarchical.ForkJoinPoolHierarchicalTestExecutorService$ExclusiveTask.compute(ForkJoinPoolHierarchicalTestExecutorService.java:185)
at java.util.concurrent.RecursiveAction.exec(RecursiveAction.java:189)
at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289)
at java.util.concurrent.ForkJoinTask.doJoin(ForkJoinTask.java:389)
at java.util.concurrent.ForkJoinTask.join(ForkJoinTask.java:719)
at org.junit.platform.engine.support.hierarchical.ForkJoinPoolHierarchicalTestExecutorService.joinConcurrentTasksInReverseOrderToEnableWorkStealing(ForkJoinPoolHierarchicalTestExecutorService.java:162)
at org.junit.platform.engine.support.hierarchical.ForkJoinPoolHierarchicalTestExecutorService.invokeAll(ForkJoinPoolHierarchicalTestExecutorService.java:136)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$5(NodeTestTask.java:143)
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$7(NodeTestTask.java:129)
at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:127)
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:126)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:84)
at org.junit.platform.engine.support.hierarchical.ForkJoinPoolHierarchicalTestExecutorService$ExclusiveTask.compute(ForkJoinPoolHierarchicalTestExecutorService.java:185)
at java.util.concurrent.RecursiveAction.exec(RecursiveAction.java:189)
at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289)
at java.util.concurrent.ForkJoinTask.doJoin(ForkJoinTask.java:389)
at java.util.concurrent.ForkJoinTask.join(ForkJoinTask.java:719)
at org.junit.platform.engine.support.hierarchical.ForkJoinPoolHierarchicalTestExecutorService.joinConcurrentTasksInReverseOrderToEnableWorkStealing(ForkJoinPoolHierarchicalTestExecutorService.java:162)
at org.junit.platform.engine.support.hierarchical.ForkJoinPoolHierarchicalTestExecutorService.invokeAll(ForkJoinPoolHierarchicalTestExecutorService.java:136)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$5(NodeTestTask.java:143)
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$7(NodeTestTask.java:129)
at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:127)
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:126)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:84)
at org.junit.platform.engine.support.hierarchical.ForkJoinPoolHierarchicalTestExecutorService$ExclusiveTask.compute(ForkJoinPoolHierarchicalTestExecutorService.java:185)
at java.util.concurrent.RecursiveAction.exec(RecursiveAction.java:189)
at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289)
at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1056)
at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1692)
at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:157)
Caused by: java.lang.RuntimeException: While resolving call R?C|/select|(Q|Test|.R|/Test.foo|<R|ft<Stub: TypeVariable(R), Stub: TypeVariable(R)?>|>(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.get: R|Stub: TypeVariable(R)|>|()), this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.get: R|Stub: TypeVariable(R)|>|())
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirExpressionsResolveTransformer.transformFunctionCall(FirExpressionsResolveTransformer.kt:298)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformFunctionCall(FirBodyResolveTransformer.kt:107)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformFunctionCall(FirBodyResolveTransformer.kt:27)
at org.jetbrains.kotlin.fir.expressions.FirFunctionCall.transform(FirFunctionCall.kt:37)
at org.jetbrains.kotlin.fir.expressions.FirExpressionUtilKt.transformStatementsIndexed(FirExpressionUtil.kt:134)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirExpressionsResolveTransformer.transformBlockInCurrentScope$resolve(FirExpressionsResolveTransformer.kt:323)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirExpressionsResolveTransformer.transformBlock(FirExpressionsResolveTransformer.kt:314)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformBlock(FirBodyResolveTransformer.kt:122)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformBlock(FirBodyResolveTransformer.kt:27)
at org.jetbrains.kotlin.fir.expressions.FirBlock.transform(FirBlock.kt:28)
at org.jetbrains.kotlin.fir.declarations.impl.FirAnonymousFunctionImpl.transformBody(FirAnonymousFunctionImpl.kt:102)
at org.jetbrains.kotlin.fir.declarations.impl.FirAnonymousFunctionImpl.transformChildren(FirAnonymousFunctionImpl.kt:74)
at org.jetbrains.kotlin.fir.declarations.impl.FirAnonymousFunctionImpl.transformChildren(FirAnonymousFunctionImpl.kt:31)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformElement(FirBodyResolveTransformer.kt:60)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformDeclarationContent(FirBodyResolveTransformer.kt:244)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer.transformDeclarationContent(FirDeclarationsResolveTransformer.kt:69)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer.transformFunction(FirDeclarationsResolveTransformer.kt:527)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer.transformAnonymousFunctionWithLambdaResolution(FirDeclarationsResolveTransformer.kt:430)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer.access$transformAnonymousFunctionWithLambdaResolution(FirDeclarationsResolveTransformer.kt:41)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer$transformAnonymousFunction$3.invoke(FirDeclarationsResolveTransformer.kt:638)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer$transformAnonymousFunction$3.invoke(FirDeclarationsResolveTransformer.kt:636)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.BodyResolveContext.withAnonymousFunction(BodyResolveContext.kt:946)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer.transformAnonymousFunction(FirDeclarationsResolveTransformer.kt:636)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformAnonymousFunction(FirBodyResolveTransformer.kt:306)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformAnonymousFunction(FirBodyResolveTransformer.kt:27)
at org.jetbrains.kotlin.fir.declarations.FirAnonymousFunction.transform(FirAnonymousFunction.kt:50)
at org.jetbrains.kotlin.fir.visitors.FirTransformerUtilKt.transformSingle(FirTransformerUtil.kt:12)
at org.jetbrains.kotlin.fir.resolve.inference.FirCallCompleter$LambdaAnalyzerImpl.analyzeAndGetLambdaReturnArguments(FirCallCompleter.kt:239)
at org.jetbrains.kotlin.fir.resolve.inference.PostponedArgumentsAnalyzer.analyzeLambda(PostponedArgumentsAnalyzer.kt:131)
at org.jetbrains.kotlin.fir.resolve.inference.PostponedArgumentsAnalyzer.analyze(PostponedArgumentsAnalyzer.kt:59)
at org.jetbrains.kotlin.fir.resolve.inference.FirCallCompleter$runCompletionForCall$1.invoke(FirCallCompleter.kt:125)
at org.jetbrains.kotlin.fir.resolve.inference.FirCallCompleter$runCompletionForCall$1.invoke(FirCallCompleter.kt:124)
at org.jetbrains.kotlin.fir.resolve.inference.ConstraintSystemCompleter.analyzeArgumentWithFixedParameterTypes(ConstraintSystemCompleter.kt:131)
at org.jetbrains.kotlin.fir.resolve.inference.ConstraintSystemCompleter.complete(ConstraintSystemCompleter.kt:48)
at org.jetbrains.kotlin.fir.resolve.inference.ConstraintSystemCompleter.complete$default(ConstraintSystemCompleter.kt:31)
at org.jetbrains.kotlin.fir.resolve.inference.FirCallCompleter.runCompletionForCall(FirCallCompleter.kt:118)
at org.jetbrains.kotlin.fir.resolve.inference.FirCallCompleter.completeCall(FirCallCompleter.kt:80)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirExpressionsResolveTransformer.transformFunctionCall(FirExpressionsResolveTransformer.kt:296)
... 139 more
Caused by: java.lang.AssertionError: There should be at least one non-stub type to compute common supertype but there are: [Stub: TypeVariable(R)?, Stub: TypeVariable(R)]
at org.jetbrains.kotlin.resolve.calls.NewCommonSuperTypeCalculator.commonSuperTypeForNotNullTypes(NewCommonSuperTypeCalculator.kt:174)
at org.jetbrains.kotlin.resolve.calls.NewCommonSuperTypeCalculator.commonSuperTypeForSimpleTypes(NewCommonSuperTypeCalculator.kt:93)
at org.jetbrains.kotlin.resolve.calls.NewCommonSuperTypeCalculator.commonSuperType(NewCommonSuperTypeCalculator.kt:53)
at org.jetbrains.kotlin.resolve.calls.NewCommonSuperTypeCalculator.commonSuperType(NewCommonSuperTypeCalculator.kt:18)
at org.jetbrains.kotlin.resolve.calls.inference.components.ResultTypeResolver.computeCommonSuperType(ResultTypeResolver.kt:175)
at org.jetbrains.kotlin.resolve.calls.inference.components.ResultTypeResolver.findSubType(ResultTypeResolver.kt:135)
at org.jetbrains.kotlin.resolve.calls.inference.components.ResultTypeResolver.findResultTypeOrNull(ResultTypeResolver.kt:42)
at org.jetbrains.kotlin.resolve.calls.inference.components.ResultTypeResolver.findResultType(ResultTypeResolver.kt:27)
at org.jetbrains.kotlin.fir.resolve.inference.ConstraintSystemCompleter.fixVariable(ConstraintSystemCompleter.kt:322)
at org.jetbrains.kotlin.fir.resolve.inference.ConstraintSystemCompleter.fixVariablesOrReportNotEnoughInformation(ConstraintSystemCompleter.kt:219)
at org.jetbrains.kotlin.fir.resolve.inference.ConstraintSystemCompleter.complete(ConstraintSystemCompleter.kt:108)
at org.jetbrains.kotlin.fir.resolve.inference.ConstraintSystemCompleter.complete$default(ConstraintSystemCompleter.kt:31)
at org.jetbrains.kotlin.fir.resolve.inference.FirCallCompleter.runCompletionForCall(FirCallCompleter.kt:118)
at org.jetbrains.kotlin.fir.resolve.inference.FirCallCompleter.completeCall(FirCallCompleter.kt:80)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirExpressionsResolveTransformer.transformFunctionCall(FirExpressionsResolveTransformer.kt:296)
... 176 more
@@ -0,0 +1,257 @@
While resolving call R?C|/build|(<L> = build@fun R|TestInterface<Stub: TypeVariable(R1)>|.<anonymous>(): R|kotlin/Unit| <inline=Unknown> {
this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.emit: R|kotlin/Unit|>|(String(1))
R|/intersect|<R|Stub: TypeVariable(R1)|>(vararg(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.getIn: R|In<Stub: TypeVariable(R1)>|>|(), this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.getIn: R|In<Stub: TypeVariable(R1)>|>|()))
R|/intersect|<R|Stub: TypeVariable(R1)|>(vararg(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.getIn: R|In<Stub: TypeVariable(R1)>|>|(), Q|Test|.R|/Test.foo|<R|ft<In<Stub: TypeVariable(R1)>, In<Stub: TypeVariable(R1)>?>|>(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.getIn: R|In<Stub: TypeVariable(R1)>|>|())))
R|/intersect|<R|Stub: TypeVariable(R1)|>(vararg(Q|Test|.R|/Test.foo|<R|ft<In<Stub: TypeVariable(R1)>, In<Stub: TypeVariable(R1)>?>|>(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.getIn: R|In<Stub: TypeVariable(R1)>|>|()), Q|Test|.R|/Test.foo|<R|ft<In<Stub: TypeVariable(R1)>, In<Stub: TypeVariable(R1)>?>|>(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.getIn: R|In<Stub: TypeVariable(R1)>|>|())))
R|/intersect|<R|Stub: TypeVariable(R1)|>(vararg(Q|Test|.R|/Test.foo|<R|ft<In<Stub: TypeVariable(R1)>, In<Stub: TypeVariable(R1)>?>|>(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.getIn: R|In<Stub: TypeVariable(R1)>|>|()), this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.getIn: R|In<Stub: TypeVariable(R1)>|>|()))
R?C|/build2|(<L> = build2@fun R|TestInterface<Stub: TypeVariable(R2)>|.<anonymous>(): R|kotlin/Unit| <inline=Unknown> {
this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.emit: R|kotlin/Unit|>|(Int(1))
R|/intersect|<R|it(Stub: TypeVariable(R1) & Stub: TypeVariable(R2))|>(vararg(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.getIn: R|In<Stub: TypeVariable(R1)>|>|(), this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.getIn: R|In<Stub: TypeVariable(R2)>|>|()))
R|/intersect|<R|it(Stub: TypeVariable(R2) & Stub: TypeVariable(R1))|>(vararg(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.getIn: R|In<Stub: TypeVariable(R2)>|>|(), Q|Test|.R|/Test.foo|<R|ft<In<Stub: TypeVariable(R1)>, In<Stub: TypeVariable(R1)>?>|>(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.getIn: R|In<Stub: TypeVariable(R1)>|>|())))
R|/intersect|<R|it(Stub: TypeVariable(R1) & Stub: TypeVariable(R2))|>(vararg(Q|Test|.R|/Test.foo|<R|ft<In<Stub: TypeVariable(R1)>, In<Stub: TypeVariable(R1)>?>|>(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.getIn: R|In<Stub: TypeVariable(R1)>|>|()), Q|Test|.R|/Test.foo|<R|ft<In<Stub: TypeVariable(R2)>, In<Stub: TypeVariable(R2)>?>|>(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.getIn: R|In<Stub: TypeVariable(R2)>|>|())))
R|/intersect|<R|it(Stub: TypeVariable(R2) & Stub: TypeVariable(R1))|>(vararg(Q|Test|.R|/Test.foo|<R|ft<In<Stub: TypeVariable(R2)>, In<Stub: TypeVariable(R2)>?>|>(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.getIn: R|In<Stub: TypeVariable(R2)>|>|()), this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.getIn: R|In<Stub: TypeVariable(R1)>|>|()))
String()
}
)
String()
}
)
java.lang.RuntimeException: While resolving call R?C|/build|(<L> = build@fun R|TestInterface<Stub: TypeVariable(R1)>|.<anonymous>(): R|kotlin/Unit| <inline=Unknown> {
this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.emit: R|kotlin/Unit|>|(String(1))
R|/intersect|<R|Stub: TypeVariable(R1)|>(vararg(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.getIn: R|In<Stub: TypeVariable(R1)>|>|(), this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.getIn: R|In<Stub: TypeVariable(R1)>|>|()))
R|/intersect|<R|Stub: TypeVariable(R1)|>(vararg(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.getIn: R|In<Stub: TypeVariable(R1)>|>|(), Q|Test|.R|/Test.foo|<R|ft<In<Stub: TypeVariable(R1)>, In<Stub: TypeVariable(R1)>?>|>(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.getIn: R|In<Stub: TypeVariable(R1)>|>|())))
R|/intersect|<R|Stub: TypeVariable(R1)|>(vararg(Q|Test|.R|/Test.foo|<R|ft<In<Stub: TypeVariable(R1)>, In<Stub: TypeVariable(R1)>?>|>(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.getIn: R|In<Stub: TypeVariable(R1)>|>|()), Q|Test|.R|/Test.foo|<R|ft<In<Stub: TypeVariable(R1)>, In<Stub: TypeVariable(R1)>?>|>(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.getIn: R|In<Stub: TypeVariable(R1)>|>|())))
R|/intersect|<R|Stub: TypeVariable(R1)|>(vararg(Q|Test|.R|/Test.foo|<R|ft<In<Stub: TypeVariable(R1)>, In<Stub: TypeVariable(R1)>?>|>(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.getIn: R|In<Stub: TypeVariable(R1)>|>|()), this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.getIn: R|In<Stub: TypeVariable(R1)>|>|()))
R?C|/build2|(<L> = build2@fun R|TestInterface<Stub: TypeVariable(R2)>|.<anonymous>(): R|kotlin/Unit| <inline=Unknown> {
this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.emit: R|kotlin/Unit|>|(Int(1))
R|/intersect|<R|it(Stub: TypeVariable(R1) & Stub: TypeVariable(R2))|>(vararg(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.getIn: R|In<Stub: TypeVariable(R1)>|>|(), this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.getIn: R|In<Stub: TypeVariable(R2)>|>|()))
R|/intersect|<R|it(Stub: TypeVariable(R2) & Stub: TypeVariable(R1))|>(vararg(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.getIn: R|In<Stub: TypeVariable(R2)>|>|(), Q|Test|.R|/Test.foo|<R|ft<In<Stub: TypeVariable(R1)>, In<Stub: TypeVariable(R1)>?>|>(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.getIn: R|In<Stub: TypeVariable(R1)>|>|())))
R|/intersect|<R|it(Stub: TypeVariable(R1) & Stub: TypeVariable(R2))|>(vararg(Q|Test|.R|/Test.foo|<R|ft<In<Stub: TypeVariable(R1)>, In<Stub: TypeVariable(R1)>?>|>(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.getIn: R|In<Stub: TypeVariable(R1)>|>|()), Q|Test|.R|/Test.foo|<R|ft<In<Stub: TypeVariable(R2)>, In<Stub: TypeVariable(R2)>?>|>(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.getIn: R|In<Stub: TypeVariable(R2)>|>|())))
R|/intersect|<R|it(Stub: TypeVariable(R2) & Stub: TypeVariable(R1))|>(vararg(Q|Test|.R|/Test.foo|<R|ft<In<Stub: TypeVariable(R2)>, In<Stub: TypeVariable(R2)>?>|>(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.getIn: R|In<Stub: TypeVariable(R2)>|>|()), this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.getIn: R|In<Stub: TypeVariable(R1)>|>|()))
String()
}
)
String()
}
)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirExpressionsResolveTransformer.transformFunctionCall(FirExpressionsResolveTransformer.kt:298)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformFunctionCall(FirBodyResolveTransformer.kt:107)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformFunctionCall(FirBodyResolveTransformer.kt:27)
at org.jetbrains.kotlin.fir.expressions.FirFunctionCall.transform(FirFunctionCall.kt:37)
at org.jetbrains.kotlin.fir.declarations.impl.FirPropertyImpl.transformInitializer(FirPropertyImpl.kt:104)
at org.jetbrains.kotlin.fir.declarations.impl.FirPropertyImpl.transformInitializer(FirPropertyImpl.kt:34)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer.transformLocalVariable(FirDeclarationsResolveTransformer.kt:276)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer.transformProperty(FirDeclarationsResolveTransformer.kt:119)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformProperty(FirBodyResolveTransformer.kt:259)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformProperty(FirBodyResolveTransformer.kt:27)
at org.jetbrains.kotlin.fir.declarations.FirProperty.transform(FirProperty.kt:58)
at org.jetbrains.kotlin.fir.expressions.FirExpressionUtilKt.transformStatementsIndexed(FirExpressionUtil.kt:134)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirExpressionsResolveTransformer.transformBlockInCurrentScope$resolve(FirExpressionsResolveTransformer.kt:323)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirExpressionsResolveTransformer.transformBlock(FirExpressionsResolveTransformer.kt:314)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformBlock(FirBodyResolveTransformer.kt:122)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformBlock(FirBodyResolveTransformer.kt:27)
at org.jetbrains.kotlin.fir.expressions.FirBlock.transform(FirBlock.kt:28)
at org.jetbrains.kotlin.fir.declarations.impl.FirSimpleFunctionImpl.transformBody(FirSimpleFunctionImpl.kt:99)
at org.jetbrains.kotlin.fir.declarations.impl.FirSimpleFunctionImpl.transformChildren(FirSimpleFunctionImpl.kt:75)
at org.jetbrains.kotlin.fir.declarations.impl.FirSimpleFunctionImpl.transformChildren(FirSimpleFunctionImpl.kt:33)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformElement(FirBodyResolveTransformer.kt:60)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformDeclarationContent(FirBodyResolveTransformer.kt:244)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer.transformDeclarationContent(FirDeclarationsResolveTransformer.kt:69)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer.transformFunction(FirDeclarationsResolveTransformer.kt:527)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer.transformFunctionWithGivenSignature(FirDeclarationsResolveTransformer.kt:490)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer.access$transformFunctionWithGivenSignature(FirDeclarationsResolveTransformer.kt:41)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer$transformSimpleFunction$1$1.invoke(FirDeclarationsResolveTransformer.kt:479)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer$transformSimpleFunction$1$1.invoke(FirDeclarationsResolveTransformer.kt:477)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.BodyResolveContext.forFunctionBody(BodyResolveContext.kt:896)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer.transformSimpleFunction(FirDeclarationsResolveTransformer.kt:477)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformSimpleFunction(FirBodyResolveTransformer.kt:281)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformSimpleFunction(FirBodyResolveTransformer.kt:27)
at org.jetbrains.kotlin.fir.declarations.FirSimpleFunction.transform(FirSimpleFunction.kt:52)
at org.jetbrains.kotlin.fir.visitors.FirTransformerUtilKt.transformInplace(FirTransformerUtil.kt:19)
at org.jetbrains.kotlin.fir.declarations.impl.FirFileImpl.transformDeclarations(FirFileImpl.kt:61)
at org.jetbrains.kotlin.fir.declarations.impl.FirFileImpl.transformChildren(FirFileImpl.kt:46)
at org.jetbrains.kotlin.fir.declarations.impl.FirFileImpl.transformChildren(FirFileImpl.kt:25)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformElement(FirBodyResolveTransformer.kt:60)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformDeclarationContent(FirBodyResolveTransformer.kt:244)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformFile(FirBodyResolveTransformer.kt:54)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformFile(FirBodyResolveTransformer.kt:27)
at org.jetbrains.kotlin.fir.declarations.FirFile.transform(FirFile.kt:37)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformerAdapter.transformFile(FirBodyResolveTransformerAdapters.kt:37)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformerAdapter.transformFile(FirBodyResolveTransformerAdapters.kt:23)
at org.jetbrains.kotlin.fir.declarations.FirFile.transform(FirFile.kt:37)
at org.jetbrains.kotlin.fir.resolve.transformers.FirTransformerBasedResolveProcessor.processFile(FirResolveProcessor.kt:29)
at org.jetbrains.kotlin.fir.resolve.transformers.FirTotalResolveProcessor.process(FirTotalResolveProcessor.kt:23)
at org.jetbrains.kotlin.fir.analysis.FirAnalyzerFacade.runResolution(FirAnalyzerFacade.kt:69)
at org.jetbrains.kotlin.test.frontend.fir.FirFrontendFacade.analyze(FirFrontendFacade.kt:75)
at org.jetbrains.kotlin.test.frontend.fir.FirFrontendFacade.analyze(FirFrontendFacade.kt:26)
at org.jetbrains.kotlin.test.model.FrontendFacade.transform(Facades.kt:36)
at org.jetbrains.kotlin.test.model.FrontendFacade.transform(Facades.kt:25)
at org.jetbrains.kotlin.test.TestRunner.processModule(TestRunner.kt:125)
at org.jetbrains.kotlin.test.TestRunner.runTestImpl(TestRunner.kt:66)
at org.jetbrains.kotlin.test.TestRunner.runTest(TestRunner.kt:20)
at org.jetbrains.kotlin.test.TestRunner.runTest$default(TestRunner.kt:18)
at org.jetbrains.kotlin.test.runners.AbstractKotlinCompilerTest.runTest(AbstractKotlinCompilerTest.kt:80)
at org.jetbrains.kotlin.test.runners.FirOldFrontendDiagnosticsTestGenerated$Tests$Inference$BuilderInference$StubTypes.testIntersect(FirOldFrontendDiagnosticsTestGenerated.java:12729)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.junit.platform.commons.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:688)
at org.junit.jupiter.engine.execution.MethodInvocation.proceed(MethodInvocation.java:60)
at org.junit.jupiter.engine.execution.InvocationInterceptorChain$ValidatingInvocation.proceed(InvocationInterceptorChain.java:131)
at org.junit.jupiter.engine.extension.TimeoutExtension.intercept(TimeoutExtension.java:149)
at org.junit.jupiter.engine.extension.TimeoutExtension.interceptTestableMethod(TimeoutExtension.java:140)
at org.junit.jupiter.engine.extension.TimeoutExtension.interceptTestMethod(TimeoutExtension.java:84)
at org.junit.jupiter.engine.execution.ExecutableInvoker$ReflectiveInterceptorCall.lambda$ofVoidMethod$0(ExecutableInvoker.java:115)
at org.junit.jupiter.engine.execution.ExecutableInvoker.lambda$invoke$0(ExecutableInvoker.java:105)
at org.junit.jupiter.engine.execution.InvocationInterceptorChain$InterceptedInvocation.proceed(InvocationInterceptorChain.java:106)
at org.junit.jupiter.engine.execution.InvocationInterceptorChain.proceed(InvocationInterceptorChain.java:64)
at org.junit.jupiter.engine.execution.InvocationInterceptorChain.chainAndInvoke(InvocationInterceptorChain.java:45)
at org.junit.jupiter.engine.execution.InvocationInterceptorChain.invoke(InvocationInterceptorChain.java:37)
at org.junit.jupiter.engine.execution.ExecutableInvoker.invoke(ExecutableInvoker.java:104)
at org.junit.jupiter.engine.execution.ExecutableInvoker.invoke(ExecutableInvoker.java:98)
at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.lambda$invokeTestMethod$6(TestMethodTestDescriptor.java:210)
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.invokeTestMethod(TestMethodTestDescriptor.java:206)
at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.execute(TestMethodTestDescriptor.java:131)
at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.execute(TestMethodTestDescriptor.java:65)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$5(NodeTestTask.java:139)
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$7(NodeTestTask.java:129)
at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:127)
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:126)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:84)
at org.junit.platform.engine.support.hierarchical.ForkJoinPoolHierarchicalTestExecutorService$ExclusiveTask.compute(ForkJoinPoolHierarchicalTestExecutorService.java:185)
at java.util.concurrent.RecursiveAction.exec(RecursiveAction.java:189)
at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289)
at java.util.concurrent.ForkJoinTask.doJoin(ForkJoinTask.java:389)
at java.util.concurrent.ForkJoinTask.join(ForkJoinTask.java:719)
at org.junit.platform.engine.support.hierarchical.ForkJoinPoolHierarchicalTestExecutorService.joinConcurrentTasksInReverseOrderToEnableWorkStealing(ForkJoinPoolHierarchicalTestExecutorService.java:162)
at org.junit.platform.engine.support.hierarchical.ForkJoinPoolHierarchicalTestExecutorService.invokeAll(ForkJoinPoolHierarchicalTestExecutorService.java:136)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$5(NodeTestTask.java:143)
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$7(NodeTestTask.java:129)
at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:127)
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:126)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:84)
at org.junit.platform.engine.support.hierarchical.ForkJoinPoolHierarchicalTestExecutorService$ExclusiveTask.compute(ForkJoinPoolHierarchicalTestExecutorService.java:185)
at java.util.concurrent.RecursiveAction.exec(RecursiveAction.java:189)
at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289)
at java.util.concurrent.ForkJoinTask.doJoin(ForkJoinTask.java:389)
at java.util.concurrent.ForkJoinTask.join(ForkJoinTask.java:719)
at org.junit.platform.engine.support.hierarchical.ForkJoinPoolHierarchicalTestExecutorService.joinConcurrentTasksInReverseOrderToEnableWorkStealing(ForkJoinPoolHierarchicalTestExecutorService.java:162)
at org.junit.platform.engine.support.hierarchical.ForkJoinPoolHierarchicalTestExecutorService.invokeAll(ForkJoinPoolHierarchicalTestExecutorService.java:136)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$5(NodeTestTask.java:143)
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$7(NodeTestTask.java:129)
at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:127)
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:126)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:84)
at org.junit.platform.engine.support.hierarchical.ForkJoinPoolHierarchicalTestExecutorService$ExclusiveTask.compute(ForkJoinPoolHierarchicalTestExecutorService.java:185)
at java.util.concurrent.RecursiveAction.exec(RecursiveAction.java:189)
at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289)
at java.util.concurrent.ForkJoinTask.doJoin(ForkJoinTask.java:389)
at java.util.concurrent.ForkJoinTask.join(ForkJoinTask.java:719)
at org.junit.platform.engine.support.hierarchical.ForkJoinPoolHierarchicalTestExecutorService.joinConcurrentTasksInReverseOrderToEnableWorkStealing(ForkJoinPoolHierarchicalTestExecutorService.java:162)
at org.junit.platform.engine.support.hierarchical.ForkJoinPoolHierarchicalTestExecutorService.invokeAll(ForkJoinPoolHierarchicalTestExecutorService.java:136)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$5(NodeTestTask.java:143)
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$7(NodeTestTask.java:129)
at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:127)
at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:126)
at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:84)
at org.junit.platform.engine.support.hierarchical.ForkJoinPoolHierarchicalTestExecutorService$ExclusiveTask.compute(ForkJoinPoolHierarchicalTestExecutorService.java:185)
at java.util.concurrent.RecursiveAction.exec(RecursiveAction.java:189)
at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289)
at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1056)
at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1692)
at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:157)
Caused by: java.lang.RuntimeException: While resolving call R?C|/build2|(<L> = build2@fun R|TestInterface<Stub: TypeVariable(R2)>|.<anonymous>(): R|kotlin/Unit| <inline=Unknown> {
this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.emit: R|kotlin/Unit|>|(Int(1))
R|/intersect|<R|it(Stub: TypeVariable(R1) & Stub: TypeVariable(R2))|>(vararg(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.getIn: R|In<Stub: TypeVariable(R1)>|>|(), this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.getIn: R|In<Stub: TypeVariable(R2)>|>|()))
R|/intersect|<R|it(Stub: TypeVariable(R2) & Stub: TypeVariable(R1))|>(vararg(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.getIn: R|In<Stub: TypeVariable(R2)>|>|(), Q|Test|.R|/Test.foo|<R|ft<In<Stub: TypeVariable(R1)>, In<Stub: TypeVariable(R1)>?>|>(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.getIn: R|In<Stub: TypeVariable(R1)>|>|())))
R|/intersect|<R|it(Stub: TypeVariable(R1) & Stub: TypeVariable(R2))|>(vararg(Q|Test|.R|/Test.foo|<R|ft<In<Stub: TypeVariable(R1)>, In<Stub: TypeVariable(R1)>?>|>(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.getIn: R|In<Stub: TypeVariable(R1)>|>|()), Q|Test|.R|/Test.foo|<R|ft<In<Stub: TypeVariable(R2)>, In<Stub: TypeVariable(R2)>?>|>(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.getIn: R|In<Stub: TypeVariable(R2)>|>|())))
R|/intersect|<R|it(Stub: TypeVariable(R2) & Stub: TypeVariable(R1))|>(vararg(Q|Test|.R|/Test.foo|<R|ft<In<Stub: TypeVariable(R2)>, In<Stub: TypeVariable(R2)>?>|>(this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.getIn: R|In<Stub: TypeVariable(R2)>|>|()), this@R|special/anonymous|.R|SubstitutionOverride</TestInterface.getIn: R|In<Stub: TypeVariable(R1)>|>|()))
String()
}
)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirExpressionsResolveTransformer.transformFunctionCall(FirExpressionsResolveTransformer.kt:298)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformFunctionCall(FirBodyResolveTransformer.kt:107)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformFunctionCall(FirBodyResolveTransformer.kt:27)
at org.jetbrains.kotlin.fir.expressions.FirFunctionCall.transform(FirFunctionCall.kt:37)
at org.jetbrains.kotlin.fir.expressions.FirExpressionUtilKt.transformStatementsIndexed(FirExpressionUtil.kt:134)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirExpressionsResolveTransformer.transformBlockInCurrentScope$resolve(FirExpressionsResolveTransformer.kt:323)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirExpressionsResolveTransformer.transformBlock(FirExpressionsResolveTransformer.kt:314)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformBlock(FirBodyResolveTransformer.kt:122)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformBlock(FirBodyResolveTransformer.kt:27)
at org.jetbrains.kotlin.fir.expressions.FirBlock.transform(FirBlock.kt:28)
at org.jetbrains.kotlin.fir.declarations.impl.FirAnonymousFunctionImpl.transformBody(FirAnonymousFunctionImpl.kt:102)
at org.jetbrains.kotlin.fir.declarations.impl.FirAnonymousFunctionImpl.transformChildren(FirAnonymousFunctionImpl.kt:74)
at org.jetbrains.kotlin.fir.declarations.impl.FirAnonymousFunctionImpl.transformChildren(FirAnonymousFunctionImpl.kt:31)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformElement(FirBodyResolveTransformer.kt:60)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformDeclarationContent(FirBodyResolveTransformer.kt:244)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer.transformDeclarationContent(FirDeclarationsResolveTransformer.kt:69)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer.transformFunction(FirDeclarationsResolveTransformer.kt:527)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer.transformAnonymousFunctionWithLambdaResolution(FirDeclarationsResolveTransformer.kt:430)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer.access$transformAnonymousFunctionWithLambdaResolution(FirDeclarationsResolveTransformer.kt:41)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer$transformAnonymousFunction$3.invoke(FirDeclarationsResolveTransformer.kt:638)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer$transformAnonymousFunction$3.invoke(FirDeclarationsResolveTransformer.kt:636)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.BodyResolveContext.withAnonymousFunction(BodyResolveContext.kt:946)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirDeclarationsResolveTransformer.transformAnonymousFunction(FirDeclarationsResolveTransformer.kt:636)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformAnonymousFunction(FirBodyResolveTransformer.kt:306)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirBodyResolveTransformer.transformAnonymousFunction(FirBodyResolveTransformer.kt:27)
at org.jetbrains.kotlin.fir.declarations.FirAnonymousFunction.transform(FirAnonymousFunction.kt:50)
at org.jetbrains.kotlin.fir.visitors.FirTransformerUtilKt.transformSingle(FirTransformerUtil.kt:12)
at org.jetbrains.kotlin.fir.resolve.inference.FirCallCompleter$LambdaAnalyzerImpl.analyzeAndGetLambdaReturnArguments(FirCallCompleter.kt:239)
at org.jetbrains.kotlin.fir.resolve.inference.PostponedArgumentsAnalyzer.analyzeLambda(PostponedArgumentsAnalyzer.kt:131)
at org.jetbrains.kotlin.fir.resolve.inference.PostponedArgumentsAnalyzer.analyze(PostponedArgumentsAnalyzer.kt:59)
at org.jetbrains.kotlin.fir.resolve.inference.FirCallCompleter$runCompletionForCall$1.invoke(FirCallCompleter.kt:125)
at org.jetbrains.kotlin.fir.resolve.inference.FirCallCompleter$runCompletionForCall$1.invoke(FirCallCompleter.kt:124)
at org.jetbrains.kotlin.fir.resolve.inference.ConstraintSystemCompleter.analyzeArgumentWithFixedParameterTypes(ConstraintSystemCompleter.kt:131)
at org.jetbrains.kotlin.fir.resolve.inference.ConstraintSystemCompleter.complete(ConstraintSystemCompleter.kt:48)
at org.jetbrains.kotlin.fir.resolve.inference.ConstraintSystemCompleter.complete$default(ConstraintSystemCompleter.kt:31)
at org.jetbrains.kotlin.fir.resolve.inference.FirCallCompleter.runCompletionForCall(FirCallCompleter.kt:118)
at org.jetbrains.kotlin.fir.resolve.inference.FirCallCompleter.completeCall(FirCallCompleter.kt:80)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirExpressionsResolveTransformer.transformFunctionCall(FirExpressionsResolveTransformer.kt:296)
... 139 more
Caused by: java.lang.IllegalStateException: Expected some types
at org.jetbrains.kotlin.fir.types.ConeTypeIntersector.intersectTypes(ConeTypeIntersector.kt:18)
at org.jetbrains.kotlin.fir.types.ConeTypeContext$DefaultImpls.intersectTypes(ConeTypeContext.kt:395)
at org.jetbrains.kotlin.fir.types.ConeInferenceContext$DefaultImpls.intersectTypes(ConeInferenceContext.kt:29)
at org.jetbrains.kotlin.fir.resolve.inference.InferenceComponents$ctx$1.intersectTypes(InferenceComponents.kt:16)
at org.jetbrains.kotlin.resolve.calls.inference.model.NewConstraintSystemImpl.intersectTypes(NewConstraintSystemImpl.kt)
at org.jetbrains.kotlin.resolve.calls.NewCommonSuperTypeCalculator.findSuperTypeConstructorsAndIntersectResult(NewCommonSuperTypeCalculator.kt:231)
at org.jetbrains.kotlin.resolve.calls.NewCommonSuperTypeCalculator.commonSuperTypeForNotNullTypes(NewCommonSuperTypeCalculator.kt:203)
at org.jetbrains.kotlin.resolve.calls.NewCommonSuperTypeCalculator.commonSuperTypeForSimpleTypes(NewCommonSuperTypeCalculator.kt:93)
at org.jetbrains.kotlin.resolve.calls.NewCommonSuperTypeCalculator.commonSuperType(NewCommonSuperTypeCalculator.kt:53)
at org.jetbrains.kotlin.resolve.calls.NewCommonSuperTypeCalculator.commonSuperType(NewCommonSuperTypeCalculator.kt:18)
at org.jetbrains.kotlin.resolve.calls.inference.components.ResultTypeResolver.computeCommonSuperType(ResultTypeResolver.kt:175)
at org.jetbrains.kotlin.resolve.calls.inference.components.ResultTypeResolver.findSubType(ResultTypeResolver.kt:135)
at org.jetbrains.kotlin.resolve.calls.inference.components.ResultTypeResolver.findResultTypeOrNull(ResultTypeResolver.kt:42)
at org.jetbrains.kotlin.resolve.calls.inference.components.ResultTypeResolver.findResultType(ResultTypeResolver.kt:27)
at org.jetbrains.kotlin.fir.resolve.inference.ConstraintSystemCompleter.fixVariable(ConstraintSystemCompleter.kt:322)
at org.jetbrains.kotlin.fir.resolve.inference.ConstraintSystemCompleter.fixVariablesOrReportNotEnoughInformation(ConstraintSystemCompleter.kt:219)
at org.jetbrains.kotlin.fir.resolve.inference.ConstraintSystemCompleter.complete(ConstraintSystemCompleter.kt:108)
at org.jetbrains.kotlin.fir.resolve.inference.FirBuilderInferenceSession.inferPostponedVariables(FirBuilderInferenceSession.kt:121)
at org.jetbrains.kotlin.fir.resolve.inference.PostponedArgumentsAnalyzer.applyResultsOfAnalyzedLambdaToCandidateSystem(PostponedArgumentsAnalyzer.kt:154)
at org.jetbrains.kotlin.fir.resolve.inference.PostponedArgumentsAnalyzer.analyzeLambda(PostponedArgumentsAnalyzer.kt:138)
at org.jetbrains.kotlin.fir.resolve.inference.PostponedArgumentsAnalyzer.analyze(PostponedArgumentsAnalyzer.kt:59)
at org.jetbrains.kotlin.fir.resolve.inference.FirCallCompleter$runCompletionForCall$1.invoke(FirCallCompleter.kt:125)
at org.jetbrains.kotlin.fir.resolve.inference.FirCallCompleter$runCompletionForCall$1.invoke(FirCallCompleter.kt:124)
at org.jetbrains.kotlin.fir.resolve.inference.ConstraintSystemCompleter.analyzeArgumentWithFixedParameterTypes(ConstraintSystemCompleter.kt:131)
at org.jetbrains.kotlin.fir.resolve.inference.ConstraintSystemCompleter.complete(ConstraintSystemCompleter.kt:48)
at org.jetbrains.kotlin.fir.resolve.inference.ConstraintSystemCompleter.complete$default(ConstraintSystemCompleter.kt:31)
at org.jetbrains.kotlin.fir.resolve.inference.FirCallCompleter.runCompletionForCall(FirCallCompleter.kt:118)
at org.jetbrains.kotlin.fir.resolve.inference.FirCallCompleter.completeCall(FirCallCompleter.kt:80)
at org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.FirExpressionsResolveTransformer.transformFunctionCall(FirExpressionsResolveTransformer.kt:296)
... 176 more
@@ -24,7 +24,7 @@ fun test() {
get()?.test2()
get().test2()
get()?.hashCode()
get()?.equals(1)
get()?.<!NONE_APPLICABLE!>equals<!>(1)
// there is `String?.equals` extension
get().equals("")
}
@@ -35,10 +35,10 @@ fun test() {
get()?.test2()
get().test2()
get()?.hashCode()
get()?.equals(1)
get()?.<!NONE_APPLICABLE!>equals<!>(1)
val x = get()
x?.hashCode()
x?.equals(1)
x<!UNNECESSARY_SAFE_CALL!>?.<!>hashCode()
x<!UNNECESSARY_SAFE_CALL!>?.<!><!NONE_APPLICABLE!>equals<!>(1)
x.equals("")
}
val ret3 = build {
@@ -48,22 +48,22 @@ fun test() {
get()?.test2()
get().test2()
get()?.hashCode()
get()?.equals(1)
get()?.<!NONE_APPLICABLE!>equals<!>(1)
val x = get()
x?.hashCode()
x?.equals(1)
x<!UNNECESSARY_SAFE_CALL!>?.<!>hashCode()
x<!UNNECESSARY_SAFE_CALL!>?.<!><!NONE_APPLICABLE!>equals<!>(1)
if (get() == null) {}
if (get() === null) {}
if (x != null) {
x?.hashCode()
x?.equals(1)
x<!UNNECESSARY_SAFE_CALL!>?.<!>hashCode()
x<!UNNECESSARY_SAFE_CALL!>?.<!><!NONE_APPLICABLE!>equals<!>(1)
x.equals("")
x.hashCode()
x.toString()
x.test()
x?.test2()
x<!UNNECESSARY_SAFE_CALL!>?.<!>test2()
x.test2()
}
@@ -76,33 +76,33 @@ fun test() {
get()?.test2()
get().test2()
get()?.hashCode()
get()?.equals(1)
get()?.<!NONE_APPLICABLE!>equals<!>(1)
val x = get()
x?.hashCode()
x?.equals(1)
x<!UNNECESSARY_SAFE_CALL!>?.<!>hashCode()
x<!UNNECESSARY_SAFE_CALL!>?.<!><!NONE_APPLICABLE!>equals<!>(1)
if (get() == null) {}
if (get() === null) {}
if (x == null) {
x?.hashCode()
x?.equals(1)
x<!UNNECESSARY_SAFE_CALL!>?.<!>hashCode()
x<!UNNECESSARY_SAFE_CALL!>?.<!><!NONE_APPLICABLE!>equals<!>(1)
x.equals("") // TODO: is it correct?
x.hashCode()
x.toString()
x.test()
x?.test2()
x<!UNNECESSARY_SAFE_CALL!>?.<!>test2()
x.test2()
}
if (x === null) {
x?.hashCode()
x?.equals(1)
x<!UNNECESSARY_SAFE_CALL!>?.<!>hashCode()
x<!UNNECESSARY_SAFE_CALL!>?.<!><!NONE_APPLICABLE!>equals<!>(1)
x.equals("")
x.hashCode()
x.toString()
x.test()
x?.test2()
x<!UNNECESSARY_SAFE_CALL!>?.<!>test2()
x.test2()
}
@@ -115,25 +115,25 @@ fun test() {
get()?.test2()
get().test2()
get()?.hashCode()
get()?.equals(1)
get()?.<!NONE_APPLICABLE!>equals<!>(1)
val x = get()
x?.hashCode()
x?.equals(1)
x<!UNNECESSARY_SAFE_CALL!>?.<!>hashCode()
x<!UNNECESSARY_SAFE_CALL!>?.<!><!NONE_APPLICABLE!>equals<!>(1)
if (get() == null) {}
if (get() === null) {}
if (x == null) {
x?.hashCode()
x?.equals(1)
x<!UNNECESSARY_SAFE_CALL!>?.<!>hashCode()
x<!UNNECESSARY_SAFE_CALL!>?.<!><!NONE_APPLICABLE!>equals<!>(1)
x.equals("")
x.hashCode()
x.toString()
x.test()
x?.test2()
x<!UNNECESSARY_SAFE_CALL!>?.<!>test2()
x.test2()
}
""
}
}
}
@@ -25,38 +25,38 @@ fun <R1 : R2, R2> build4(x: R2, @BuilderInference block: TestInterface<R1>.() ->
fun test(a: String?) {
val ret1 = build {
emit(1)
get()?.equals("")
get()<!UNNECESSARY_SAFE_CALL!>?.<!>equals("")
val x = get()
x?.equals("")
x ?: 1
x!!
x<!UNNECESSARY_SAFE_CALL!>?.<!>equals("")
x <!USELESS_ELVIS!>?: 1<!>
x<!UNNECESSARY_NOT_NULL_ASSERTION!>!!<!>
""
}
val ret2 = build2 {
emit(1)
get()?.equals("")
get()<!UNNECESSARY_SAFE_CALL!>?.<!>equals("")
val x = get()
x?.equals("")
x ?: 1
x!!
x<!UNNECESSARY_SAFE_CALL!>?.<!>equals("")
x <!USELESS_ELVIS!>?: 1<!>
x<!UNNECESSARY_NOT_NULL_ASSERTION!>!!<!>
""
}
val ret3 = build3 {
emit(1)
get()?.equals("")
get()<!UNNECESSARY_SAFE_CALL!>?.<!>equals("")
val x = get()
x?.equals("")
x ?: 1
x!!
x<!UNNECESSARY_SAFE_CALL!>?.<!>equals("")
x <!USELESS_ELVIS!>?: 1<!>
x<!UNNECESSARY_NOT_NULL_ASSERTION!>!!<!>
""
}
val ret4 = build4(1) {
emit(1)
get()?.equals("")
get()<!UNNECESSARY_SAFE_CALL!>?.<!>equals("")
val x = get()
x?.equals("")
x ?: 1
x!!
x<!UNNECESSARY_SAFE_CALL!>?.<!>equals("")
x <!USELESS_ELVIS!>?: 1<!>
x<!UNNECESSARY_NOT_NULL_ASSERTION!>!!<!>
""
}
}
}
@@ -12,6 +12,6 @@ fun foo(a: Any) {}
fun test(b: B, c: C) {
foo(
<!DEBUG_INFO_EXPRESSION_TYPE("A")!>select(b, c)<!>
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Any")!>select(b, c)<!>
)
}
@@ -22,7 +22,7 @@ fun test(nullableSample: ISample, any: Any) {
)
elvisSimple(
<!DEBUG_INFO_EXPRESSION_TYPE("ISample")!>elvisExact(nullableSample, <!TYPE_INFERENCE_CONFLICTING_SUBSTITUTIONS!>materialize<!>())<!>,
<!DEBUG_INFO_EXPRESSION_TYPE("kotlin.Any?")!>elvisExact(nullableSample, materialize())<!>,
any
)
}
@@ -25,7 +25,7 @@ val member = build {
}
val memberWithoutAnn = wrongBuild {
add(42)
add(<!ARGUMENT_TYPE_MISMATCH!>42<!>)
}
val extension = build {
@@ -20,7 +20,7 @@ suspend fun yield() {}
fun test() {
builder {
send(<!ARGUMENT_TYPE_MISMATCH, NEW_INFERENCE_ERROR!>run {
send(<!ARGUMENT_TYPE_MISMATCH{LT}!>run {
yield() // No error but `yield` is not inside "suspension" context actually
}<!>)
}
@@ -84,10 +84,10 @@ fun test() {
with(this) {
yield("")
this@with.<!UNRESOLVED_REFERENCE!>yield<!>("")
this@with.<!UNRESOLVED_REFERENCE{LT}!>yield<!>("")
yield2("")
this@with.<!INAPPLICABLE_CANDIDATE!>yield2<!>("")
this@with.<!INAPPLICABLE_CANDIDATE{LT}!>yield2<!>("")
}
}
}
@@ -12735,36 +12735,16 @@ public class IrJsCodegenBoxES6TestGenerated extends AbstractIrJsCodegenBoxES6Tes
runTest("compiler/testData/codegen/box/inference/builderInference/capturedTypes.kt");
}
@TestMetadata("commonSuperType.kt")
public void testCommonSuperType() throws Exception {
runTest("compiler/testData/codegen/box/inference/builderInference/commonSuperType.kt");
}
@TestMetadata("commonSuperTypeContravariant.kt")
public void testCommonSuperTypeContravariant() throws Exception {
runTest("compiler/testData/codegen/box/inference/builderInference/commonSuperTypeContravariant.kt");
}
@TestMetadata("commonSuperTypeCovariant.kt")
public void testCommonSuperTypeCovariant() throws Exception {
runTest("compiler/testData/codegen/box/inference/builderInference/commonSuperTypeCovariant.kt");
}
@TestMetadata("commonSuperTypeInvariant.kt")
public void testCommonSuperTypeInvariant() throws Exception {
runTest("compiler/testData/codegen/box/inference/builderInference/commonSuperTypeInvariant.kt");
}
@TestMetadata("commonSuperTypeNullable.kt")
public void testCommonSuperTypeNullable() throws Exception {
runTest("compiler/testData/codegen/box/inference/builderInference/commonSuperTypeNullable.kt");
}
@TestMetadata("intersect.kt")
public void testIntersect() throws Exception {
runTest("compiler/testData/codegen/box/inference/builderInference/intersect.kt");
}
@TestMetadata("kt41164.kt")
public void testKt41164() throws Exception {
runTest("compiler/testData/codegen/box/inference/builderInference/kt41164.kt");
@@ -12141,36 +12141,16 @@ public class IrJsCodegenBoxTestGenerated extends AbstractIrJsCodegenBoxTest {
runTest("compiler/testData/codegen/box/inference/builderInference/capturedTypes.kt");
}
@TestMetadata("commonSuperType.kt")
public void testCommonSuperType() throws Exception {
runTest("compiler/testData/codegen/box/inference/builderInference/commonSuperType.kt");
}
@TestMetadata("commonSuperTypeContravariant.kt")
public void testCommonSuperTypeContravariant() throws Exception {
runTest("compiler/testData/codegen/box/inference/builderInference/commonSuperTypeContravariant.kt");
}
@TestMetadata("commonSuperTypeCovariant.kt")
public void testCommonSuperTypeCovariant() throws Exception {
runTest("compiler/testData/codegen/box/inference/builderInference/commonSuperTypeCovariant.kt");
}
@TestMetadata("commonSuperTypeInvariant.kt")
public void testCommonSuperTypeInvariant() throws Exception {
runTest("compiler/testData/codegen/box/inference/builderInference/commonSuperTypeInvariant.kt");
}
@TestMetadata("commonSuperTypeNullable.kt")
public void testCommonSuperTypeNullable() throws Exception {
runTest("compiler/testData/codegen/box/inference/builderInference/commonSuperTypeNullable.kt");
}
@TestMetadata("intersect.kt")
public void testIntersect() throws Exception {
runTest("compiler/testData/codegen/box/inference/builderInference/intersect.kt");
}
@TestMetadata("kt41164.kt")
public void testKt41164() throws Exception {
runTest("compiler/testData/codegen/box/inference/builderInference/kt41164.kt");
@@ -12206,36 +12206,16 @@ public class JsCodegenBoxTestGenerated extends AbstractJsCodegenBoxTest {
runTest("compiler/testData/codegen/box/inference/builderInference/capturedTypes.kt");
}
@TestMetadata("commonSuperType.kt")
public void testCommonSuperType() throws Exception {
runTest("compiler/testData/codegen/box/inference/builderInference/commonSuperType.kt");
}
@TestMetadata("commonSuperTypeContravariant.kt")
public void testCommonSuperTypeContravariant() throws Exception {
runTest("compiler/testData/codegen/box/inference/builderInference/commonSuperTypeContravariant.kt");
}
@TestMetadata("commonSuperTypeCovariant.kt")
public void testCommonSuperTypeCovariant() throws Exception {
runTest("compiler/testData/codegen/box/inference/builderInference/commonSuperTypeCovariant.kt");
}
@TestMetadata("commonSuperTypeInvariant.kt")
public void testCommonSuperTypeInvariant() throws Exception {
runTest("compiler/testData/codegen/box/inference/builderInference/commonSuperTypeInvariant.kt");
}
@TestMetadata("commonSuperTypeNullable.kt")
public void testCommonSuperTypeNullable() throws Exception {
runTest("compiler/testData/codegen/box/inference/builderInference/commonSuperTypeNullable.kt");
}
@TestMetadata("intersect.kt")
public void testIntersect() throws Exception {
runTest("compiler/testData/codegen/box/inference/builderInference/intersect.kt");
}
@TestMetadata("kt41164.kt")
public void testKt41164() throws Exception {
runTest("compiler/testData/codegen/box/inference/builderInference/kt41164.kt");
@@ -6491,90 +6491,10 @@ public class IrCodegenBoxWasmTestGenerated extends AbstractIrCodegenBoxWasmTest
KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("compiler/testData/codegen/box/inference/builderInference"), Pattern.compile("^([^_](.+))\\.kt$"), null, TargetBackend.WASM, true);
}
@TestMetadata("capturedTypes.kt")
public void testCapturedTypes() throws Exception {
runTest("compiler/testData/codegen/box/inference/builderInference/capturedTypes.kt");
}
@TestMetadata("commonSuperType.kt")
public void testCommonSuperType() throws Exception {
runTest("compiler/testData/codegen/box/inference/builderInference/commonSuperType.kt");
}
@TestMetadata("commonSuperTypeContravariant.kt")
public void testCommonSuperTypeContravariant() throws Exception {
runTest("compiler/testData/codegen/box/inference/builderInference/commonSuperTypeContravariant.kt");
}
@TestMetadata("commonSuperTypeCovariant.kt")
public void testCommonSuperTypeCovariant() throws Exception {
runTest("compiler/testData/codegen/box/inference/builderInference/commonSuperTypeCovariant.kt");
}
@TestMetadata("commonSuperTypeInvariant.kt")
public void testCommonSuperTypeInvariant() throws Exception {
runTest("compiler/testData/codegen/box/inference/builderInference/commonSuperTypeInvariant.kt");
}
@TestMetadata("commonSuperTypeNullable.kt")
public void testCommonSuperTypeNullable() throws Exception {
runTest("compiler/testData/codegen/box/inference/builderInference/commonSuperTypeNullable.kt");
}
@TestMetadata("intersect.kt")
public void testIntersect() throws Exception {
runTest("compiler/testData/codegen/box/inference/builderInference/intersect.kt");
}
@TestMetadata("kt41164.kt")
public void testKt41164() throws Exception {
runTest("compiler/testData/codegen/box/inference/builderInference/kt41164.kt");
}
@TestMetadata("labaledCall.kt")
public void testLabaledCall() throws Exception {
runTest("compiler/testData/codegen/box/inference/builderInference/labaledCall.kt");
}
@TestMetadata("lackOfNullCheckOnNullableInsideBuild.kt")
public void testLackOfNullCheckOnNullableInsideBuild() throws Exception {
runTest("compiler/testData/codegen/box/inference/builderInference/lackOfNullCheckOnNullableInsideBuild.kt");
}
@TestMetadata("memberScope.kt")
public void testMemberScope() throws Exception {
runTest("compiler/testData/codegen/box/inference/builderInference/memberScope.kt");
}
@TestMetadata("nullability.kt")
public void testNullability() throws Exception {
runTest("compiler/testData/codegen/box/inference/builderInference/nullability.kt");
}
@TestMetadata("propagateInferenceSessionIntoDeclarationAnalyzers.kt")
public void testPropagateInferenceSessionIntoDeclarationAnalyzers() throws Exception {
runTest("compiler/testData/codegen/box/inference/builderInference/propagateInferenceSessionIntoDeclarationAnalyzers.kt");
}
@TestMetadata("specialCallsWithCallableReferencesDontCareTypeInBlockExression.kt")
public void testSpecialCallsWithCallableReferencesDontCareTypeInBlockExression() throws Exception {
runTest("compiler/testData/codegen/box/inference/builderInference/specialCallsWithCallableReferencesDontCareTypeInBlockExression.kt");
}
@TestMetadata("specialCallsWithCallableReferencesDontRewriteAtSlice.kt")
public void testSpecialCallsWithCallableReferencesDontRewriteAtSlice() throws Exception {
runTest("compiler/testData/codegen/box/inference/builderInference/specialCallsWithCallableReferencesDontRewriteAtSlice.kt");
}
@TestMetadata("substituteStubTypeIntolambdaParameterDescriptor.kt")
public void testSubstituteStubTypeIntolambdaParameterDescriptor() throws Exception {
runTest("compiler/testData/codegen/box/inference/builderInference/substituteStubTypeIntolambdaParameterDescriptor.kt");
}
@TestMetadata("withExpectedType.kt")
public void testWithExpectedType() throws Exception {
runTest("compiler/testData/codegen/box/inference/builderInference/withExpectedType.kt");
}
}
}
@@ -7,9 +7,9 @@ UFile (package = ) [public final class InnerNonFixedTypeVariableKt {...]
UQualifiedReferenceExpression [list.filterIsInstance().<anonymous class>(mutableSetOf(), { ...})] : PsiType:<ErrorType>
UQualifiedReferenceExpression [list.filterIsInstance()]
USimpleNameReferenceExpression (identifier = list) [list] : PsiType:List<? extends Object>
UCallExpression (kind = UastCallKind(name='method_call'), argCount = 0)) [filterIsInstance()]
UCallExpression (kind = UastCallKind(name='method_call'), argCount = 0)) [filterIsInstance()] : PsiType:List<? extends NonExistentClass>
UIdentifier (Identifier (filterIsInstance)) [UIdentifier (Identifier (filterIsInstance))]
USimpleNameReferenceExpression (identifier = filterIsInstance, resolvesTo = null) [filterIsInstance]
USimpleNameReferenceExpression (identifier = filterIsInstance, resolvesTo = null) [filterIsInstance] : PsiType:List<? extends NonExistentClass>
UCallExpression (kind = UastCallKind(name='method_call'), argCount = 2)) [<anonymous class>(mutableSetOf(), { ...})] : PsiType:<ErrorType>
UIdentifier (Identifier (mapTo)) [UIdentifier (Identifier (mapTo))]
USimpleNameReferenceExpression (identifier = <anonymous class>, resolvesTo = null) [<anonymous class>] : PsiType:<ErrorType>
@@ -340,7 +340,7 @@ class KotlinUastResolveApiTest : KotlinLightCodeInsightFixtureTestCase() {
val uFile = myFixture.file.toUElement()!!
TestCase.assertEquals(
"PsiType:List<?>",
"PsiType:void",
uFile.findElementByTextFromPsi<UExpression>("arr[0]").getExpressionType().toString()
)
TestCase.assertEquals(