[FIR] skip implicit call to enum constructor if super type call exists
otherwise, reference to the super type would be resolved even when it's not e.g. for interface constructor ^ KTIJ-24437
This commit is contained in:
+6
@@ -370,6 +370,12 @@ public class Fe10IdeNormalAnalysisSourceModuleResolveCallTestGenerated extends A
|
||||
runTest("analysis/analysis-api/testData/components/callResolver/resolveCall/enumAsAnnotationValue.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("enumSuperTypeInterface.kt")
|
||||
public void testEnumSuperTypeInterface() throws Exception {
|
||||
runTest("analysis/analysis-api/testData/components/callResolver/resolveCall/enumSuperTypeInterface.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("eqEqCall_fromAny.kt")
|
||||
public void testEqEqCall_fromAny() throws Exception {
|
||||
|
||||
+6
@@ -370,6 +370,12 @@ public class FirIdeNormalAnalysisSourceModuleResolveCallTestGenerated extends Ab
|
||||
runTest("analysis/analysis-api/testData/components/callResolver/resolveCall/enumAsAnnotationValue.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("enumSuperTypeInterface.kt")
|
||||
public void testEnumSuperTypeInterface() throws Exception {
|
||||
runTest("analysis/analysis-api/testData/components/callResolver/resolveCall/enumSuperTypeInterface.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("eqEqCall_fromAny.kt")
|
||||
public void testEqEqCall_fromAny() throws Exception {
|
||||
|
||||
+6
@@ -370,6 +370,12 @@ public class FirStandaloneNormalAnalysisSourceModuleResolveCallTestGenerated ext
|
||||
runTest("analysis/analysis-api/testData/components/callResolver/resolveCall/enumAsAnnotationValue.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("enumSuperTypeInterface.kt")
|
||||
public void testEnumSuperTypeInterface() throws Exception {
|
||||
runTest("analysis/analysis-api/testData/components/callResolver/resolveCall/enumSuperTypeInterface.kt");
|
||||
}
|
||||
|
||||
@Test
|
||||
@TestMetadata("eqEqCall_fromAny.kt")
|
||||
public void testEqEqCall_fromAny() throws Exception {
|
||||
|
||||
+3
@@ -0,0 +1,3 @@
|
||||
KtErrorCallInfo:
|
||||
candidateCalls = []
|
||||
diagnostic = ERROR<NO_CONSTRUCTOR: This class does not have a constructor>
|
||||
Vendored
+4
@@ -0,0 +1,4 @@
|
||||
enum class E : <expr>I()</expr>, I1{}
|
||||
|
||||
interface I {}
|
||||
interface I1 {}
|
||||
Vendored
+3
@@ -0,0 +1,3 @@
|
||||
KtErrorCallInfo:
|
||||
candidateCalls = []
|
||||
diagnostic = ERROR<UNRESOLVED_REFERENCE: Unresolved reference: <init>>
|
||||
Reference in New Issue
Block a user