AA: add test about resolution of compound access to overridden operator
diff --git a/analysis/analysis-api-fe10/tests-gen/org/jetbrains/kotlin/analysis/api/fe10/test/cases/generated/cases/components/callResolver/Fe10IdeNormalAnalysisSourceModuleResolveCallTestGenerated.java b/analysis/analysis-api-fe10/tests-gen/org/jetbrains/kotlin/analysis/api/fe10/test/cases/generated/cases/components/callResolver/Fe10IdeNormalAnalysisSourceModuleResolveCallTestGenerated.java
index a41c1c6..9998274 100644
--- a/analysis/analysis-api-fe10/tests-gen/org/jetbrains/kotlin/analysis/api/fe10/test/cases/generated/cases/components/callResolver/Fe10IdeNormalAnalysisSourceModuleResolveCallTestGenerated.java
+++ b/analysis/analysis-api-fe10/tests-gen/org/jetbrains/kotlin/analysis/api/fe10/test/cases/generated/cases/components/callResolver/Fe10IdeNormalAnalysisSourceModuleResolveCallTestGenerated.java
@@ -1152,6 +1152,12 @@
public void testInsidePlusAssignTarget() {
runTest("analysis/analysis-api/testData/components/callResolver/resolveCall/assignments/insidePlusAssignTarget.kt");
}
+
+ @Test
+ @TestMetadata("plusEq_overriddenPlus.kt")
+ public void testPlusEq_overriddenPlus() {
+ runTest("analysis/analysis-api/testData/components/callResolver/resolveCall/assignments/plusEq_overriddenPlus.kt");
+ }
}
@Nested
diff --git a/analysis/analysis-api-fir/tests-gen/org/jetbrains/kotlin/analysis/api/fir/test/cases/generated/cases/components/callResolver/FirIdeNormalAnalysisSourceModuleResolveCallTestGenerated.java b/analysis/analysis-api-fir/tests-gen/org/jetbrains/kotlin/analysis/api/fir/test/cases/generated/cases/components/callResolver/FirIdeNormalAnalysisSourceModuleResolveCallTestGenerated.java
index 70b1e2d..6eefc44 100644
--- a/analysis/analysis-api-fir/tests-gen/org/jetbrains/kotlin/analysis/api/fir/test/cases/generated/cases/components/callResolver/FirIdeNormalAnalysisSourceModuleResolveCallTestGenerated.java
+++ b/analysis/analysis-api-fir/tests-gen/org/jetbrains/kotlin/analysis/api/fir/test/cases/generated/cases/components/callResolver/FirIdeNormalAnalysisSourceModuleResolveCallTestGenerated.java
@@ -1152,6 +1152,12 @@
public void testInsidePlusAssignTarget() {
runTest("analysis/analysis-api/testData/components/callResolver/resolveCall/assignments/insidePlusAssignTarget.kt");
}
+
+ @Test
+ @TestMetadata("plusEq_overriddenPlus.kt")
+ public void testPlusEq_overriddenPlus() {
+ runTest("analysis/analysis-api/testData/components/callResolver/resolveCall/assignments/plusEq_overriddenPlus.kt");
+ }
}
@Nested
diff --git a/analysis/analysis-api-standalone/tests-gen/org/jetbrains/kotlin/analysis/api/standalone/fir/test/cases/generated/cases/components/callResolver/FirStandaloneNormalAnalysisSourceModuleResolveCallTestGenerated.java b/analysis/analysis-api-standalone/tests-gen/org/jetbrains/kotlin/analysis/api/standalone/fir/test/cases/generated/cases/components/callResolver/FirStandaloneNormalAnalysisSourceModuleResolveCallTestGenerated.java
index e8d127d..0a2d6a9 100644
--- a/analysis/analysis-api-standalone/tests-gen/org/jetbrains/kotlin/analysis/api/standalone/fir/test/cases/generated/cases/components/callResolver/FirStandaloneNormalAnalysisSourceModuleResolveCallTestGenerated.java
+++ b/analysis/analysis-api-standalone/tests-gen/org/jetbrains/kotlin/analysis/api/standalone/fir/test/cases/generated/cases/components/callResolver/FirStandaloneNormalAnalysisSourceModuleResolveCallTestGenerated.java
@@ -1152,6 +1152,12 @@
public void testInsidePlusAssignTarget() {
runTest("analysis/analysis-api/testData/components/callResolver/resolveCall/assignments/insidePlusAssignTarget.kt");
}
+
+ @Test
+ @TestMetadata("plusEq_overriddenPlus.kt")
+ public void testPlusEq_overriddenPlus() {
+ runTest("analysis/analysis-api/testData/components/callResolver/resolveCall/assignments/plusEq_overriddenPlus.kt");
+ }
}
@Nested
diff --git a/analysis/analysis-api/testData/components/callResolver/resolveCall/assignments/plusEq_overriddenPlus.kt b/analysis/analysis-api/testData/components/callResolver/resolveCall/assignments/plusEq_overriddenPlus.kt
new file mode 100644
index 0000000..c5e5e5b
--- /dev/null
+++ b/analysis/analysis-api/testData/components/callResolver/resolveCall/assignments/plusEq_overriddenPlus.kt
@@ -0,0 +1,10 @@
+class Test(
+ val p: Int,
+) {
+ operator fun plus(other: Test) = Test(this.p + other.p)
+}
+
+fun test() {
+ var x = Test(40)
+ <expr>x += Test(2)</expr>
+}
\ No newline at end of file
diff --git a/analysis/analysis-api/testData/components/callResolver/resolveCall/assignments/plusEq_overriddenPlus.txt b/analysis/analysis-api/testData/components/callResolver/resolveCall/assignments/plusEq_overriddenPlus.txt
new file mode 100644
index 0000000..c6f871b
--- /dev/null
+++ b/analysis/analysis-api/testData/components/callResolver/resolveCall/assignments/plusEq_overriddenPlus.txt
@@ -0,0 +1,34 @@
+KtSuccessCallInfo:
+ call = KtCompoundVariableAccessCall:
+ compoundAccess = CompoundAssign:
+ kind = PLUS_ASSIGN
+ operand = Test(2)
+ operationPartiallyAppliedSymbol = KtPartiallyAppliedSymbol:
+ dispatchReceiver = KtExplicitReceiverValue:
+ expression = x
+ isSafeNavigation = false
+ type = Test
+ extensionReceiver = null
+ signature = KtFunctionLikeSignature:
+ receiverType = null
+ returnType = Test
+ symbol = /Test.plus(<dispatch receiver>: Test, other: Test): Test
+ valueParameters = [
+ KtVariableLikeSignature:
+ name = other
+ receiverType = null
+ returnType = Test
+ symbol = other: Test
+ callableIdIfNonLocal = null
+ ]
+ callableIdIfNonLocal = /Test.plus
+ partiallyAppliedSymbol = KtPartiallyAppliedSymbol:
+ dispatchReceiver = null
+ extensionReceiver = null
+ signature = KtVariableLikeSignature:
+ name = x
+ receiverType = null
+ returnType = Test
+ symbol = var x: Test
+ callableIdIfNonLocal = null
+ typeArgumentsMapping = {}