[Test] Reproduce KT-65333

This commit is contained in:
Dmitriy Novozhilov
2024-02-27 12:33:37 +02:00
committed by Space Team
parent 7f90111283
commit 67557ce731
7 changed files with 166 additions and 0 deletions
@@ -21682,6 +21682,12 @@ public class DiagnosticCompilerTestFE10TestdataTestGenerated extends AbstractDia
runTest("compiler/testData/diagnostics/tests/inner/illegalModifier_lv12.kt");
}
@Test
@TestMetadata("inheritedInnerAndNested.kt")
public void testInheritedInnerAndNested() {
runTest("compiler/testData/diagnostics/tests/inner/inheritedInnerAndNested.kt");
}
@Test
@TestMetadata("innerClassInEnumEntryClassMemberResolve.kt")
public void testInnerClassInEnumEntryClassMemberResolve() {
@@ -21682,6 +21682,12 @@ public class LLFirPreresolvedReversedDiagnosticCompilerFE10TestDataTestGenerated
runTest("compiler/testData/diagnostics/tests/inner/illegalModifier_lv12.kt");
}
@Test
@TestMetadata("inheritedInnerAndNested.kt")
public void testInheritedInnerAndNested() {
runTest("compiler/testData/diagnostics/tests/inner/inheritedInnerAndNested.kt");
}
@Test
@TestMetadata("innerClassInEnumEntryClassMemberResolve.kt")
public void testInnerClassInEnumEntryClassMemberResolve() {
@@ -21676,6 +21676,12 @@ public class FirLightTreeOldFrontendDiagnosticsTestGenerated extends AbstractFir
runTest("compiler/testData/diagnostics/tests/inner/illegalModifier_lv12.kt");
}
@Test
@TestMetadata("inheritedInnerAndNested.kt")
public void testInheritedInnerAndNested() {
runTest("compiler/testData/diagnostics/tests/inner/inheritedInnerAndNested.kt");
}
@Test
@TestMetadata("innerClassInEnumEntryClassMemberResolve.kt")
public void testInnerClassInEnumEntryClassMemberResolve() {
@@ -21682,6 +21682,12 @@ public class FirPsiOldFrontendDiagnosticsTestGenerated extends AbstractFirPsiDia
runTest("compiler/testData/diagnostics/tests/inner/illegalModifier_lv12.kt");
}
@Test
@TestMetadata("inheritedInnerAndNested.kt")
public void testInheritedInnerAndNested() {
runTest("compiler/testData/diagnostics/tests/inner/inheritedInnerAndNested.kt");
}
@Test
@TestMetadata("innerClassInEnumEntryClassMemberResolve.kt")
public void testInnerClassInEnumEntryClassMemberResolve() {
@@ -0,0 +1,68 @@
// DIAGNOSTICS: -DEBUG_INFO_MISSING_UNRESOLVED
// ISSUE: KT-65333
// FILE: BaseClass.java
public class BaseClass {
public class Inner {
public String box() {
return "BaseClass";
}
}
}
// FILE: BaseInterface.java
public interface BaseInterface {
class Inner {
public String box() {
return "BaseInterface";
}
}
}
// FILE: main.kt
class A: BaseClass(), BaseInterface
class B : BaseClass(), BaseInterface {
class Inner {
fun box(): String = "B"
}
}
class C : BaseClass(), BaseInterface {
inner class Inner {
fun box(): String = "C"
}
}
object D : BaseClass(), BaseInterface
object E : BaseClass(), BaseInterface {
class Inner {
fun box(): String = "E"
}
}
object F : BaseClass()
object G : BaseClass() {
class Inner {
fun box(): String = "G"
}
}
object H : BaseInterface
object I : BaseInterface {
class Inner {
fun box(): String = "I"
}
}
fun test() {
A().<!UNRESOLVED_REFERENCE!>Inner<!>().box()
A.<!UNRESOLVED_REFERENCE!>Inner<!>().box() // should be an error
B().<!UNRESOLVED_REFERENCE!>Inner<!>().box() // should be an error
B.Inner().box()
C().Inner().box()
C.<!INNER_CLASS_CONSTRUCTOR_NO_RECEIVER!>Inner<!>().<!UNRESOLVED_REFERENCE!>box<!>() // should be an error
D.<!UNRESOLVED_REFERENCE!>Inner<!>().box()
E.Inner().box()
F.Inner().box()
G.Inner().box()
H.<!UNRESOLVED_REFERENCE!>Inner<!>().box() // should be an error
I.Inner().box()
}
@@ -0,0 +1,68 @@
// DIAGNOSTICS: -DEBUG_INFO_MISSING_UNRESOLVED
// ISSUE: KT-65333
// FILE: BaseClass.java
public class BaseClass {
public class Inner {
public String box() {
return "BaseClass";
}
}
}
// FILE: BaseInterface.java
public interface BaseInterface {
class Inner {
public String box() {
return "BaseInterface";
}
}
}
// FILE: main.kt
class A: BaseClass(), BaseInterface
class B : BaseClass(), BaseInterface {
class Inner {
fun box(): String = "B"
}
}
class C : BaseClass(), BaseInterface {
inner class Inner {
fun box(): String = "C"
}
}
object D : BaseClass(), BaseInterface
object E : BaseClass(), BaseInterface {
class Inner {
fun box(): String = "E"
}
}
object F : BaseClass()
object G : BaseClass() {
class Inner {
fun box(): String = "G"
}
}
object H : BaseInterface
object I : BaseInterface {
class Inner {
fun box(): String = "I"
}
}
fun test() {
A().Inner().box()
A.<!UNRESOLVED_REFERENCE!>Inner<!>().box() // should be an error
B().<!UNRESOLVED_REFERENCE!>Inner<!>().box() // should be an error
B.Inner().box()
C().Inner().box()
C.<!RESOLUTION_TO_CLASSIFIER!>Inner<!>().box() // should be an error
D.Inner().box()
E.Inner().box()
F.Inner().box()
G.Inner().box()
H.<!UNRESOLVED_REFERENCE!>Inner<!>().box() // should be an error
I.Inner().box()
}
@@ -21682,6 +21682,12 @@ public class DiagnosticTestGenerated extends AbstractDiagnosticTest {
runTest("compiler/testData/diagnostics/tests/inner/illegalModifier_lv12.kt");
}
@Test
@TestMetadata("inheritedInnerAndNested.kt")
public void testInheritedInnerAndNested() {
runTest("compiler/testData/diagnostics/tests/inner/inheritedInnerAndNested.kt");
}
@Test
@TestMetadata("innerClassInEnumEntryClassMemberResolve.kt")
public void testInnerClassInEnumEntryClassMemberResolve() {