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 = {}