diff --git a/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/DiagnosticCompilerTestFE10TestdataTestGenerated.java b/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/DiagnosticCompilerTestFE10TestdataTestGenerated.java index 7b18c0faa69..4766b5b1aa8 100644 --- a/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/DiagnosticCompilerTestFE10TestdataTestGenerated.java +++ b/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/DiagnosticCompilerTestFE10TestdataTestGenerated.java @@ -21225,12 +21225,6 @@ public class DiagnosticCompilerTestFE10TestdataTestGenerated extends AbstractDia runTest("compiler/testData/diagnostics/tests/j+k/collectionOverrides/removeAt.kt"); } - @Test - @TestMetadata("removeAtInt.kt") - public void testRemoveAtInt() throws Exception { - runTest("compiler/testData/diagnostics/tests/j+k/collectionOverrides/removeAtInt.kt"); - } - @Test @TestMetadata("sizeFromKotlinOverriddenInJava.kt") public void testSizeFromKotlinOverriddenInJava() throws Exception { diff --git a/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/LLFirPreresolvedReversedDiagnosticCompilerFE10TestDataTestGenerated.java b/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/LLFirPreresolvedReversedDiagnosticCompilerFE10TestDataTestGenerated.java index 401bc95bd13..25efd81454c 100644 --- a/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/LLFirPreresolvedReversedDiagnosticCompilerFE10TestDataTestGenerated.java +++ b/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/compiler/based/LLFirPreresolvedReversedDiagnosticCompilerFE10TestDataTestGenerated.java @@ -21225,12 +21225,6 @@ public class LLFirPreresolvedReversedDiagnosticCompilerFE10TestDataTestGenerated runTest("compiler/testData/diagnostics/tests/j+k/collectionOverrides/removeAt.kt"); } - @Test - @TestMetadata("removeAtInt.kt") - public void testRemoveAtInt() throws Exception { - runTest("compiler/testData/diagnostics/tests/j+k/collectionOverrides/removeAtInt.kt"); - } - @Test @TestMetadata("sizeFromKotlinOverriddenInJava.kt") public void testSizeFromKotlinOverriddenInJava() throws Exception { diff --git a/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirLightTreeOldFrontendDiagnosticsTestGenerated.java b/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirLightTreeOldFrontendDiagnosticsTestGenerated.java index 93e4b4eddaf..dadf134757a 100644 --- a/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirLightTreeOldFrontendDiagnosticsTestGenerated.java +++ b/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirLightTreeOldFrontendDiagnosticsTestGenerated.java @@ -21225,12 +21225,6 @@ public class FirLightTreeOldFrontendDiagnosticsTestGenerated extends AbstractFir runTest("compiler/testData/diagnostics/tests/j+k/collectionOverrides/removeAt.kt"); } - @Test - @TestMetadata("removeAtInt.kt") - public void testRemoveAtInt() throws Exception { - runTest("compiler/testData/diagnostics/tests/j+k/collectionOverrides/removeAtInt.kt"); - } - @Test @TestMetadata("sizeFromKotlinOverriddenInJava.kt") public void testSizeFromKotlinOverriddenInJava() throws Exception { diff --git a/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirPsiOldFrontendDiagnosticsTestGenerated.java b/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirPsiOldFrontendDiagnosticsTestGenerated.java index 861ec623b6a..721e9fea8f5 100644 --- a/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirPsiOldFrontendDiagnosticsTestGenerated.java +++ b/compiler/fir/analysis-tests/tests-gen/org/jetbrains/kotlin/test/runners/FirPsiOldFrontendDiagnosticsTestGenerated.java @@ -21231,12 +21231,6 @@ public class FirPsiOldFrontendDiagnosticsTestGenerated extends AbstractFirPsiDia runTest("compiler/testData/diagnostics/tests/j+k/collectionOverrides/removeAt.kt"); } - @Test - @TestMetadata("removeAtInt.kt") - public void testRemoveAtInt() throws Exception { - runTest("compiler/testData/diagnostics/tests/j+k/collectionOverrides/removeAtInt.kt"); - } - @Test @TestMetadata("sizeFromKotlinOverriddenInJava.kt") public void testSizeFromKotlinOverriddenInJava() throws Exception { diff --git a/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirLightTreeBlackBoxCodegenTestGenerated.java b/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirLightTreeBlackBoxCodegenTestGenerated.java index 55c71265287..16dda1745e2 100644 --- a/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirLightTreeBlackBoxCodegenTestGenerated.java +++ b/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirLightTreeBlackBoxCodegenTestGenerated.java @@ -7661,6 +7661,18 @@ public class FirLightTreeBlackBoxCodegenTestGenerated extends AbstractFirLightTr runTest("compiler/testData/codegen/box/collections/removeAtInt.kt"); } + @Test + @TestMetadata("removeAtIntOverrideInJava.kt") + public void testRemoveAtIntOverrideInJava() throws Exception { + runTest("compiler/testData/codegen/box/collections/removeAtIntOverrideInJava.kt"); + } + + @Test + @TestMetadata("removeAtIntOverrideInJava2.kt") + public void testRemoveAtIntOverrideInJava2() throws Exception { + runTest("compiler/testData/codegen/box/collections/removeAtIntOverrideInJava2.kt"); + } + @Test @TestMetadata("removeClash.kt") public void testRemoveClash() throws Exception { diff --git a/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirLightTreeBlackBoxCodegenWithIrFakeOverrideGeneratorTestGenerated.java b/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirLightTreeBlackBoxCodegenWithIrFakeOverrideGeneratorTestGenerated.java index b41ca63512b..db1ddc89e2f 100644 --- a/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirLightTreeBlackBoxCodegenWithIrFakeOverrideGeneratorTestGenerated.java +++ b/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirLightTreeBlackBoxCodegenWithIrFakeOverrideGeneratorTestGenerated.java @@ -7661,6 +7661,18 @@ public class FirLightTreeBlackBoxCodegenWithIrFakeOverrideGeneratorTestGenerated runTest("compiler/testData/codegen/box/collections/removeAtInt.kt"); } + @Test + @TestMetadata("removeAtIntOverrideInJava.kt") + public void testRemoveAtIntOverrideInJava() throws Exception { + runTest("compiler/testData/codegen/box/collections/removeAtIntOverrideInJava.kt"); + } + + @Test + @TestMetadata("removeAtIntOverrideInJava2.kt") + public void testRemoveAtIntOverrideInJava2() throws Exception { + runTest("compiler/testData/codegen/box/collections/removeAtIntOverrideInJava2.kt"); + } + @Test @TestMetadata("removeClash.kt") public void testRemoveClash() throws Exception { diff --git a/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirPsiBlackBoxCodegenTestGenerated.java b/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirPsiBlackBoxCodegenTestGenerated.java index aac2a019dd3..d09695bcaf7 100644 --- a/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirPsiBlackBoxCodegenTestGenerated.java +++ b/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/codegen/FirPsiBlackBoxCodegenTestGenerated.java @@ -7661,6 +7661,18 @@ public class FirPsiBlackBoxCodegenTestGenerated extends AbstractFirPsiBlackBoxCo runTest("compiler/testData/codegen/box/collections/removeAtInt.kt"); } + @Test + @TestMetadata("removeAtIntOverrideInJava.kt") + public void testRemoveAtIntOverrideInJava() throws Exception { + runTest("compiler/testData/codegen/box/collections/removeAtIntOverrideInJava.kt"); + } + + @Test + @TestMetadata("removeAtIntOverrideInJava2.kt") + public void testRemoveAtIntOverrideInJava2() throws Exception { + runTest("compiler/testData/codegen/box/collections/removeAtIntOverrideInJava2.kt"); + } + @Test @TestMetadata("removeClash.kt") public void testRemoveClash() throws Exception { diff --git a/compiler/fir/java/src/org/jetbrains/kotlin/fir/java/scopes/JavaOverrideChecker.kt b/compiler/fir/java/src/org/jetbrains/kotlin/fir/java/scopes/JavaOverrideChecker.kt index 9d1a4366733..cdbb3cd4c27 100644 --- a/compiler/fir/java/src/org/jetbrains/kotlin/fir/java/scopes/JavaOverrideChecker.kt +++ b/compiler/fir/java/src/org/jetbrains/kotlin/fir/java/scopes/JavaOverrideChecker.kt @@ -7,6 +7,7 @@ package org.jetbrains.kotlin.fir.java.scopes import org.jetbrains.kotlin.descriptors.Modality import org.jetbrains.kotlin.fir.FirSession +import org.jetbrains.kotlin.fir.containingClassLookupTag import org.jetbrains.kotlin.fir.declarations.* import org.jetbrains.kotlin.fir.declarations.utils.isStatic import org.jetbrains.kotlin.fir.declarations.utils.modality @@ -76,18 +77,17 @@ class JavaOverrideChecker internal constructor( private fun isEqualTypes( candidateTypeRef: FirTypeRef, baseTypeRef: FirTypeRef, - substitutor: ConeSubstitutor + substitutor: ConeSubstitutor, + forceBoxCandidateType: Boolean, + forceBoxBaseType: Boolean, ): Boolean { val candidateType = candidateTypeRef.toConeKotlinTypeProbablyFlexible(session, javaTypeParameterStack) val baseType = baseTypeRef.toConeKotlinTypeProbablyFlexible(session, javaTypeParameterStack) - if (candidateType.isPrimitiveInJava(isReturnType = false) != baseType.isPrimitiveInJava(isReturnType = false)) return false + val candidateTypeIsPrimitive = !forceBoxCandidateType && candidateType.isPrimitiveInJava(isReturnType = false) + val baseTypeIsPrimitive = !forceBoxBaseType && baseType.isPrimitiveInJava(isReturnType = false) - return isEqualTypes( - candidateType, - baseType, - substitutor - ) + return candidateTypeIsPrimitive == baseTypeIsPrimitive && isEqualTypes(candidateType, baseType, substitutor) } // In most cases checking erasure of value parameters should be enough, but in some cases there might be semi-valid Java hierarchies @@ -241,8 +241,11 @@ class JavaOverrideChecker internal constructor( if (overrideCandidate.valueParameters.size != baseParameterTypes.size) return false val substitutor = buildTypeParametersSubstitutorIfCompatible(overrideCandidate, baseDeclaration) + val forceBoxOverrideParameterType = forceSingleValueParameterBoxing(overrideCandidate) + val forceBoxBaseParameterType = forceSingleValueParameterBoxing(baseDeclaration) + if (!overrideCandidate.valueParameters.zip(baseParameterTypes).all { (paramFromJava, baseType) -> - isEqualTypes(paramFromJava.returnTypeRef, baseType, substitutor) + isEqualTypes(paramFromJava.returnTypeRef, baseType, substitutor, forceBoxOverrideParameterType, forceBoxBaseParameterType) }) { return false } @@ -266,7 +269,10 @@ class JavaOverrideChecker internal constructor( return overrideCandidate.valueParameters.isEmpty() } else { if (overrideCandidate.valueParameters.size != 1) return false - return isEqualTypes(receiverTypeRef, overrideCandidate.valueParameters.single().returnTypeRef, ConeSubstitutor.Empty) + return isEqualTypes( + receiverTypeRef, overrideCandidate.valueParameters.single().returnTypeRef, ConeSubstitutor.Empty, + forceBoxCandidateType = false, forceBoxBaseType = false + ) } } is FirProperty -> { @@ -274,11 +280,40 @@ class JavaOverrideChecker internal constructor( return when { receiverTypeRef == null -> overrideReceiverTypeRef == null overrideReceiverTypeRef == null -> false - else -> isEqualTypes(receiverTypeRef, overrideReceiverTypeRef, ConeSubstitutor.Empty) + else -> isEqualTypes( + receiverTypeRef, overrideReceiverTypeRef, ConeSubstitutor.Empty, + forceBoxCandidateType = false, forceBoxBaseType = false + ) } } else -> false } } + // Boxing is only necessary for 'remove(E): Boolean' of a MutableCollection implementation. + // Otherwise this method might clash with 'remove(I): E' defined in the java.util.List JDK interface (mapped to kotlin 'removeAt'). + // As in the K1 implementation in `methodSignatureMapping.kt`, we're checking if the method has `MutableCollection.remove` + // in its overridden symbols. + private fun forceSingleValueParameterBoxing(function: FirSimpleFunction): Boolean { + if (function.name.asString() != "remove" || function.receiverParameter != null || function.contextReceivers.isNotEmpty()) + return false + + val parameter = function.valueParameters.singleOrNull() ?: return false + + val parameterConeType = parameter.returnTypeRef.toConeKotlinTypeProbablyFlexible(session, javaTypeParameterStack) + if (!parameterConeType.fullyExpandedType(session).lowerBoundIfFlexible().isInt) return false + + var overridesMutableCollectionRemove = false + + baseScopes?.processOverriddenFunctions(function.symbol) { + if (it.fir.containingClassLookupTag() == StandardClassIds.MutableCollection.toLookupTag()) { + overridesMutableCollectionRemove = true + ProcessorAction.STOP + } else { + ProcessorAction.NEXT + } + } + + return overridesMutableCollectionRemove + } } diff --git a/compiler/testData/diagnostics/tests/j+k/collectionOverrides/removeAtInt.kt b/compiler/testData/codegen/box/collections/removeAtIntOverrideInJava.kt similarity index 50% rename from compiler/testData/diagnostics/tests/j+k/collectionOverrides/removeAtInt.kt rename to compiler/testData/codegen/box/collections/removeAtIntOverrideInJava.kt index 581138898ae..f119d6cf550 100644 --- a/compiler/testData/diagnostics/tests/j+k/collectionOverrides/removeAtInt.kt +++ b/compiler/testData/codegen/box/collections/removeAtIntOverrideInJava.kt @@ -1,9 +1,9 @@ -// FIR_IDENTICAL -// JAVAC_EXPECTED_FILE +// TARGET_BACKEND: JVM + // FILE: A.java abstract public class A extends B { - public Integer removeAt(int x) { } - public boolean remove(Integer x) { } + public Integer removeAt(int x) { return 0; } + public boolean remove(Integer x) { return false; } } // FILE: main.kt @@ -17,17 +17,43 @@ abstract class B : MutableList, AbstractList() { abstract class D : AbstractList() { // removeAt() doesn't exist in java/util/AbstractList, it's a // fake override of the method from kotlin/collections/MutableList - override fun removeAt(index: Int): Int = null!! + override fun removeAt(index: Int): Int = 0 // AbstractList::remove() should return Int here. No fake overrides created. // This may be a bug because the old compiler doesn't report a diagnostic here. - override fun remove(element: Int): Boolean = null!! + override fun remove(element: Int): Boolean = false } -fun main(a: A, b: B, c: ArrayList) { +fun testABD(a: A, b: B, d: D) { a.remove(1) a.removeAt(0) b.remove(1) b.removeAt(0) + d.remove(1) + d.removeAt(0) +} + +fun testArrayList(c: ArrayList) { c.remove(1) c.removeAt(0) } + +class AImpl : A() { + override fun get(index: Int): Int = 0 + override val size: Int get() = 0 +} + +class DImpl : D() { + override fun get(index: Int): Int = 0 + override val size: Int get() = 0 +} + +fun box(): String { + testABD(AImpl(), AImpl(), DImpl()) + + val c = ArrayList() + c.add(1) + c.add(1) + testArrayList(c) + + return "OK" +} diff --git a/compiler/testData/codegen/box/collections/removeAtIntOverrideInJava2.kt b/compiler/testData/codegen/box/collections/removeAtIntOverrideInJava2.kt new file mode 100644 index 00000000000..e22ed772a6f --- /dev/null +++ b/compiler/testData/codegen/box/collections/removeAtIntOverrideInJava2.kt @@ -0,0 +1,43 @@ +// TARGET_BACKEND: JVM +// IGNORE_LIGHT_ANALYSIS +// FILE: IntOpenHashSet.java + +import java.util.AbstractCollection; +import java.util.Collection; +import java.util.Iterator; +import java.util.Set; + +public class IntOpenHashSet extends AbstractIntSet { + @Override + public boolean remove(final int k) { return false; } + + @Override + public void clear() {} + + @Override + public int size() { return 0; } + + @Override + public Iterator iterator() { return null; } +} + +abstract class AbstractIntSet extends AbstractIntCollection implements IntSet { + @Override + public boolean remove(int k) { return false; } +} + +abstract class AbstractIntCollection extends AbstractCollection implements IntCollection {} + +interface IntCollection extends Collection {} + +interface IntSet extends IntCollection, Set { + boolean remove(int k); +} + +// FILE: box.kt + +fun box(): String { + val s = IntOpenHashSet() + s.remove(0) + return "OK" +} diff --git a/compiler/testData/diagnostics/tests/j+k/collectionOverrides/removeAtInt.javac.txt b/compiler/testData/diagnostics/tests/j+k/collectionOverrides/removeAtInt.javac.txt deleted file mode 100644 index 7e4dcbdc39c..00000000000 --- a/compiler/testData/diagnostics/tests/j+k/collectionOverrides/removeAtInt.javac.txt +++ /dev/null @@ -1,111 +0,0 @@ -package - -public fun main(/*0*/ a: A, /*1*/ b: B, /*2*/ c: java.util.ArrayList): kotlin.Unit - -public abstract class A : B { - public constructor A() - protected/*protected and package*/ final override /*1*/ /*fake_override*/ var modCount: kotlin.Int - public abstract override /*1*/ /*fake_override*/ val size: kotlin.Int - public open override /*1*/ /*fake_override*/ fun add(/*0*/ element: kotlin.Int): kotlin.Boolean - public open override /*1*/ /*fake_override*/ fun add(/*0*/ index: kotlin.Int, /*1*/ element: kotlin.Int): kotlin.Unit - public open override /*1*/ /*fake_override*/ fun addAll(/*0*/ index: kotlin.Int, /*1*/ elements: kotlin.collections.Collection): kotlin.Boolean - public open override /*1*/ /*fake_override*/ fun addAll(/*0*/ elements: kotlin.collections.Collection): kotlin.Boolean - public open override /*1*/ /*fake_override*/ fun clear(): kotlin.Unit - public open override /*1*/ /*fake_override*/ fun contains(/*0*/ element: kotlin.Int): kotlin.Boolean - public open override /*1*/ /*fake_override*/ fun containsAll(/*0*/ elements: kotlin.collections.Collection): kotlin.Boolean - public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean - public abstract override /*1*/ /*fake_override*/ fun get(/*0*/ index: kotlin.Int): kotlin.Int - public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int - public open override /*1*/ /*fake_override*/ fun indexOf(/*0*/ element: kotlin.Int): kotlin.Int - public open override /*1*/ /*fake_override*/ fun isEmpty(): kotlin.Boolean - public open override /*1*/ /*fake_override*/ fun iterator(): kotlin.collections.MutableIterator - public open override /*1*/ /*fake_override*/ fun lastIndexOf(/*0*/ element: kotlin.Int): kotlin.Int - public open override /*1*/ /*fake_override*/ fun listIterator(): kotlin.collections.MutableListIterator - public open override /*1*/ /*fake_override*/ fun listIterator(/*0*/ index: kotlin.Int): kotlin.collections.MutableListIterator - invisible_fake open override /*1*/ /*fake_override*/ fun outOfBoundsMsg(/*0*/ p0: kotlin.Int): kotlin.String! - invisible_fake open override /*1*/ /*fake_override*/ fun rangeCheckForAdd(/*0*/ p0: kotlin.Int): kotlin.Unit - public open override /*1*/ fun remove(/*0*/ element: kotlin.Int): kotlin.Boolean - public open override /*1*/ /*fake_override*/ fun removeAll(/*0*/ elements: kotlin.collections.Collection): kotlin.Boolean - public open override /*1*/ fun removeAt(/*0*/ index: kotlin.Int): kotlin.Int - protected/*protected and package*/ open override /*1*/ /*fake_override*/ fun removeRange(/*0*/ p0: kotlin.Int, /*1*/ p1: kotlin.Int): kotlin.Unit - public open override /*1*/ /*fake_override*/ fun retainAll(/*0*/ elements: kotlin.collections.Collection): kotlin.Boolean - public open override /*1*/ /*fake_override*/ fun set(/*0*/ index: kotlin.Int, /*1*/ element: kotlin.Int): kotlin.Int - public open override /*1*/ /*fake_override*/ fun subList(/*0*/ fromIndex: kotlin.Int, /*1*/ toIndex: kotlin.Int): kotlin.collections.MutableList - public open override /*1*/ /*fake_override*/ fun toArray(): kotlin.Array<(out) kotlin.Any!>! - public open override /*1*/ /*fake_override*/ fun toArray(/*0*/ p0: kotlin.Array<(out) T!>!): kotlin.Array<(out) T!>! - public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String - - // Static members - invisible_fake const final override /*1*/ /*fake_override*/ val MAX_ARRAY_SIZE: kotlin.Int = 2147483639 - invisible_fake open override /*1*/ /*fake_override*/ fun finishToArray(/*0*/ p0: kotlin.Array<(out) T!>!, /*1*/ p1: kotlin.collections.(Mutable)Iterator<*>!): kotlin.Array<(out) T!>! - invisible_fake open override /*1*/ /*fake_override*/ fun hugeCapacity(/*0*/ p0: kotlin.Int): kotlin.Int -} - -public abstract class B : kotlin.collections.MutableList, java.util.AbstractList { - public constructor B() - protected/*protected and package*/ final override /*1*/ /*fake_override*/ var modCount: kotlin.Int - public abstract override /*2*/ /*fake_override*/ val size: kotlin.Int - public open override /*2*/ /*fake_override*/ fun add(/*0*/ element: kotlin.Int): kotlin.Boolean - public open override /*2*/ /*fake_override*/ fun add(/*0*/ index: kotlin.Int, /*1*/ element: kotlin.Int): kotlin.Unit - public open override /*2*/ /*fake_override*/ fun addAll(/*0*/ index: kotlin.Int, /*1*/ elements: kotlin.collections.Collection): kotlin.Boolean - public open override /*2*/ /*fake_override*/ fun addAll(/*0*/ elements: kotlin.collections.Collection): kotlin.Boolean - public open override /*2*/ /*fake_override*/ fun clear(): kotlin.Unit - public open override /*2*/ /*fake_override*/ fun contains(/*0*/ element: kotlin.Int): kotlin.Boolean - public open override /*2*/ /*fake_override*/ fun containsAll(/*0*/ elements: kotlin.collections.Collection): kotlin.Boolean - public open override /*2*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean - public abstract override /*2*/ /*fake_override*/ fun get(/*0*/ index: kotlin.Int): kotlin.Int - public open override /*2*/ /*fake_override*/ fun hashCode(): kotlin.Int - public open override /*2*/ /*fake_override*/ fun indexOf(/*0*/ element: kotlin.Int): kotlin.Int - public open override /*2*/ /*fake_override*/ fun isEmpty(): kotlin.Boolean - public open override /*2*/ /*fake_override*/ fun iterator(): kotlin.collections.MutableIterator - public open override /*2*/ /*fake_override*/ fun lastIndexOf(/*0*/ element: kotlin.Int): kotlin.Int - public open override /*2*/ /*fake_override*/ fun listIterator(): kotlin.collections.MutableListIterator - public open override /*2*/ /*fake_override*/ fun listIterator(/*0*/ index: kotlin.Int): kotlin.collections.MutableListIterator - invisible_fake open override /*1*/ /*fake_override*/ fun outOfBoundsMsg(/*0*/ p0: kotlin.Int): kotlin.String! - invisible_fake open override /*1*/ /*fake_override*/ fun rangeCheckForAdd(/*0*/ p0: kotlin.Int): kotlin.Unit - public open override /*2*/ fun remove(/*0*/ element: kotlin.Int): kotlin.Boolean - public open override /*2*/ /*fake_override*/ fun removeAll(/*0*/ elements: kotlin.collections.Collection): kotlin.Boolean - public open override /*2*/ fun removeAt(/*0*/ index: kotlin.Int): kotlin.Int - protected/*protected and package*/ open override /*1*/ /*fake_override*/ fun removeRange(/*0*/ p0: kotlin.Int, /*1*/ p1: kotlin.Int): kotlin.Unit - public open override /*2*/ /*fake_override*/ fun retainAll(/*0*/ elements: kotlin.collections.Collection): kotlin.Boolean - public open override /*2*/ /*fake_override*/ fun set(/*0*/ index: kotlin.Int, /*1*/ element: kotlin.Int): kotlin.Int - public open override /*2*/ /*fake_override*/ fun subList(/*0*/ fromIndex: kotlin.Int, /*1*/ toIndex: kotlin.Int): kotlin.collections.MutableList - public open override /*1*/ /*fake_override*/ fun toArray(): kotlin.Array<(out) kotlin.Any!>! - public open override /*1*/ /*fake_override*/ fun toArray(/*0*/ p0: kotlin.Array<(out) T!>!): kotlin.Array<(out) T!>! - public open override /*2*/ /*fake_override*/ fun toString(): kotlin.String -} - -public abstract class D : java.util.AbstractList { - public constructor D() - protected/*protected and package*/ final override /*1*/ /*fake_override*/ var modCount: kotlin.Int - public abstract override /*1*/ /*fake_override*/ val size: kotlin.Int - public open override /*1*/ /*fake_override*/ fun add(/*0*/ index: kotlin.Int, /*1*/ element: kotlin.Int!): kotlin.Unit - public open override /*1*/ /*fake_override*/ fun add(/*0*/ element: kotlin.Int!): kotlin.Boolean - public open override /*1*/ /*fake_override*/ fun addAll(/*0*/ index: kotlin.Int, /*1*/ elements: kotlin.collections.Collection): kotlin.Boolean - public open override /*1*/ /*fake_override*/ fun addAll(/*0*/ elements: kotlin.collections.Collection): kotlin.Boolean - public open override /*1*/ /*fake_override*/ fun clear(): kotlin.Unit - public open override /*1*/ /*fake_override*/ fun contains(/*0*/ element: kotlin.Int!): kotlin.Boolean - public open override /*1*/ /*fake_override*/ fun containsAll(/*0*/ elements: kotlin.collections.Collection): kotlin.Boolean - public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean - public abstract override /*1*/ /*fake_override*/ fun get(/*0*/ index: kotlin.Int): kotlin.Int! - public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int - public open override /*1*/ /*fake_override*/ fun indexOf(/*0*/ element: kotlin.Int!): kotlin.Int - public open override /*1*/ /*fake_override*/ fun isEmpty(): kotlin.Boolean - public open override /*1*/ /*fake_override*/ fun iterator(): kotlin.collections.MutableIterator - public open override /*1*/ /*fake_override*/ fun lastIndexOf(/*0*/ element: kotlin.Int!): kotlin.Int - public open override /*1*/ /*fake_override*/ fun listIterator(): kotlin.collections.MutableListIterator - public open override /*1*/ /*fake_override*/ fun listIterator(/*0*/ index: kotlin.Int): kotlin.collections.MutableListIterator - invisible_fake open override /*1*/ /*fake_override*/ fun outOfBoundsMsg(/*0*/ p0: kotlin.Int): kotlin.String! - invisible_fake open override /*1*/ /*fake_override*/ fun rangeCheckForAdd(/*0*/ p0: kotlin.Int): kotlin.Unit - public open override /*1*/ fun remove(/*0*/ element: kotlin.Int): kotlin.Boolean - public open override /*1*/ /*fake_override*/ fun removeAll(/*0*/ elements: kotlin.collections.Collection): kotlin.Boolean - public open override /*1*/ fun removeAt(/*0*/ index: kotlin.Int): kotlin.Int - protected/*protected and package*/ open override /*1*/ /*fake_override*/ fun removeRange(/*0*/ p0: kotlin.Int, /*1*/ p1: kotlin.Int): kotlin.Unit - public open override /*1*/ /*fake_override*/ fun retainAll(/*0*/ elements: kotlin.collections.Collection): kotlin.Boolean - public open override /*1*/ /*fake_override*/ fun set(/*0*/ index: kotlin.Int, /*1*/ element: kotlin.Int!): kotlin.Int! - public open override /*1*/ /*fake_override*/ fun subList(/*0*/ fromIndex: kotlin.Int, /*1*/ toIndex: kotlin.Int): kotlin.collections.MutableList - public open override /*1*/ /*fake_override*/ fun toArray(): kotlin.Array<(out) kotlin.Any!>! - public open override /*1*/ /*fake_override*/ fun toArray(/*0*/ p0: kotlin.Array<(out) T!>!): kotlin.Array<(out) T!>! - public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String -} - diff --git a/compiler/testData/diagnostics/tests/j+k/collectionOverrides/removeAtInt.txt b/compiler/testData/diagnostics/tests/j+k/collectionOverrides/removeAtInt.txt deleted file mode 100644 index df9a38ad1f8..00000000000 --- a/compiler/testData/diagnostics/tests/j+k/collectionOverrides/removeAtInt.txt +++ /dev/null @@ -1,110 +0,0 @@ -package - -public fun main(/*0*/ a: A, /*1*/ b: B, /*2*/ c: java.util.ArrayList): kotlin.Unit - -public abstract class A : B { - public constructor A() - protected/*protected and package*/ final override /*1*/ /*fake_override*/ var modCount: kotlin.Int - public abstract override /*1*/ /*fake_override*/ val size: kotlin.Int - public open override /*1*/ /*fake_override*/ fun add(/*0*/ element: kotlin.Int): kotlin.Boolean - public open override /*1*/ /*fake_override*/ fun add(/*0*/ index: kotlin.Int, /*1*/ element: kotlin.Int): kotlin.Unit - public open override /*1*/ /*fake_override*/ fun addAll(/*0*/ index: kotlin.Int, /*1*/ elements: kotlin.collections.Collection): kotlin.Boolean - public open override /*1*/ /*fake_override*/ fun addAll(/*0*/ elements: kotlin.collections.Collection): kotlin.Boolean - public open override /*1*/ /*fake_override*/ fun clear(): kotlin.Unit - public open override /*1*/ /*fake_override*/ fun contains(/*0*/ element: kotlin.Int): kotlin.Boolean - public open override /*1*/ /*fake_override*/ fun containsAll(/*0*/ elements: kotlin.collections.Collection): kotlin.Boolean - public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean - public abstract override /*1*/ /*fake_override*/ fun get(/*0*/ index: kotlin.Int): kotlin.Int - public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int - public open override /*1*/ /*fake_override*/ fun indexOf(/*0*/ element: kotlin.Int): kotlin.Int - public open override /*1*/ /*fake_override*/ fun isEmpty(): kotlin.Boolean - public open override /*1*/ /*fake_override*/ fun iterator(): kotlin.collections.MutableIterator - public open override /*1*/ /*fake_override*/ fun lastIndexOf(/*0*/ element: kotlin.Int): kotlin.Int - public open override /*1*/ /*fake_override*/ fun listIterator(): kotlin.collections.MutableListIterator - public open override /*1*/ /*fake_override*/ fun listIterator(/*0*/ index: kotlin.Int): kotlin.collections.MutableListIterator - invisible_fake open override /*1*/ /*fake_override*/ fun outOfBoundsMsg(/*0*/ index: kotlin.Int): kotlin.String! - invisible_fake open override /*1*/ /*fake_override*/ fun rangeCheckForAdd(/*0*/ index: kotlin.Int): kotlin.Unit - public open override /*1*/ fun remove(/*0*/ element: kotlin.Int): kotlin.Boolean - public open override /*1*/ /*fake_override*/ fun removeAll(/*0*/ elements: kotlin.collections.Collection): kotlin.Boolean - public open override /*1*/ fun removeAt(/*0*/ index: kotlin.Int): kotlin.Int - protected/*protected and package*/ open override /*1*/ /*fake_override*/ fun removeRange(/*0*/ fromIndex: kotlin.Int, /*1*/ toIndex: kotlin.Int): kotlin.Unit - public open override /*1*/ /*fake_override*/ fun retainAll(/*0*/ elements: kotlin.collections.Collection): kotlin.Boolean - public open override /*1*/ /*fake_override*/ fun set(/*0*/ index: kotlin.Int, /*1*/ element: kotlin.Int): kotlin.Int - public open override /*1*/ /*fake_override*/ fun subList(/*0*/ fromIndex: kotlin.Int, /*1*/ toIndex: kotlin.Int): kotlin.collections.MutableList - public open override /*1*/ /*fake_override*/ fun toArray(): kotlin.Array<(out) kotlin.Any!>! - public open override /*1*/ /*fake_override*/ fun toArray(/*0*/ a: kotlin.Array<(out) T!>!): kotlin.Array<(out) T!>! - public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String - - // Static members - invisible_fake const final override /*1*/ /*fake_override*/ val MAX_ARRAY_SIZE: kotlin.Int = 2147483639 - invisible_fake open override /*1*/ /*fake_override*/ fun finishToArray(/*0*/ r: kotlin.Array<(out) T!>!, /*1*/ it: kotlin.collections.(Mutable)Iterator<*>!): kotlin.Array<(out) T!>! - invisible_fake open override /*1*/ /*fake_override*/ fun hugeCapacity(/*0*/ minCapacity: kotlin.Int): kotlin.Int -} - -public abstract class B : kotlin.collections.MutableList, java.util.AbstractList { - public constructor B() - protected/*protected and package*/ final override /*1*/ /*fake_override*/ var modCount: kotlin.Int - public abstract override /*2*/ /*fake_override*/ val size: kotlin.Int - public open override /*2*/ /*fake_override*/ fun add(/*0*/ element: kotlin.Int): kotlin.Boolean - public open override /*2*/ /*fake_override*/ fun add(/*0*/ index: kotlin.Int, /*1*/ element: kotlin.Int): kotlin.Unit - public open override /*2*/ /*fake_override*/ fun addAll(/*0*/ index: kotlin.Int, /*1*/ elements: kotlin.collections.Collection): kotlin.Boolean - public open override /*2*/ /*fake_override*/ fun addAll(/*0*/ elements: kotlin.collections.Collection): kotlin.Boolean - public open override /*2*/ /*fake_override*/ fun clear(): kotlin.Unit - public open override /*2*/ /*fake_override*/ fun contains(/*0*/ element: kotlin.Int): kotlin.Boolean - public open override /*2*/ /*fake_override*/ fun containsAll(/*0*/ elements: kotlin.collections.Collection): kotlin.Boolean - public open override /*2*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean - public abstract override /*2*/ /*fake_override*/ fun get(/*0*/ index: kotlin.Int): kotlin.Int - public open override /*2*/ /*fake_override*/ fun hashCode(): kotlin.Int - public open override /*2*/ /*fake_override*/ fun indexOf(/*0*/ element: kotlin.Int): kotlin.Int - public open override /*2*/ /*fake_override*/ fun isEmpty(): kotlin.Boolean - public open override /*2*/ /*fake_override*/ fun iterator(): kotlin.collections.MutableIterator - public open override /*2*/ /*fake_override*/ fun lastIndexOf(/*0*/ element: kotlin.Int): kotlin.Int - public open override /*2*/ /*fake_override*/ fun listIterator(): kotlin.collections.MutableListIterator - public open override /*2*/ /*fake_override*/ fun listIterator(/*0*/ index: kotlin.Int): kotlin.collections.MutableListIterator - invisible_fake open override /*1*/ /*fake_override*/ fun outOfBoundsMsg(/*0*/ index: kotlin.Int): kotlin.String! - invisible_fake open override /*1*/ /*fake_override*/ fun rangeCheckForAdd(/*0*/ index: kotlin.Int): kotlin.Unit - public open override /*2*/ fun remove(/*0*/ element: kotlin.Int): kotlin.Boolean - public open override /*2*/ /*fake_override*/ fun removeAll(/*0*/ elements: kotlin.collections.Collection): kotlin.Boolean - public open override /*2*/ fun removeAt(/*0*/ index: kotlin.Int): kotlin.Int - protected/*protected and package*/ open override /*1*/ /*fake_override*/ fun removeRange(/*0*/ fromIndex: kotlin.Int, /*1*/ toIndex: kotlin.Int): kotlin.Unit - public open override /*2*/ /*fake_override*/ fun retainAll(/*0*/ elements: kotlin.collections.Collection): kotlin.Boolean - public open override /*2*/ /*fake_override*/ fun set(/*0*/ index: kotlin.Int, /*1*/ element: kotlin.Int): kotlin.Int - public open override /*2*/ /*fake_override*/ fun subList(/*0*/ fromIndex: kotlin.Int, /*1*/ toIndex: kotlin.Int): kotlin.collections.MutableList - public open override /*1*/ /*fake_override*/ fun toArray(): kotlin.Array<(out) kotlin.Any!>! - public open override /*1*/ /*fake_override*/ fun toArray(/*0*/ a: kotlin.Array<(out) T!>!): kotlin.Array<(out) T!>! - public open override /*2*/ /*fake_override*/ fun toString(): kotlin.String -} - -public abstract class D : java.util.AbstractList { - public constructor D() - protected/*protected and package*/ final override /*1*/ /*fake_override*/ var modCount: kotlin.Int - public abstract override /*1*/ /*fake_override*/ val size: kotlin.Int - public open override /*1*/ /*fake_override*/ fun add(/*0*/ index: kotlin.Int, /*1*/ element: kotlin.Int!): kotlin.Unit - public open override /*1*/ /*fake_override*/ fun add(/*0*/ element: kotlin.Int!): kotlin.Boolean - public open override /*1*/ /*fake_override*/ fun addAll(/*0*/ index: kotlin.Int, /*1*/ elements: kotlin.collections.Collection): kotlin.Boolean - public open override /*1*/ /*fake_override*/ fun addAll(/*0*/ elements: kotlin.collections.Collection): kotlin.Boolean - public open override /*1*/ /*fake_override*/ fun clear(): kotlin.Unit - public open override /*1*/ /*fake_override*/ fun contains(/*0*/ element: kotlin.Int!): kotlin.Boolean - public open override /*1*/ /*fake_override*/ fun containsAll(/*0*/ elements: kotlin.collections.Collection): kotlin.Boolean - public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean - public abstract override /*1*/ /*fake_override*/ fun get(/*0*/ index: kotlin.Int): kotlin.Int! - public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int - public open override /*1*/ /*fake_override*/ fun indexOf(/*0*/ element: kotlin.Int!): kotlin.Int - public open override /*1*/ /*fake_override*/ fun isEmpty(): kotlin.Boolean - public open override /*1*/ /*fake_override*/ fun iterator(): kotlin.collections.MutableIterator - public open override /*1*/ /*fake_override*/ fun lastIndexOf(/*0*/ element: kotlin.Int!): kotlin.Int - public open override /*1*/ /*fake_override*/ fun listIterator(): kotlin.collections.MutableListIterator - public open override /*1*/ /*fake_override*/ fun listIterator(/*0*/ index: kotlin.Int): kotlin.collections.MutableListIterator - invisible_fake open override /*1*/ /*fake_override*/ fun outOfBoundsMsg(/*0*/ index: kotlin.Int): kotlin.String! - invisible_fake open override /*1*/ /*fake_override*/ fun rangeCheckForAdd(/*0*/ index: kotlin.Int): kotlin.Unit - public open override /*1*/ fun remove(/*0*/ element: kotlin.Int): kotlin.Boolean - public open override /*1*/ /*fake_override*/ fun removeAll(/*0*/ elements: kotlin.collections.Collection): kotlin.Boolean - public open override /*1*/ fun removeAt(/*0*/ index: kotlin.Int): kotlin.Int - protected/*protected and package*/ open override /*1*/ /*fake_override*/ fun removeRange(/*0*/ fromIndex: kotlin.Int, /*1*/ toIndex: kotlin.Int): kotlin.Unit - public open override /*1*/ /*fake_override*/ fun retainAll(/*0*/ elements: kotlin.collections.Collection): kotlin.Boolean - public open override /*1*/ /*fake_override*/ fun set(/*0*/ index: kotlin.Int, /*1*/ element: kotlin.Int!): kotlin.Int! - public open override /*1*/ /*fake_override*/ fun subList(/*0*/ fromIndex: kotlin.Int, /*1*/ toIndex: kotlin.Int): kotlin.collections.MutableList - public open override /*1*/ /*fake_override*/ fun toArray(): kotlin.Array<(out) kotlin.Any!>! - public open override /*1*/ /*fake_override*/ fun toArray(/*0*/ a: kotlin.Array<(out) T!>!): kotlin.Array<(out) T!>! - public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String -} diff --git a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/DiagnosticTestGenerated.java b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/DiagnosticTestGenerated.java index 917af0a3304..a8cf549e82f 100644 --- a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/DiagnosticTestGenerated.java +++ b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/DiagnosticTestGenerated.java @@ -21231,12 +21231,6 @@ public class DiagnosticTestGenerated extends AbstractDiagnosticTest { runTest("compiler/testData/diagnostics/tests/j+k/collectionOverrides/removeAt.kt"); } - @Test - @TestMetadata("removeAtInt.kt") - public void testRemoveAtInt() throws Exception { - runTest("compiler/testData/diagnostics/tests/j+k/collectionOverrides/removeAtInt.kt"); - } - @Test @TestMetadata("sizeFromKotlinOverriddenInJava.kt") public void testSizeFromKotlinOverriddenInJava() throws Exception { diff --git a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/BlackBoxCodegenTestGenerated.java b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/BlackBoxCodegenTestGenerated.java index 20a71b2b014..b5db28b4f9c 100644 --- a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/BlackBoxCodegenTestGenerated.java +++ b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/BlackBoxCodegenTestGenerated.java @@ -7427,6 +7427,18 @@ public class BlackBoxCodegenTestGenerated extends AbstractBlackBoxCodegenTest { runTest("compiler/testData/codegen/box/collections/removeAtInt.kt"); } + @Test + @TestMetadata("removeAtIntOverrideInJava.kt") + public void testRemoveAtIntOverrideInJava() throws Exception { + runTest("compiler/testData/codegen/box/collections/removeAtIntOverrideInJava.kt"); + } + + @Test + @TestMetadata("removeAtIntOverrideInJava2.kt") + public void testRemoveAtIntOverrideInJava2() throws Exception { + runTest("compiler/testData/codegen/box/collections/removeAtIntOverrideInJava2.kt"); + } + @Test @TestMetadata("removeClash.kt") public void testRemoveClash() throws Exception { diff --git a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/IrBlackBoxCodegenTestGenerated.java b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/IrBlackBoxCodegenTestGenerated.java index 4a37b361f8f..ae9c6f27f44 100644 --- a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/IrBlackBoxCodegenTestGenerated.java +++ b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/IrBlackBoxCodegenTestGenerated.java @@ -7661,6 +7661,18 @@ public class IrBlackBoxCodegenTestGenerated extends AbstractIrBlackBoxCodegenTes runTest("compiler/testData/codegen/box/collections/removeAtInt.kt"); } + @Test + @TestMetadata("removeAtIntOverrideInJava.kt") + public void testRemoveAtIntOverrideInJava() throws Exception { + runTest("compiler/testData/codegen/box/collections/removeAtIntOverrideInJava.kt"); + } + + @Test + @TestMetadata("removeAtIntOverrideInJava2.kt") + public void testRemoveAtIntOverrideInJava2() throws Exception { + runTest("compiler/testData/codegen/box/collections/removeAtIntOverrideInJava2.kt"); + } + @Test @TestMetadata("removeClash.kt") public void testRemoveClash() throws Exception { diff --git a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/IrBlackBoxCodegenWithIrInlinerTestGenerated.java b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/IrBlackBoxCodegenWithIrInlinerTestGenerated.java index 4476d563275..99c403b416c 100644 --- a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/IrBlackBoxCodegenWithIrInlinerTestGenerated.java +++ b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/codegen/IrBlackBoxCodegenWithIrInlinerTestGenerated.java @@ -7661,6 +7661,18 @@ public class IrBlackBoxCodegenWithIrInlinerTestGenerated extends AbstractIrBlack runTest("compiler/testData/codegen/box/collections/removeAtInt.kt"); } + @Test + @TestMetadata("removeAtIntOverrideInJava.kt") + public void testRemoveAtIntOverrideInJava() throws Exception { + runTest("compiler/testData/codegen/box/collections/removeAtIntOverrideInJava.kt"); + } + + @Test + @TestMetadata("removeAtIntOverrideInJava2.kt") + public void testRemoveAtIntOverrideInJava2() throws Exception { + runTest("compiler/testData/codegen/box/collections/removeAtIntOverrideInJava2.kt"); + } + @Test @TestMetadata("removeClash.kt") public void testRemoveClash() throws Exception { diff --git a/compiler/tests-gen/org/jetbrains/kotlin/codegen/LightAnalysisModeTestGenerated.java b/compiler/tests-gen/org/jetbrains/kotlin/codegen/LightAnalysisModeTestGenerated.java index 2f98dc81c35..47e8d0975b3 100644 --- a/compiler/tests-gen/org/jetbrains/kotlin/codegen/LightAnalysisModeTestGenerated.java +++ b/compiler/tests-gen/org/jetbrains/kotlin/codegen/LightAnalysisModeTestGenerated.java @@ -6678,6 +6678,16 @@ public class LightAnalysisModeTestGenerated extends AbstractLightAnalysisModeTes runTest("compiler/testData/codegen/box/collections/removeAtInt.kt"); } + @TestMetadata("removeAtIntOverrideInJava.kt") + public void testRemoveAtIntOverrideInJava() throws Exception { + runTest("compiler/testData/codegen/box/collections/removeAtIntOverrideInJava.kt"); + } + + @TestMetadata("removeAtIntOverrideInJava2.kt") + public void testRemoveAtIntOverrideInJava2() throws Exception { + runTest("compiler/testData/codegen/box/collections/removeAtIntOverrideInJava2.kt"); + } + @TestMetadata("removeClash.kt") public void testRemoveClash() throws Exception { runTest("compiler/testData/codegen/box/collections/removeClash.kt");