diff --git a/compiler/resolution/src/org/jetbrains/kotlin/resolve/calls/NewCommonSuperTypeCalculator.kt b/compiler/resolution/src/org/jetbrains/kotlin/resolve/calls/NewCommonSuperTypeCalculator.kt index 0b122fb645d..b93355bf582 100644 --- a/compiler/resolution/src/org/jetbrains/kotlin/resolve/calls/NewCommonSuperTypeCalculator.kt +++ b/compiler/resolution/src/org/jetbrains/kotlin/resolve/calls/NewCommonSuperTypeCalculator.kt @@ -347,7 +347,7 @@ object NewCommonSuperTypeCalculator { arguments: List, depth: Int ): TypeArgumentMarker { - if (depth > 3) { + if (depth >= 0) { return createStarProjection(parameter) } diff --git a/compiler/tests-spec/testData/diagnostics/notLinked/dfa/pos/15.kt b/compiler/tests-spec/testData/diagnostics/notLinked/dfa/pos/15.kt index 58dac5d0d7d..73be68723a3 100644 --- a/compiler/tests-spec/testData/diagnostics/notLinked/dfa/pos/15.kt +++ b/compiler/tests-spec/testData/diagnostics/notLinked/dfa/pos/15.kt @@ -45,8 +45,8 @@ fun case_2() { val x = select(Case2_1(), Case2_2(), null) if (x != null) { - }>}>}>}>} & {Interface3? & InterfaceWithTypeParameter1}>}>}>}>?}")!>x - }>}>}>}>} & {Interface3? & InterfaceWithTypeParameter1}>}>}>}>?}")!>x.ip1test1() + }>} & {Interface3 & InterfaceWithTypeParameter1}>}?")!>x + }>} & {Interface3 & InterfaceWithTypeParameter1}>}?")!>x.ip1test1() } } @@ -58,9 +58,9 @@ fun case_3() { val x = select(Case3_1(), Case3_2(), null) if (x != null) { - & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}>}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}>}>}>} & {Interface3? & InterfaceWithTypeParameter1 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}>}>}>? & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}>}>}>?}")!>x - & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}>}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}>}>}>} & {Interface3? & InterfaceWithTypeParameter1 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}>}>}>? & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}>}>}>?}")!>x.ip1test1() - & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}>}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}>}>}>} & {Interface3? & InterfaceWithTypeParameter1 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}>}>}>? & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}>}>}>?}")!>x.ip1test2() + & InterfaceWithTypeParameter2<*>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2<*>}>} & {Interface3 & InterfaceWithTypeParameter1 & InterfaceWithTypeParameter2<*>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2<*>}>}?")!>x + & InterfaceWithTypeParameter2<*>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2<*>}>} & {Interface3 & InterfaceWithTypeParameter1 & InterfaceWithTypeParameter2<*>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2<*>}>}?")!>x.ip1test1() + & InterfaceWithTypeParameter2<*>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2<*>}>} & {Interface3 & InterfaceWithTypeParameter1 & InterfaceWithTypeParameter2<*>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2<*>}>}?")!>x.ip1test2() } } @@ -72,9 +72,9 @@ fun case_4() { val x = select(Case4_1(), Case4_2(), null) if (x != null) { - & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}>}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}>}>}>} & {InterfaceWithTypeParameter1 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}>}>}>? & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}>}>}>?}")!>x - & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}>}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}>}>}>} & {InterfaceWithTypeParameter1 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}>}>}>? & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}>}>}>?}")!>x.ip1test1() - & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}>}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}>}>}>} & {InterfaceWithTypeParameter1 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}>}>}>? & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>}>}>}>?}")!>x.ip1test2() + & InterfaceWithTypeParameter2<*>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2<*>}>} & {InterfaceWithTypeParameter1 & InterfaceWithTypeParameter2<*>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2<*>}>}?")!>x + & InterfaceWithTypeParameter2<*>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2<*>}>} & {InterfaceWithTypeParameter1 & InterfaceWithTypeParameter2<*>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2<*>}>}?")!>x.ip1test1() + & InterfaceWithTypeParameter2<*>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2<*>}>} & {InterfaceWithTypeParameter1 & InterfaceWithTypeParameter2<*>}> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2<*>}>}?")!>x.ip1test2() } } @@ -100,9 +100,9 @@ fun case_6() { val x = select(Case6_1(), Case6_2(), null) if (x != null) { - & Number}>> & InterfaceWithTypeParameter2 & Number}>> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>>}>>} & {InterfaceWithTypeParameter1 & Number}>>? & InterfaceWithTypeParameter2 & Number}>> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>>}>>?}")!>x - & Number}>> & InterfaceWithTypeParameter2 & Number}>> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>>}>>} & {InterfaceWithTypeParameter1 & Number}>>? & InterfaceWithTypeParameter2 & Number}>> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>>}>>?}")!>x.ip1test1() - & Number}>> & InterfaceWithTypeParameter2 & Number}>> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>>}>>} & {InterfaceWithTypeParameter1 & Number}>>? & InterfaceWithTypeParameter2 & Number}>> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2}>>}>>?}")!>x.ip1test2() + & Number}>> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2<*>}>>} & {InterfaceWithTypeParameter1 & Number}>> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2<*>}>>}?")!>x + & Number}>> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2<*>}>>} & {InterfaceWithTypeParameter1 & Number}>> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2<*>}>>}?")!>x.ip1test1() + & Number}>> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2<*>}>>} & {InterfaceWithTypeParameter1 & Number}>> & InterfaceWithTypeParameter2 & InterfaceWithTypeParameter2<*>}>>}?")!>x.ip1test2() } } @@ -185,15 +185,15 @@ fun case_10() = run { val x = select(object : Case10_1() {}, object : Case10_2() {}, null) if (x != null) { - }>}>}>}>} & {Interface3? & InterfaceWithOutParameter<{Interface3 & InterfaceWithOutParameter<{Interface3 & InterfaceWithOutParameter<{Interface3 & InterfaceWithOutParameter<{Interface3 & InterfaceWithOutParameter}>}>}>}>?}")!>x - }>}>}>}>} & {Interface3? & InterfaceWithOutParameter<{Interface3 & InterfaceWithOutParameter<{Interface3 & InterfaceWithOutParameter<{Interface3 & InterfaceWithOutParameter<{Interface3 & InterfaceWithOutParameter}>}>}>}>?}"), DEBUG_INFO_SMARTCAST!>x.equals(null) - }>}>}>}>} & {Interface3? & InterfaceWithOutParameter<{Interface3 & InterfaceWithOutParameter<{Interface3 & InterfaceWithOutParameter<{Interface3 & InterfaceWithOutParameter<{Interface3 & InterfaceWithOutParameter}>}>}>}>?}"), DEBUG_INFO_SMARTCAST!>x.propT - }>}>}>}>} & {Interface3? & InterfaceWithOutParameter<{Interface3 & InterfaceWithOutParameter<{Interface3 & InterfaceWithOutParameter<{Interface3 & InterfaceWithOutParameter<{Interface3 & InterfaceWithOutParameter}>}>}>}>?}"), DEBUG_INFO_SMARTCAST!>x.propAny - }>}>}>}>} & {Interface3? & InterfaceWithOutParameter<{Interface3 & InterfaceWithOutParameter<{Interface3 & InterfaceWithOutParameter<{Interface3 & InterfaceWithOutParameter<{Interface3 & InterfaceWithOutParameter}>}>}>}>?}")!>x.propNullableT - }>}>}>}>} & {Interface3? & InterfaceWithOutParameter<{Interface3 & InterfaceWithOutParameter<{Interface3 & InterfaceWithOutParameter<{Interface3 & InterfaceWithOutParameter<{Interface3 & InterfaceWithOutParameter}>}>}>}>?}")!>x.propNullableAny - }>}>}>}>} & {Interface3? & InterfaceWithOutParameter<{Interface3 & InterfaceWithOutParameter<{Interface3 & InterfaceWithOutParameter<{Interface3 & InterfaceWithOutParameter<{Interface3 & InterfaceWithOutParameter}>}>}>}>?}"), DEBUG_INFO_SMARTCAST!>x.funT() - }>}>}>}>} & {Interface3? & InterfaceWithOutParameter<{Interface3 & InterfaceWithOutParameter<{Interface3 & InterfaceWithOutParameter<{Interface3 & InterfaceWithOutParameter<{Interface3 & InterfaceWithOutParameter}>}>}>}>?}"), DEBUG_INFO_SMARTCAST!>x.funAny() - }>}>}>}>} & {Interface3? & InterfaceWithOutParameter<{Interface3 & InterfaceWithOutParameter<{Interface3 & InterfaceWithOutParameter<{Interface3 & InterfaceWithOutParameter<{Interface3 & InterfaceWithOutParameter}>}>}>}>?}")!>x.funNullableT() - }>}>}>}>} & {Interface3? & InterfaceWithOutParameter<{Interface3 & InterfaceWithOutParameter<{Interface3 & InterfaceWithOutParameter<{Interface3 & InterfaceWithOutParameter<{Interface3 & InterfaceWithOutParameter}>}>}>}>?}")!>x.funNullableAny() + }>} & {Interface3 & InterfaceWithOutParameter<{Interface3 & InterfaceWithOutParameter<*>}>}?")!>x + }>} & {Interface3 & InterfaceWithOutParameter<{Interface3 & InterfaceWithOutParameter<*>}>}?"), DEBUG_INFO_SMARTCAST!>x.equals(null) + }>} & {Interface3 & InterfaceWithOutParameter<{Interface3 & InterfaceWithOutParameter<*>}>}?"), DEBUG_INFO_SMARTCAST!>x.propT + }>} & {Interface3 & InterfaceWithOutParameter<{Interface3 & InterfaceWithOutParameter<*>}>}?"), DEBUG_INFO_SMARTCAST!>x.propAny + }>} & {Interface3 & InterfaceWithOutParameter<{Interface3 & InterfaceWithOutParameter<*>}>}?")!>x.propNullableT + }>} & {Interface3 & InterfaceWithOutParameter<{Interface3 & InterfaceWithOutParameter<*>}>}?")!>x.propNullableAny + }>} & {Interface3 & InterfaceWithOutParameter<{Interface3 & InterfaceWithOutParameter<*>}>}?"), DEBUG_INFO_SMARTCAST!>x.funT() + }>} & {Interface3 & InterfaceWithOutParameter<{Interface3 & InterfaceWithOutParameter<*>}>}?"), DEBUG_INFO_SMARTCAST!>x.funAny() + }>} & {Interface3 & InterfaceWithOutParameter<{Interface3 & InterfaceWithOutParameter<*>}>}?")!>x.funNullableT() + }>} & {Interface3 & InterfaceWithOutParameter<{Interface3 & InterfaceWithOutParameter<*>}>}?")!>x.funNullableAny() } }