Inference. Remove chain inference stubs from fixed variables constraints
diff --git a/compiler/resolution.common/src/org/jetbrains/kotlin/resolve/calls/inference/components/VariableFixationFinder.kt b/compiler/resolution.common/src/org/jetbrains/kotlin/resolve/calls/inference/components/VariableFixationFinder.kt
index 44dbc73..b9e30b9 100644
--- a/compiler/resolution.common/src/org/jetbrains/kotlin/resolve/calls/inference/components/VariableFixationFinder.kt
+++ b/compiler/resolution.common/src/org/jetbrains/kotlin/resolve/calls/inference/components/VariableFixationFinder.kt
@@ -207,11 +207,11 @@
}
fun TypeSystemInferenceExtensionContext.containsTypeVariable(type: KotlinTypeMarker, typeVariable: TypeConstructorMarker): Boolean {
- if (type.contains { it.typeConstructor() == typeVariable }) return true
+ if (type.contains { it.typeConstructor().unwrapStubTypeVariableConstructor() == typeVariable }) return true
val typeProjections = extractProjectionsForAllCapturedTypes(type)
return typeProjections.any { typeProjectionsType ->
- typeProjectionsType.contains { it.typeConstructor() == typeVariable }
+ typeProjectionsType.contains { it.typeConstructor().unwrapStubTypeVariableConstructor() == typeVariable }
}
}