[FIR] Fix resolve inside lambda

The lambda is passed to extension function with type parameters
that defined inside this lambda

^KT-52197
^KT-52190 Fixed
This commit is contained in:
Ivan Kochurkin
2022-04-28 13:26:03 +03:00
parent e69250a9fe
commit feb3f41108
15 changed files with 114 additions and 11 deletions
@@ -354,7 +354,9 @@ private inline fun <T : FirExpression> BodyResolveComponents.transformExpression
val originalType = expression.resultType.coneType
val allTypes = typesFromSmartCast.also {
it += originalType
if (originalType !is ConeStubType) {
it += originalType
}
}
val intersectedType = ConeTypeIntersector.intersectTypes(session.typeContext, allTypes)
if (intersectedType == originalType) return null