diff --git a/analysis/analysis-api-fe10/tests-gen/org/jetbrains/kotlin/analysis/api/fe10/test/cases/generated/cases/references/Fe10IdeNormalAnalysisSourceModuleReferenceResolveTestGenerated.java b/analysis/analysis-api-fe10/tests-gen/org/jetbrains/kotlin/analysis/api/fe10/test/cases/generated/cases/references/Fe10IdeNormalAnalysisSourceModuleReferenceResolveTestGenerated.java index 4d694a9dcf1..fe5fa6c5f5b 100644 --- a/analysis/analysis-api-fe10/tests-gen/org/jetbrains/kotlin/analysis/api/fe10/test/cases/generated/cases/references/Fe10IdeNormalAnalysisSourceModuleReferenceResolveTestGenerated.java +++ b/analysis/analysis-api-fe10/tests-gen/org/jetbrains/kotlin/analysis/api/fe10/test/cases/generated/cases/references/Fe10IdeNormalAnalysisSourceModuleReferenceResolveTestGenerated.java @@ -838,6 +838,18 @@ public class Fe10IdeNormalAnalysisSourceModuleReferenceResolveTestGenerated exte KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("analysis/analysis-api/testData/referenceResolve/codeFragment/expressionCodeFragment"), Pattern.compile("^([^.]+)\\.kt$"), null, true); } + @Test + @TestMetadata("ArrayAssignmentOperator.kt") + public void testArrayAssignmentOperator() { + runTest("analysis/analysis-api/testData/referenceResolve/codeFragment/expressionCodeFragment/ArrayAssignmentOperator.kt"); + } + + @Test + @TestMetadata("ArrayPlusAssignmentOperator.kt") + public void testArrayPlusAssignmentOperator() { + runTest("analysis/analysis-api/testData/referenceResolve/codeFragment/expressionCodeFragment/ArrayPlusAssignmentOperator.kt"); + } + @Test @TestMetadata("BinaryExpression.kt") public void testBinaryExpression() { diff --git a/analysis/analysis-api-fir/tests-gen/org/jetbrains/kotlin/analysis/api/fir/test/cases/generated/cases/references/FirIdeDependentAnalysisSourceModuleReferenceResolveTestGenerated.java b/analysis/analysis-api-fir/tests-gen/org/jetbrains/kotlin/analysis/api/fir/test/cases/generated/cases/references/FirIdeDependentAnalysisSourceModuleReferenceResolveTestGenerated.java index 6ea6f5c3efb..2ffb7666b6c 100644 --- a/analysis/analysis-api-fir/tests-gen/org/jetbrains/kotlin/analysis/api/fir/test/cases/generated/cases/references/FirIdeDependentAnalysisSourceModuleReferenceResolveTestGenerated.java +++ b/analysis/analysis-api-fir/tests-gen/org/jetbrains/kotlin/analysis/api/fir/test/cases/generated/cases/references/FirIdeDependentAnalysisSourceModuleReferenceResolveTestGenerated.java @@ -838,6 +838,18 @@ public class FirIdeDependentAnalysisSourceModuleReferenceResolveTestGenerated ex KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("analysis/analysis-api/testData/referenceResolve/codeFragment/expressionCodeFragment"), Pattern.compile("^([^.]+)\\.kt$"), null, true); } + @Test + @TestMetadata("ArrayAssignmentOperator.kt") + public void testArrayAssignmentOperator() { + runTest("analysis/analysis-api/testData/referenceResolve/codeFragment/expressionCodeFragment/ArrayAssignmentOperator.kt"); + } + + @Test + @TestMetadata("ArrayPlusAssignmentOperator.kt") + public void testArrayPlusAssignmentOperator() { + runTest("analysis/analysis-api/testData/referenceResolve/codeFragment/expressionCodeFragment/ArrayPlusAssignmentOperator.kt"); + } + @Test @TestMetadata("BinaryExpression.kt") public void testBinaryExpression() { diff --git a/analysis/analysis-api-fir/tests-gen/org/jetbrains/kotlin/analysis/api/fir/test/cases/generated/cases/references/FirIdeNormalAnalysisLibrarySourceModuleReferenceResolveTestGenerated.java b/analysis/analysis-api-fir/tests-gen/org/jetbrains/kotlin/analysis/api/fir/test/cases/generated/cases/references/FirIdeNormalAnalysisLibrarySourceModuleReferenceResolveTestGenerated.java index 9247380df68..d170a1c3fc0 100644 --- a/analysis/analysis-api-fir/tests-gen/org/jetbrains/kotlin/analysis/api/fir/test/cases/generated/cases/references/FirIdeNormalAnalysisLibrarySourceModuleReferenceResolveTestGenerated.java +++ b/analysis/analysis-api-fir/tests-gen/org/jetbrains/kotlin/analysis/api/fir/test/cases/generated/cases/references/FirIdeNormalAnalysisLibrarySourceModuleReferenceResolveTestGenerated.java @@ -810,6 +810,18 @@ public class FirIdeNormalAnalysisLibrarySourceModuleReferenceResolveTestGenerate KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("analysis/analysis-api/testData/referenceResolve/codeFragment/expressionCodeFragment"), Pattern.compile("^([^.]+)\\.kt$"), null, true, "withErrors"); } + @Test + @TestMetadata("ArrayAssignmentOperator.kt") + public void testArrayAssignmentOperator() { + runTest("analysis/analysis-api/testData/referenceResolve/codeFragment/expressionCodeFragment/ArrayAssignmentOperator.kt"); + } + + @Test + @TestMetadata("ArrayPlusAssignmentOperator.kt") + public void testArrayPlusAssignmentOperator() { + runTest("analysis/analysis-api/testData/referenceResolve/codeFragment/expressionCodeFragment/ArrayPlusAssignmentOperator.kt"); + } + @Test @TestMetadata("BinaryExpression.kt") public void testBinaryExpression() { diff --git a/analysis/analysis-api-fir/tests-gen/org/jetbrains/kotlin/analysis/api/fir/test/cases/generated/cases/references/FirIdeNormalAnalysisSourceModuleReferenceResolveTestGenerated.java b/analysis/analysis-api-fir/tests-gen/org/jetbrains/kotlin/analysis/api/fir/test/cases/generated/cases/references/FirIdeNormalAnalysisSourceModuleReferenceResolveTestGenerated.java index d49c8e160b5..b277c0444cd 100644 --- a/analysis/analysis-api-fir/tests-gen/org/jetbrains/kotlin/analysis/api/fir/test/cases/generated/cases/references/FirIdeNormalAnalysisSourceModuleReferenceResolveTestGenerated.java +++ b/analysis/analysis-api-fir/tests-gen/org/jetbrains/kotlin/analysis/api/fir/test/cases/generated/cases/references/FirIdeNormalAnalysisSourceModuleReferenceResolveTestGenerated.java @@ -838,6 +838,18 @@ public class FirIdeNormalAnalysisSourceModuleReferenceResolveTestGenerated exten KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("analysis/analysis-api/testData/referenceResolve/codeFragment/expressionCodeFragment"), Pattern.compile("^([^.]+)\\.kt$"), null, true); } + @Test + @TestMetadata("ArrayAssignmentOperator.kt") + public void testArrayAssignmentOperator() { + runTest("analysis/analysis-api/testData/referenceResolve/codeFragment/expressionCodeFragment/ArrayAssignmentOperator.kt"); + } + + @Test + @TestMetadata("ArrayPlusAssignmentOperator.kt") + public void testArrayPlusAssignmentOperator() { + runTest("analysis/analysis-api/testData/referenceResolve/codeFragment/expressionCodeFragment/ArrayPlusAssignmentOperator.kt"); + } + @Test @TestMetadata("BinaryExpression.kt") public void testBinaryExpression() { diff --git a/analysis/analysis-api-standalone/tests-gen/org/jetbrains/kotlin/analysis/api/standalone/fir/test/cases/generated/cases/references/FirStandaloneNormalAnalysisSourceModuleReferenceResolveTestGenerated.java b/analysis/analysis-api-standalone/tests-gen/org/jetbrains/kotlin/analysis/api/standalone/fir/test/cases/generated/cases/references/FirStandaloneNormalAnalysisSourceModuleReferenceResolveTestGenerated.java index 199c82ba403..6e94dc05534 100644 --- a/analysis/analysis-api-standalone/tests-gen/org/jetbrains/kotlin/analysis/api/standalone/fir/test/cases/generated/cases/references/FirStandaloneNormalAnalysisSourceModuleReferenceResolveTestGenerated.java +++ b/analysis/analysis-api-standalone/tests-gen/org/jetbrains/kotlin/analysis/api/standalone/fir/test/cases/generated/cases/references/FirStandaloneNormalAnalysisSourceModuleReferenceResolveTestGenerated.java @@ -838,6 +838,18 @@ public class FirStandaloneNormalAnalysisSourceModuleReferenceResolveTestGenerate KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("analysis/analysis-api/testData/referenceResolve/codeFragment/expressionCodeFragment"), Pattern.compile("^([^.]+)\\.kt$"), null, true); } + @Test + @TestMetadata("ArrayAssignmentOperator.kt") + public void testArrayAssignmentOperator() { + runTest("analysis/analysis-api/testData/referenceResolve/codeFragment/expressionCodeFragment/ArrayAssignmentOperator.kt"); + } + + @Test + @TestMetadata("ArrayPlusAssignmentOperator.kt") + public void testArrayPlusAssignmentOperator() { + runTest("analysis/analysis-api/testData/referenceResolve/codeFragment/expressionCodeFragment/ArrayPlusAssignmentOperator.kt"); + } + @Test @TestMetadata("BinaryExpression.kt") public void testBinaryExpression() { diff --git a/analysis/analysis-api/testData/referenceResolve/arrayAccess/set.descriptors.txt b/analysis/analysis-api/testData/referenceResolve/arrayAccess/set.descriptors.txt new file mode 100644 index 00000000000..5dbec09f509 --- /dev/null +++ b/analysis/analysis-api/testData/referenceResolve/arrayAccess/set.descriptors.txt @@ -0,0 +1,8 @@ + resolved to: +0: (in kotlin.collections.MutableList) operator fun set(index: kotlin.Int, element: E): E + + resolved to: +0: (in kotlin.collections.MutableList) operator fun set(index: kotlin.Int, element: E): E + + resolved to: +0: (in kotlin.collections.MutableList) operator fun set(index: kotlin.Int, element: E): E \ No newline at end of file diff --git a/analysis/analysis-api/testData/referenceResolve/arrayAccess/set.kt b/analysis/analysis-api/testData/referenceResolve/arrayAccess/set.kt index 544fd976f0f..4ba18bb002f 100644 --- a/analysis/analysis-api/testData/referenceResolve/arrayAccess/set.kt +++ b/analysis/analysis-api/testData/referenceResolve/arrayAccess/set.kt @@ -2,4 +2,8 @@ fun a () { val list = mutableListOf(1) list[0] = 1 + + if (true) list[0] = 1 + + when { else -> list[0] = 1 } } diff --git a/analysis/analysis-api/testData/referenceResolve/arrayAccess/set.txt b/analysis/analysis-api/testData/referenceResolve/arrayAccess/set.txt index ef641e1ba04..a4f4dbd0f21 100644 --- a/analysis/analysis-api/testData/referenceResolve/arrayAccess/set.txt +++ b/analysis/analysis-api/testData/referenceResolve/arrayAccess/set.txt @@ -1,2 +1,8 @@ -Resolved to: + resolved to: 0: (in kotlin.collections.MutableList) operator fun set(index: kotlin.Int, element: E): E + + resolved to: +Nothing (Unresolved reference) + + resolved to: +Nothing (Unresolved reference) \ No newline at end of file diff --git a/analysis/analysis-api/testData/referenceResolve/codeFragment/expressionCodeFragment/ArrayAssignmentOperator.kt b/analysis/analysis-api/testData/referenceResolve/codeFragment/expressionCodeFragment/ArrayAssignmentOperator.kt new file mode 100644 index 00000000000..6b3bb8cfaf6 --- /dev/null +++ b/analysis/analysis-api/testData/referenceResolve/codeFragment/expressionCodeFragment/ArrayAssignmentOperator.kt @@ -0,0 +1,20 @@ +// IGNORE_FE10 + +// MODULE: context + +interface MyList { + operator fun set(index: Int, value: String) +} + +// FILE: context.kt +fun test(list: MyList) { + Unit +} + +// MODULE: main +// MODULE_KIND: CodeFragment +// CONTEXT_MODULE: context + +// FILE: fragment.kt +// CODE_FRAGMENT_KIND: EXPRESSION +list[10] = "value" \ No newline at end of file diff --git a/analysis/analysis-api/testData/referenceResolve/codeFragment/expressionCodeFragment/ArrayAssignmentOperator.txt b/analysis/analysis-api/testData/referenceResolve/codeFragment/expressionCodeFragment/ArrayAssignmentOperator.txt new file mode 100644 index 00000000000..db4fc56233f --- /dev/null +++ b/analysis/analysis-api/testData/referenceResolve/codeFragment/expressionCodeFragment/ArrayAssignmentOperator.txt @@ -0,0 +1,2 @@ +Resolved to: +Nothing (Unresolved reference) \ No newline at end of file diff --git a/analysis/analysis-api/testData/referenceResolve/codeFragment/expressionCodeFragment/ArrayPlusAssignmentOperator.kt b/analysis/analysis-api/testData/referenceResolve/codeFragment/expressionCodeFragment/ArrayPlusAssignmentOperator.kt new file mode 100644 index 00000000000..e6221187796 --- /dev/null +++ b/analysis/analysis-api/testData/referenceResolve/codeFragment/expressionCodeFragment/ArrayPlusAssignmentOperator.kt @@ -0,0 +1,21 @@ +// IGNORE_FE10 + +// MODULE: context + +interface MyList { + operator fun get(index: Int): String + operator fun set(index: Int, value: String) +} + +// FILE: context.kt +fun test(list: MyList) { + Unit +} + +// MODULE: main +// MODULE_KIND: CodeFragment +// CONTEXT_MODULE: context + +// FILE: fragment.kt +// CODE_FRAGMENT_KIND: EXPRESSION +list[10] += "value" \ No newline at end of file diff --git a/analysis/analysis-api/testData/referenceResolve/codeFragment/expressionCodeFragment/ArrayPlusAssignmentOperator.txt b/analysis/analysis-api/testData/referenceResolve/codeFragment/expressionCodeFragment/ArrayPlusAssignmentOperator.txt new file mode 100644 index 00000000000..db4fc56233f --- /dev/null +++ b/analysis/analysis-api/testData/referenceResolve/codeFragment/expressionCodeFragment/ArrayPlusAssignmentOperator.txt @@ -0,0 +1,2 @@ +Resolved to: +Nothing (Unresolved reference) \ No newline at end of file