Add test for #KT-28598

This commit is contained in:
Dmitriy Novozhilov
2019-02-07 12:10:40 +03:00
parent 6878abe8b4
commit cf25cab773
4 changed files with 100 additions and 0 deletions
@@ -0,0 +1,85 @@
// !WITH_NEW_INFERENCE
// !IDIAGNOSTICS: -UNUSED_EXPRESSION
fun case_1(a: MutableList<out MutableList<MutableList<MutableList<MutableList<MutableList<MutableList<Int?>?>?>?>?>?>?>?) {
if (a != null) {
val b = <!OI;DEBUG_INFO_SMARTCAST!>a<!>[0] // no SMARTCAST diagnostic
if (b != null) {
val c = <!DEBUG_INFO_SMARTCAST!>b<!>[0]
if (c != null) {
val d = <!DEBUG_INFO_SMARTCAST!>c<!>[0]
if (d != null) {
val e = <!DEBUG_INFO_SMARTCAST!>d<!>[0]
if (e != null) {
val f = <!DEBUG_INFO_SMARTCAST!>e<!>[0]
if (f != null) {
val g = <!DEBUG_INFO_SMARTCAST!>f<!>[0]
if (g != null) {
val h = <!DEBUG_INFO_SMARTCAST!>g<!>[0]
if (h != null) {
<!DEBUG_INFO_SMARTCAST!>h<!>.inc()
}
}
}
}
}
}
}
}
}
fun case_2(a: MutableList<out MutableList<MutableList<MutableList<out MutableList<MutableList<MutableList<out Int?>?>?>?>?>?>?>?) {
if (a != null) {
val b = <!OI;DEBUG_INFO_SMARTCAST!>a<!>[0] // no SMARTCAST diagnostic
if (b != null) {
val c = <!DEBUG_INFO_SMARTCAST!>b<!>[0]
if (c != null) {
val d = <!DEBUG_INFO_SMARTCAST!>c<!>[0]
if (d != null) {
val e = <!OI;DEBUG_INFO_SMARTCAST!>d<!>[0] // no SMARTCAST diagnostic
if (e != null) {
val f = <!DEBUG_INFO_SMARTCAST!>e<!>[0]
if (f != null) {
val g = <!DEBUG_INFO_SMARTCAST!>f<!>[0]
if (g != null) {
val h = <!OI;DEBUG_INFO_SMARTCAST!>g<!>[0] // no SMARTCAST diagnostic
if (h != null) {
<!DEBUG_INFO_SMARTCAST!>h<!>.inc()
}
}
}
}
}
}
}
}
}
fun case_3(a: MutableList<MutableList<MutableList<MutableList<MutableList<MutableList<MutableList<Int?>?>?>?>?>?>?>?) {
if (a != null) {
val b = <!DEBUG_INFO_SMARTCAST!>a<!>[0]
if (b != null) {
val c = <!DEBUG_INFO_SMARTCAST!>b<!>[0]
if (c != null) {
val d = <!DEBUG_INFO_SMARTCAST!>c<!>[0]
if (d != null) {
val e = <!DEBUG_INFO_SMARTCAST!>d<!>[0]
if (e != null) {
val f = <!DEBUG_INFO_SMARTCAST!>e<!>[0]
if (f != null) {
val g = <!DEBUG_INFO_SMARTCAST!>f<!>[0]
if (g != null) {
val h = <!DEBUG_INFO_SMARTCAST!>g<!>[0]
if (h != null) {
<!DEBUG_INFO_SMARTCAST!>h<!>.inc()
}
}
}
}
}
}
}
}
}
@@ -0,0 +1,5 @@
package
public fun case_1(/*0*/ a: kotlin.collections.MutableList<out kotlin.collections.MutableList<kotlin.collections.MutableList<kotlin.collections.MutableList<kotlin.collections.MutableList<kotlin.collections.MutableList<kotlin.Int?>?>?>?>?>?>?): kotlin.Unit
public fun case_2(/*0*/ a: kotlin.collections.MutableList<kotlin.collections.MutableList<kotlin.collections.MutableList<kotlin.collections.MutableList<kotlin.collections.MutableList<kotlin.collections.MutableList<kotlin.Int?>?>?>?>?>?>?): kotlin.Unit
public fun case_3(/*0*/ a: kotlin.collections.MutableList<out kotlin.collections.MutableList<kotlin.collections.MutableList<kotlin.collections.MutableList<kotlin.collections.MutableList<kotlin.Int?>?>?>?>?>?): kotlin.Unit
@@ -9485,6 +9485,11 @@ public class DiagnosticsTestGenerated extends AbstractDiagnosticsTest {
runTest("compiler/testData/diagnostics/tests/inference/kt1293.kt");
}
@TestMetadata("kt28598.kt")
public void testKt28598() throws Exception {
runTest("compiler/testData/diagnostics/tests/inference/kt28598.kt");
}
@TestMetadata("kt3184.kt")
public void testKt3184() throws Exception {
runTest("compiler/testData/diagnostics/tests/inference/kt3184.kt");
@@ -9485,6 +9485,11 @@ public class DiagnosticsUsingJavacTestGenerated extends AbstractDiagnosticsUsing
runTest("compiler/testData/diagnostics/tests/inference/kt1293.kt");
}
@TestMetadata("kt28598.kt")
public void testKt28598() throws Exception {
runTest("compiler/testData/diagnostics/tests/inference/kt28598.kt");
}
@TestMetadata("kt3184.kt")
public void testKt3184() throws Exception {
runTest("compiler/testData/diagnostics/tests/inference/kt3184.kt");