Fix common super type calculation for captured dynamic types

^KT-32499 Fixed
This commit is contained in:
victor.petukhov
2019-11-25 19:03:43 +03:00
parent 1c4c5520a2
commit dbacae94d0
5 changed files with 73 additions and 1 deletions
@@ -232,6 +232,9 @@ interface TypeSystemContext : TypeSystemOptimizationContext {
fun KotlinTypeMarker.isFlexible(): Boolean = asFlexibleType() != null
fun KotlinTypeMarker.isDynamic(): Boolean = asFlexibleType()?.asDynamicType() != null
fun KotlinTypeMarker.isCapturedDynamic(): Boolean =
asSimpleType()?.asCapturedType()?.typeConstructor()?.projection()?.getType()?.isDynamic() == true
fun KotlinTypeMarker.isDefinitelyNotNullType(): Boolean = asSimpleType()?.asDefinitelyNotNullType() != null
fun KotlinTypeMarker.hasFlexibleNullability() =