[Tests] Add test for #KT-62956

This commit is contained in:
Kirill Rakhman
2023-12-20 10:03:47 +01:00
committed by Space Team
parent 9d91eb2510
commit ec78747f2b
7 changed files with 74 additions and 0 deletions
@@ -18043,6 +18043,12 @@ public class DiagnosticCompilerTestFE10TestdataTestGenerated extends AbstractDia
runTest("compiler/testData/diagnostics/tests/inference/capturedTypes/propagateNullailityOnSupertypesWhenCaptureTypes.kt");
}
@Test
@TestMetadata("selfTypeTypeHole.kt")
public void testSelfTypeTypeHole() throws Exception {
runTest("compiler/testData/diagnostics/tests/inference/capturedTypes/selfTypeTypeHole.kt");
}
@Test
@TestMetadata("starProjectionRegression.kt")
public void testStarProjectionRegression() throws Exception {
@@ -18043,6 +18043,12 @@ public class LLFirPreresolvedReversedDiagnosticCompilerFE10TestDataTestGenerated
runTest("compiler/testData/diagnostics/tests/inference/capturedTypes/propagateNullailityOnSupertypesWhenCaptureTypes.kt");
}
@Test
@TestMetadata("selfTypeTypeHole.kt")
public void testSelfTypeTypeHole() throws Exception {
runTest("compiler/testData/diagnostics/tests/inference/capturedTypes/selfTypeTypeHole.kt");
}
@Test
@TestMetadata("starProjectionRegression.kt")
public void testStarProjectionRegression() throws Exception {
@@ -18037,6 +18037,12 @@ public class FirLightTreeOldFrontendDiagnosticsTestGenerated extends AbstractFir
runTest("compiler/testData/diagnostics/tests/inference/capturedTypes/propagateNullailityOnSupertypesWhenCaptureTypes.kt");
}
@Test
@TestMetadata("selfTypeTypeHole.kt")
public void testSelfTypeTypeHole() throws Exception {
runTest("compiler/testData/diagnostics/tests/inference/capturedTypes/selfTypeTypeHole.kt");
}
@Test
@TestMetadata("starProjectionRegression.kt")
public void testStarProjectionRegression() throws Exception {
@@ -18043,6 +18043,12 @@ public class FirPsiOldFrontendDiagnosticsTestGenerated extends AbstractFirPsiDia
runTest("compiler/testData/diagnostics/tests/inference/capturedTypes/propagateNullailityOnSupertypesWhenCaptureTypes.kt");
}
@Test
@TestMetadata("selfTypeTypeHole.kt")
public void testSelfTypeTypeHole() throws Exception {
runTest("compiler/testData/diagnostics/tests/inference/capturedTypes/selfTypeTypeHole.kt");
}
@Test
@TestMetadata("starProjectionRegression.kt")
public void testStarProjectionRegression() throws Exception {
@@ -0,0 +1,22 @@
// ISSUE: KT-62956
abstract class Builder<S, B : Builder<S, B>>(var s: S) {
fun <T : B> test(x: T): T {
s = x.s
return x
}
}
class BS : Builder<String, BS>("")
class BI : Builder<Int, BI>(1)
fun bar(b: Builder<String, *>, bb: Builder<*, *>) {
b.test<<!UPPER_BOUND_VIOLATED!>Builder<*, *><!>>(<!ARGUMENT_TYPE_MISMATCH!>bb<!>)
}
fun main() {
val b = BS()
bar(b, BI())
b.s.length
}
@@ -0,0 +1,22 @@
// ISSUE: KT-62956
abstract class Builder<S, B : Builder<S, B>>(var s: S) {
fun <T : B> test(x: T): T {
s = x.s
return x
}
}
class BS : Builder<String, BS>("")
class BI : Builder<Int, BI>(1)
fun bar(b: Builder<String, *>, bb: Builder<*, *>) {
b.test<Builder<*, *>>(bb)
}
fun main() {
val b = BS()
bar(b, BI())
b.s.length
}
@@ -18043,6 +18043,12 @@ public class DiagnosticTestGenerated extends AbstractDiagnosticTest {
runTest("compiler/testData/diagnostics/tests/inference/capturedTypes/propagateNullailityOnSupertypesWhenCaptureTypes.kt");
}
@Test
@TestMetadata("selfTypeTypeHole.kt")
public void testSelfTypeTypeHole() throws Exception {
runTest("compiler/testData/diagnostics/tests/inference/capturedTypes/selfTypeTypeHole.kt");
}
@Test
@TestMetadata("starProjectionRegression.kt")
public void testStarProjectionRegression() throws Exception {