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 03f898d6fcf..dab7df7e377 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 @@ -30555,6 +30555,12 @@ public class DiagnosticCompilerTestFE10TestdataTestGenerated extends AbstractDia public void testKt57620() throws Exception { runTest("compiler/testData/diagnostics/tests/rawTypes/kt57620.kt"); } + + @Test + @TestMetadata("rawTypeOverrides.kt") + public void testRawTypeOverrides() throws Exception { + runTest("compiler/testData/diagnostics/tests/rawTypes/rawTypeOverrides.kt"); + } } @Nested 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 31c39c8b45c..8c33af61a80 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 @@ -30555,6 +30555,12 @@ public class LLFirPreresolvedReversedDiagnosticCompilerFE10TestDataTestGenerated public void testKt57620() throws Exception { runTest("compiler/testData/diagnostics/tests/rawTypes/kt57620.kt"); } + + @Test + @TestMetadata("rawTypeOverrides.kt") + public void testRawTypeOverrides() throws Exception { + runTest("compiler/testData/diagnostics/tests/rawTypes/rawTypeOverrides.kt"); + } } @Nested 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 0ce0247bb0d..01dbc4c889a 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 @@ -28301,6 +28301,12 @@ public class FirLightTreeOldFrontendDiagnosticsTestGenerated extends AbstractFir public void testKt57620() throws Exception { runTest("compiler/testData/diagnostics/tests/rawTypes/kt57620.kt"); } + + @Test + @TestMetadata("rawTypeOverrides.kt") + public void testRawTypeOverrides() throws Exception { + runTest("compiler/testData/diagnostics/tests/rawTypes/rawTypeOverrides.kt"); + } } @Nested 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 73114a7a106..c0a537d5da8 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 @@ -28307,6 +28307,12 @@ public class FirPsiOldFrontendDiagnosticsTestGenerated extends AbstractFirPsiDia public void testKt57620() throws Exception { runTest("compiler/testData/diagnostics/tests/rawTypes/kt57620.kt"); } + + @Test + @TestMetadata("rawTypeOverrides.kt") + public void testRawTypeOverrides() throws Exception { + runTest("compiler/testData/diagnostics/tests/rawTypes/rawTypeOverrides.kt"); + } } @Nested diff --git a/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/ir/FirLightTreeJvmIrTextTestGenerated.java b/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/ir/FirLightTreeJvmIrTextTestGenerated.java index b412f234d77..06bef94a495 100644 --- a/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/ir/FirLightTreeJvmIrTextTestGenerated.java +++ b/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/ir/FirLightTreeJvmIrTextTestGenerated.java @@ -2691,6 +2691,12 @@ public class FirLightTreeJvmIrTextTestGenerated extends AbstractFirLightTreeJvmI public void testFakeOverrideOfRaw() throws Exception { runTest("compiler/testData/ir/irText/fakeOverrides/fakeOverrideOfRaw.kt"); } + + @Test + @TestMetadata("fakeOverrideOfRawJavaCollection.kt") + public void testFakeOverrideOfRawJavaCollection() throws Exception { + runTest("compiler/testData/ir/irText/fakeOverrides/fakeOverrideOfRawJavaCollection.kt"); + } } @Nested diff --git a/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/ir/FirPsiJvmIrTextTestGenerated.java b/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/ir/FirPsiJvmIrTextTestGenerated.java index 84aa2b20bd5..afeb5217959 100644 --- a/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/ir/FirPsiJvmIrTextTestGenerated.java +++ b/compiler/fir/fir2ir/tests-gen/org/jetbrains/kotlin/test/runners/ir/FirPsiJvmIrTextTestGenerated.java @@ -2691,6 +2691,12 @@ public class FirPsiJvmIrTextTestGenerated extends AbstractFirPsiJvmIrTextTest { public void testFakeOverrideOfRaw() throws Exception { runTest("compiler/testData/ir/irText/fakeOverrides/fakeOverrideOfRaw.kt"); } + + @Test + @TestMetadata("fakeOverrideOfRawJavaCollection.kt") + public void testFakeOverrideOfRawJavaCollection() throws Exception { + runTest("compiler/testData/ir/irText/fakeOverrides/fakeOverrideOfRawJavaCollection.kt"); + } } @Nested diff --git a/compiler/fir/java/src/org/jetbrains/kotlin/fir/java/scopes/JavaClassUseSiteMemberScope.kt b/compiler/fir/java/src/org/jetbrains/kotlin/fir/java/scopes/JavaClassUseSiteMemberScope.kt index fad066aefce..bb5ebb70ec7 100644 --- a/compiler/fir/java/src/org/jetbrains/kotlin/fir/java/scopes/JavaClassUseSiteMemberScope.kt +++ b/compiler/fir/java/src/org/jetbrains/kotlin/fir/java/scopes/JavaClassUseSiteMemberScope.kt @@ -851,6 +851,12 @@ class JavaClassUseSiteMemberScope( // It's either overrides Collection.contains(Object) or Collection.containsAll(Collection) or similar methods private fun FirNamedFunctionSymbol.hasErasedParameters(): Boolean { + // We're only interested in Java declarations with erased parameters. + // Removing this check would also return true for substitution overrides for raw types, + // which leads to false positives like NOTHING_TO_OVERRIDE. + // See compiler/testData/diagnostics/tests/rawTypes/rawTypeOverrides.kt. + if (!this.isJavaOrEnhancement) return false + val valueParameter = fir.valueParameters.first() val parameterType = valueParameter.returnTypeRef.toConeKotlinTypeProbablyFlexible(session, typeParameterStack) val upperBound = parameterType.upperBoundIfFlexible() diff --git a/compiler/testData/codegen/box/collections/irrelevantImplMutableListSubstitution.kt b/compiler/testData/codegen/box/collections/irrelevantImplMutableListSubstitution.kt index b699a66b0ff..6e60e2782f2 100644 --- a/compiler/testData/codegen/box/collections/irrelevantImplMutableListSubstitution.kt +++ b/compiler/testData/codegen/box/collections/irrelevantImplMutableListSubstitution.kt @@ -1,5 +1,3 @@ -// IGNORE_BACKEND_K2: JVM_IR, JS_IR -// FIR status: wrong CONFLICTING_INHERITED_JVM_DECLARATIONS, probably provoked by override mapping error // TARGET_BACKEND: JVM // FILE: J.java diff --git a/compiler/testData/diagnostics/tests/rawTypes/rawTypeOverrides.kt b/compiler/testData/diagnostics/tests/rawTypes/rawTypeOverrides.kt new file mode 100644 index 00000000000..f664225b674 --- /dev/null +++ b/compiler/testData/diagnostics/tests/rawTypes/rawTypeOverrides.kt @@ -0,0 +1,16 @@ +// FIR_IDENTICAL +// FILE: Java1.java +import java.util.ArrayList; + +public abstract class Java1 extends ArrayList { } + +// FILE: test.kt +abstract class C1 : Java1() { + override fun removeAll(elements: Collection<*>): Boolean { + return true + } +} + +fun test(java1: Java1, l: List<*>) { + java1.removeAll(l) +} \ No newline at end of file diff --git a/compiler/testData/ir/irText/fakeOverrides/fakeOverrideOfRawJavaCollection.fir.ir.txt b/compiler/testData/ir/irText/fakeOverrides/fakeOverrideOfRawJavaCollection.fir.ir.txt new file mode 100644 index 00000000000..57419b4dcf5 --- /dev/null +++ b/compiler/testData/ir/irText/fakeOverrides/fakeOverrideOfRawJavaCollection.fir.ir.txt @@ -0,0 +1,157 @@ +FILE fqName: fileName:/1.kt + CLASS CLASS name:E modality:ABSTRACT visibility:public superTypes:[.Java1] + $this: VALUE_PARAMETER INSTANCE_RECEIVER name: type:.E + CONSTRUCTOR visibility:public <> () returnType:.E [primary] + BLOCK_BODY + DELEGATING_CONSTRUCTOR_CALL 'public constructor () declared in .Java1' + INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:E modality:ABSTRACT visibility:public superTypes:[.Java1]' + PROPERTY FAKE_OVERRIDE name:size visibility:public modality:OPEN [fake_override,val] + overridden: + public open size: kotlin.Int + FUN FAKE_OVERRIDE name: visibility:public modality:OPEN <> ($this:java.util.ArrayList<@[FlexibleNullability] kotlin.Any?>) returnType:kotlin.Int [fake_override] + correspondingProperty: PROPERTY FAKE_OVERRIDE name:size visibility:public modality:OPEN [fake_override,val] + overridden: + public open fun (): kotlin.Int declared in .Java1 + $this: VALUE_PARAMETER name: type:java.util.ArrayList<@[FlexibleNullability] kotlin.Any?> + FUN FAKE_OVERRIDE name:trimToSize visibility:public modality:OPEN <> ($this:java.util.ArrayList<@[FlexibleNullability] kotlin.Any?>) returnType:kotlin.Unit [fake_override] + overridden: + public open fun trimToSize (): kotlin.Unit declared in .Java1 + $this: VALUE_PARAMETER name: type:java.util.ArrayList<@[FlexibleNullability] kotlin.Any?> + FUN FAKE_OVERRIDE name:ensureCapacity visibility:public modality:OPEN <> ($this:java.util.ArrayList<@[FlexibleNullability] kotlin.Any?>, p0:kotlin.Int) returnType:kotlin.Unit [fake_override] + overridden: + public open fun ensureCapacity (p0: kotlin.Int): kotlin.Unit declared in .Java1 + $this: VALUE_PARAMETER name: type:java.util.ArrayList<@[FlexibleNullability] kotlin.Any?> + VALUE_PARAMETER name:p0 index:0 type:kotlin.Int + FUN FAKE_OVERRIDE name:isEmpty visibility:public modality:OPEN <> ($this:java.util.ArrayList<@[FlexibleNullability] kotlin.Any?>) returnType:kotlin.Boolean [fake_override] + overridden: + public open fun isEmpty (): kotlin.Boolean declared in .Java1 + $this: VALUE_PARAMETER name: type:java.util.ArrayList<@[FlexibleNullability] kotlin.Any?> + FUN FAKE_OVERRIDE name:contains visibility:public modality:OPEN <> ($this:java.util.ArrayList<@[FlexibleNullability] kotlin.Any?>, p0:@[FlexibleNullability] kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator] + overridden: + public open fun contains (p0: @[FlexibleNullability] kotlin.Any?): kotlin.Boolean declared in .Java1 + $this: VALUE_PARAMETER name: type:java.util.ArrayList<@[FlexibleNullability] kotlin.Any?> + VALUE_PARAMETER name:p0 index:0 type:@[FlexibleNullability] kotlin.Any? + FUN FAKE_OVERRIDE name:indexOf visibility:public modality:OPEN <> ($this:java.util.ArrayList<@[FlexibleNullability] kotlin.Any?>, p0:@[FlexibleNullability] kotlin.Any?) returnType:kotlin.Int [fake_override] + overridden: + public open fun indexOf (p0: @[FlexibleNullability] kotlin.Any?): kotlin.Int declared in .Java1 + $this: VALUE_PARAMETER name: type:java.util.ArrayList<@[FlexibleNullability] kotlin.Any?> + VALUE_PARAMETER name:p0 index:0 type:@[FlexibleNullability] kotlin.Any? + FUN FAKE_OVERRIDE name:lastIndexOf visibility:public modality:OPEN <> ($this:java.util.ArrayList<@[FlexibleNullability] kotlin.Any?>, p0:@[FlexibleNullability] kotlin.Any?) returnType:kotlin.Int [fake_override] + overridden: + public open fun lastIndexOf (p0: @[FlexibleNullability] kotlin.Any?): kotlin.Int declared in .Java1 + $this: VALUE_PARAMETER name: type:java.util.ArrayList<@[FlexibleNullability] kotlin.Any?> + VALUE_PARAMETER name:p0 index:0 type:@[FlexibleNullability] kotlin.Any? + FUN FAKE_OVERRIDE name:clone visibility:public modality:OPEN <> ($this:java.util.ArrayList<@[FlexibleNullability] kotlin.Any?>) returnType:@[EnhancedNullability] kotlin.Any [fake_override] + overridden: + public open fun clone (): @[EnhancedNullability] kotlin.Any declared in .Java1 + $this: VALUE_PARAMETER name: type:java.util.ArrayList<@[FlexibleNullability] kotlin.Any?> + FUN FAKE_OVERRIDE name:toArray visibility:public modality:OPEN <> ($this:java.util.ArrayList<@[FlexibleNullability] kotlin.Any?>) returnType:@[FlexibleNullability] @[FlexibleArrayElementVariance] kotlin.Array? [fake_override] + overridden: + public open fun toArray (): @[FlexibleNullability] @[FlexibleArrayElementVariance] kotlin.Array? declared in .Java1 + $this: VALUE_PARAMETER name: type:java.util.ArrayList<@[FlexibleNullability] kotlin.Any?> + FUN FAKE_OVERRIDE name:toArray visibility:public modality:OPEN ($this:java.util.ArrayList<@[FlexibleNullability] kotlin.Any?>, p0:@[FlexibleNullability] @[FlexibleArrayElementVariance] kotlin.Array?) returnType:@[FlexibleNullability] @[FlexibleArrayElementVariance] kotlin.Array? [fake_override] + overridden: + public open fun toArray (p0: @[FlexibleNullability] @[FlexibleArrayElementVariance] kotlin.Array?): @[FlexibleNullability] @[FlexibleArrayElementVariance] kotlin.Array? declared in .Java1 + TYPE_PARAMETER name:T index:0 variance: superTypes:[@[FlexibleNullability] kotlin.Any?] reified:false + $this: VALUE_PARAMETER name: type:java.util.ArrayList<@[FlexibleNullability] kotlin.Any?> + VALUE_PARAMETER name:p0 index:0 type:@[FlexibleNullability] @[FlexibleArrayElementVariance] kotlin.Array? + FUN FAKE_OVERRIDE name:get visibility:public modality:OPEN <> ($this:java.util.ArrayList<@[FlexibleNullability] kotlin.Any?>, p0:kotlin.Int) returnType:@[FlexibleNullability] kotlin.Any? [fake_override,operator] + overridden: + public open fun get (p0: kotlin.Int): @[FlexibleNullability] kotlin.Any? declared in .Java1 + $this: VALUE_PARAMETER name: type:java.util.ArrayList<@[FlexibleNullability] kotlin.Any?> + VALUE_PARAMETER name:p0 index:0 type:kotlin.Int + FUN FAKE_OVERRIDE name:set visibility:public modality:OPEN <> ($this:java.util.ArrayList<@[FlexibleNullability] kotlin.Any?>, p0:kotlin.Int, p1:@[FlexibleNullability] kotlin.Any?) returnType:@[FlexibleNullability] kotlin.Any? [fake_override,operator] + overridden: + public open fun set (p0: kotlin.Int, p1: @[FlexibleNullability] kotlin.Any?): @[FlexibleNullability] kotlin.Any? declared in .Java1 + $this: VALUE_PARAMETER name: type:java.util.ArrayList<@[FlexibleNullability] kotlin.Any?> + VALUE_PARAMETER name:p0 index:0 type:kotlin.Int + VALUE_PARAMETER name:p1 index:1 type:@[FlexibleNullability] kotlin.Any? + FUN FAKE_OVERRIDE name:add visibility:public modality:OPEN <> ($this:java.util.ArrayList<@[FlexibleNullability] kotlin.Any?>, p0:@[FlexibleNullability] kotlin.Any?) returnType:kotlin.Boolean [fake_override] + overridden: + public open fun add (p0: @[FlexibleNullability] kotlin.Any?): kotlin.Boolean declared in .Java1 + $this: VALUE_PARAMETER name: type:java.util.ArrayList<@[FlexibleNullability] kotlin.Any?> + VALUE_PARAMETER name:p0 index:0 type:@[FlexibleNullability] kotlin.Any? + FUN FAKE_OVERRIDE name:add visibility:public modality:OPEN <> ($this:java.util.ArrayList<@[FlexibleNullability] kotlin.Any?>, p0:kotlin.Int, p1:@[FlexibleNullability] kotlin.Any?) returnType:kotlin.Unit [fake_override] + overridden: + public open fun add (p0: kotlin.Int, p1: @[FlexibleNullability] kotlin.Any?): kotlin.Unit declared in .Java1 + $this: VALUE_PARAMETER name: type:java.util.ArrayList<@[FlexibleNullability] kotlin.Any?> + VALUE_PARAMETER name:p0 index:0 type:kotlin.Int + VALUE_PARAMETER name:p1 index:1 type:@[FlexibleNullability] kotlin.Any? + FUN FAKE_OVERRIDE name:remove visibility:public modality:OPEN <> ($this:java.util.ArrayList<@[FlexibleNullability] kotlin.Any?>, p0:@[FlexibleNullability] kotlin.Any?) returnType:kotlin.Boolean [fake_override] + overridden: + public open fun remove (p0: @[FlexibleNullability] kotlin.Any?): kotlin.Boolean declared in .Java1 + $this: VALUE_PARAMETER name: type:java.util.ArrayList<@[FlexibleNullability] kotlin.Any?> + VALUE_PARAMETER name:p0 index:0 type:@[FlexibleNullability] kotlin.Any? + FUN FAKE_OVERRIDE name:clear visibility:public modality:OPEN <> ($this:java.util.ArrayList<@[FlexibleNullability] kotlin.Any?>) returnType:kotlin.Unit [fake_override] + overridden: + public open fun clear (): kotlin.Unit declared in .Java1 + $this: VALUE_PARAMETER name: type:java.util.ArrayList<@[FlexibleNullability] kotlin.Any?> + FUN FAKE_OVERRIDE name:addAll visibility:public modality:OPEN <> ($this:java.util.ArrayList<@[FlexibleNullability] kotlin.Any?>, p0:@[RawType] kotlin.collections.Collection) returnType:kotlin.Boolean [fake_override] + overridden: + public open fun addAll (p0: @[RawType] kotlin.collections.Collection): kotlin.Boolean declared in .Java1 + $this: VALUE_PARAMETER name: type:java.util.ArrayList<@[FlexibleNullability] kotlin.Any?> + VALUE_PARAMETER name:p0 index:0 type:@[RawType] kotlin.collections.Collection + FUN FAKE_OVERRIDE name:addAll visibility:public modality:OPEN <> ($this:java.util.ArrayList<@[FlexibleNullability] kotlin.Any?>, p0:kotlin.Int, p1:@[RawType] kotlin.collections.Collection) returnType:kotlin.Boolean [fake_override] + overridden: + public open fun addAll (p0: kotlin.Int, p1: @[RawType] kotlin.collections.Collection): kotlin.Boolean declared in .Java1 + $this: VALUE_PARAMETER name: type:java.util.ArrayList<@[FlexibleNullability] kotlin.Any?> + VALUE_PARAMETER name:p0 index:0 type:kotlin.Int + VALUE_PARAMETER name:p1 index:1 type:@[RawType] kotlin.collections.Collection + FUN FAKE_OVERRIDE name:removeRange visibility:protected/*protected and package*/ modality:OPEN <> ($this:java.util.ArrayList<@[FlexibleNullability] kotlin.Any?>, p0:kotlin.Int, p1:kotlin.Int) returnType:kotlin.Unit [fake_override] + overridden: + protected/*protected and package*/ open fun removeRange (p0: kotlin.Int, p1: kotlin.Int): kotlin.Unit declared in .Java1 + $this: VALUE_PARAMETER name: type:java.util.ArrayList<@[FlexibleNullability] kotlin.Any?> + VALUE_PARAMETER name:p0 index:0 type:kotlin.Int + VALUE_PARAMETER name:p1 index:1 type:kotlin.Int + FUN FAKE_OVERRIDE name:removeAll visibility:public modality:OPEN <> ($this:java.util.ArrayList<@[FlexibleNullability] kotlin.Any?>, p0:@[RawType] kotlin.collections.Collection) returnType:kotlin.Boolean [fake_override] + overridden: + public open fun removeAll (p0: @[RawType] kotlin.collections.Collection): kotlin.Boolean declared in .Java1 + $this: VALUE_PARAMETER name: type:java.util.ArrayList<@[FlexibleNullability] kotlin.Any?> + VALUE_PARAMETER name:p0 index:0 type:@[RawType] kotlin.collections.Collection + FUN FAKE_OVERRIDE name:retainAll visibility:public modality:OPEN <> ($this:java.util.ArrayList<@[FlexibleNullability] kotlin.Any?>, p0:@[RawType] kotlin.collections.Collection) returnType:kotlin.Boolean [fake_override] + overridden: + public open fun retainAll (p0: @[RawType] kotlin.collections.Collection): kotlin.Boolean declared in .Java1 + $this: VALUE_PARAMETER name: type:java.util.ArrayList<@[FlexibleNullability] kotlin.Any?> + VALUE_PARAMETER name:p0 index:0 type:@[RawType] kotlin.collections.Collection + FUN FAKE_OVERRIDE name:listIterator visibility:public modality:OPEN <> ($this:java.util.ArrayList<@[FlexibleNullability] kotlin.Any?>, p0:kotlin.Int) returnType:@[RawType] kotlin.collections.MutableListIterator [fake_override] + overridden: + public open fun listIterator (p0: kotlin.Int): @[RawType] kotlin.collections.MutableListIterator declared in .Java1 + $this: VALUE_PARAMETER name: type:java.util.ArrayList<@[FlexibleNullability] kotlin.Any?> + VALUE_PARAMETER name:p0 index:0 type:kotlin.Int + FUN FAKE_OVERRIDE name:listIterator visibility:public modality:OPEN <> ($this:java.util.ArrayList<@[FlexibleNullability] kotlin.Any?>) returnType:@[RawType] kotlin.collections.MutableListIterator [fake_override] + overridden: + public open fun listIterator (): @[RawType] kotlin.collections.MutableListIterator declared in .Java1 + $this: VALUE_PARAMETER name: type:java.util.ArrayList<@[FlexibleNullability] kotlin.Any?> + FUN FAKE_OVERRIDE name:iterator visibility:public modality:OPEN <> ($this:java.util.ArrayList<@[FlexibleNullability] kotlin.Any?>) returnType:@[RawType] kotlin.collections.MutableIterator [fake_override,operator] + overridden: + public open fun iterator (): @[RawType] kotlin.collections.MutableIterator declared in .Java1 + $this: VALUE_PARAMETER name: type:java.util.ArrayList<@[FlexibleNullability] kotlin.Any?> + FUN FAKE_OVERRIDE name:subList visibility:public modality:OPEN <> ($this:java.util.ArrayList<@[FlexibleNullability] kotlin.Any?>, p0:kotlin.Int, p1:kotlin.Int) returnType:@[RawType] kotlin.collections.MutableList [fake_override] + overridden: + public open fun subList (p0: kotlin.Int, p1: kotlin.Int): @[RawType] kotlin.collections.MutableList declared in .Java1 + $this: VALUE_PARAMETER name: type:java.util.ArrayList<@[FlexibleNullability] kotlin.Any?> + VALUE_PARAMETER name:p0 index:0 type:kotlin.Int + VALUE_PARAMETER name:p1 index:1 type:kotlin.Int + FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:java.util.AbstractList<@[FlexibleNullability] kotlin.Any?>, p0:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator] + overridden: + public open fun equals (p0: kotlin.Any?): kotlin.Boolean declared in .Java1 + $this: VALUE_PARAMETER name: type:java.util.AbstractList<@[FlexibleNullability] kotlin.Any?> + VALUE_PARAMETER name:p0 index:0 type:kotlin.Any? + FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:java.util.AbstractList<@[FlexibleNullability] kotlin.Any?>) returnType:kotlin.Int [fake_override] + overridden: + public open fun hashCode (): kotlin.Int declared in .Java1 + $this: VALUE_PARAMETER name: type:java.util.AbstractList<@[FlexibleNullability] kotlin.Any?> + FUN FAKE_OVERRIDE name:containsAll visibility:public modality:OPEN <> ($this:java.util.AbstractCollection<@[FlexibleNullability] kotlin.Any?>, p0:@[RawType] kotlin.collections.Collection) returnType:kotlin.Boolean [fake_override] + overridden: + public open fun containsAll (p0: @[RawType] kotlin.collections.Collection): kotlin.Boolean declared in .Java1 + $this: VALUE_PARAMETER name: type:java.util.AbstractCollection<@[FlexibleNullability] kotlin.Any?> + VALUE_PARAMETER name:p0 index:0 type:@[RawType] kotlin.collections.Collection + FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:java.util.AbstractCollection<@[FlexibleNullability] kotlin.Any?>) returnType:@[EnhancedNullability] kotlin.String [fake_override] + overridden: + public open fun toString (): @[EnhancedNullability] kotlin.String declared in .Java1 + $this: VALUE_PARAMETER name: type:java.util.AbstractCollection<@[FlexibleNullability] kotlin.Any?> + FUN FAKE_OVERRIDE name:removeAt visibility:public modality:OPEN <> ($this:java.util.ArrayList<@[FlexibleNullability] kotlin.Any?>, p0:kotlin.Int) returnType:@[FlexibleNullability] kotlin.Any? [fake_override,operator] + overridden: + public open fun removeAt (p0: kotlin.Int): @[FlexibleNullability] kotlin.Any? declared in .Java1 + $this: VALUE_PARAMETER name: type:java.util.ArrayList<@[FlexibleNullability] kotlin.Any?> + VALUE_PARAMETER name:p0 index:0 type:kotlin.Int diff --git a/compiler/testData/ir/irText/fakeOverrides/fakeOverrideOfRawJavaCollection.fir.kt.txt b/compiler/testData/ir/irText/fakeOverrides/fakeOverrideOfRawJavaCollection.fir.kt.txt new file mode 100644 index 00000000000..e57e7fd179b --- /dev/null +++ b/compiler/testData/ir/irText/fakeOverrides/fakeOverrideOfRawJavaCollection.fir.kt.txt @@ -0,0 +1,8 @@ +abstract class E : Java1 { + constructor() /* primary */ { + super/*Java1*/() + /* () */ + + } + +} diff --git a/compiler/testData/ir/irText/fakeOverrides/fakeOverrideOfRawJavaCollection.fir.sig.kt.txt b/compiler/testData/ir/irText/fakeOverrides/fakeOverrideOfRawJavaCollection.fir.sig.kt.txt new file mode 100644 index 00000000000..2309349638d --- /dev/null +++ b/compiler/testData/ir/irText/fakeOverrides/fakeOverrideOfRawJavaCollection.fir.sig.kt.txt @@ -0,0 +1,208 @@ +// CHECK: +// Mangled name: E +// Public signature: /E|null[0] +abstract class E : Java1 { + // CHECK: + // Mangled name: E#(){} + // Public signature: /E.|-5645683436151566731[0] + // Public signature debug description: (){} + constructor() /* primary */ + + // CHECK JVM_IR: + // Mangled name: E#add(kotlin.Any?){}kotlin.Boolean + // Public signature: /E.add|8629542948597441975[0] + // Public signature debug description: add(kotlin.Any?){}kotlin.Boolean + /* fake */ override fun add(p0: Any?): Boolean + + // CHECK: + // Mangled name: E#add(kotlin.Int;kotlin.Any?){} + // Public signature: /E.add|1404433481179094523[0] + // Public signature debug description: add(kotlin.Int;kotlin.Any?){} + /* fake */ override fun add(p0: Int, p1: Any?): Unit + + // CHECK JVM_IR: + // Mangled name: E#addAll(kotlin.collections.Collection){}kotlin.Boolean + // Mangled name for the signature by IR: addAll(kotlin.collections.Collection){}kotlin.Boolean + // Mangled name for the signature by Frontend: addAll(kotlin.collections.Collection{EnhancedNullability}){}kotlin.Boolean + // Public signature: /E.addAll|1853624435708785695[0] + // Public signature debug description: addAll(kotlin.collections.Collection){}kotlin.Boolean + /* fake */ override fun addAll(p0: Collection): Boolean + + // CHECK JVM_IR: + // Mangled name: E#addAll(kotlin.Int;kotlin.collections.Collection){}kotlin.Boolean + // Mangled name for the signature by IR: addAll(kotlin.Int;kotlin.collections.Collection){}kotlin.Boolean + // Mangled name for the signature by Frontend: addAll(kotlin.Int;kotlin.collections.Collection{EnhancedNullability}){}kotlin.Boolean + // Public signature: /E.addAll|-92648757594494376[0] + // Public signature debug description: addAll(kotlin.Int;kotlin.collections.Collection){}kotlin.Boolean + /* fake */ override fun addAll(p0: Int, p1: Collection): Boolean + + // CHECK: + // Mangled name: E#clear(){} + // Public signature: /E.clear|-6446868449915108923[0] + // Public signature debug description: clear(){} + /* fake */ override fun clear(): Unit + + // CHECK JVM_IR: + // Mangled name: E#clone(){}kotlin.Any{EnhancedNullability} + // Public signature: /E.clone|178802004086941196[0] + // Public signature debug description: clone(){}kotlin.Any{EnhancedNullability} + /* fake */ override fun clone(): @EnhancedNullability Any + + // CHECK JVM_IR: + // Mangled name: E#contains(kotlin.Any?){}kotlin.Boolean + // Public signature: /E.contains|4314304964322748880[0] + // Public signature debug description: contains(kotlin.Any?){}kotlin.Boolean + /* fake */ override operator fun contains(p0: Any?): Boolean + + // CHECK JVM_IR: + // Mangled name: E#containsAll(kotlin.collections.Collection){}kotlin.Boolean + // Public signature: /E.containsAll|7057326425365175105[0] + // Public signature debug description: containsAll(kotlin.collections.Collection){}kotlin.Boolean + /* fake */ override fun containsAll(p0: Collection): Boolean + + // CHECK: + // Mangled name: E#ensureCapacity(kotlin.Int){} + // Public signature: /E.ensureCapacity|-7913402150632352615[0] + // Public signature debug description: ensureCapacity(kotlin.Int){} + /* fake */ override fun ensureCapacity(p0: Int): Unit + + // CHECK JVM_IR: + // Mangled name: E#equals(kotlin.Any?){}kotlin.Boolean + // Public signature: /E.equals|722809408929142791[0] + // Public signature debug description: equals(kotlin.Any?){}kotlin.Boolean + /* fake */ override operator fun equals(p0: Any?): Boolean + + // CHECK JVM_IR: + // Mangled name: E#get(kotlin.Int){}kotlin.Any? + // Public signature: /E.get|1795875139119824730[0] + // Public signature debug description: get(kotlin.Int){}kotlin.Any? + /* fake */ override operator fun get(p0: Int): Any? + + // CHECK JVM_IR: + // Mangled name: E#hashCode(){}kotlin.Int + // Public signature: /E.hashCode|-8048879360829830756[0] + // Public signature debug description: hashCode(){}kotlin.Int + /* fake */ override fun hashCode(): Int + + // CHECK JVM_IR: + // Mangled name: E#indexOf(kotlin.Any?){}kotlin.Int + // Public signature: /E.indexOf|-168313163175862320[0] + // Public signature debug description: indexOf(kotlin.Any?){}kotlin.Int + /* fake */ override fun indexOf(p0: Any?): Int + + // CHECK JVM_IR: + // Mangled name: E#isEmpty(){}kotlin.Boolean + // Public signature: /E.isEmpty|-626562167393617703[0] + // Public signature debug description: isEmpty(){}kotlin.Boolean + /* fake */ override fun isEmpty(): Boolean + + // CHECK JVM_IR: + // Mangled name: E#iterator(){}kotlin.collections.MutableIterator + // Mangled name for the signature by IR: iterator(){}kotlin.collections.MutableIterator + // Mangled name for the signature by Frontend: iterator(){}kotlin.collections.MutableIterator{EnhancedNullability} + // Public signature: /E.iterator|5172039261324384933[0] + // Public signature debug description: iterator(){}kotlin.collections.MutableIterator + /* fake */ override operator fun iterator(): MutableIterator + + // CHECK JVM_IR: + // Mangled name: E#lastIndexOf(kotlin.Any?){}kotlin.Int + // Public signature: /E.lastIndexOf|3021938800095386716[0] + // Public signature debug description: lastIndexOf(kotlin.Any?){}kotlin.Int + /* fake */ override fun lastIndexOf(p0: Any?): Int + + // CHECK JVM_IR: + // Mangled name: E#listIterator(){}kotlin.collections.MutableListIterator + // Mangled name for the signature by IR: listIterator(){}kotlin.collections.MutableListIterator + // Mangled name for the signature by Frontend: listIterator(){}kotlin.collections.MutableListIterator{EnhancedNullability} + // Public signature: /E.listIterator|-1621664620524293242[0] + // Public signature debug description: listIterator(){}kotlin.collections.MutableListIterator + /* fake */ override fun listIterator(): MutableListIterator + + // CHECK JVM_IR: + // Mangled name: E#listIterator(kotlin.Int){}kotlin.collections.MutableListIterator + // Mangled name for the signature by IR: listIterator(kotlin.Int){}kotlin.collections.MutableListIterator + // Mangled name for the signature by Frontend: listIterator(kotlin.Int){}kotlin.collections.MutableListIterator{EnhancedNullability} + // Public signature: /E.listIterator|2617555913478172101[0] + // Public signature debug description: listIterator(kotlin.Int){}kotlin.collections.MutableListIterator + /* fake */ override fun listIterator(p0: Int): MutableListIterator + + // CHECK JVM_IR: + // Mangled name: E#remove(kotlin.Any?){}kotlin.Boolean + // Public signature: /E.remove|-4847290102784382063[0] + // Public signature debug description: remove(kotlin.Any?){}kotlin.Boolean + /* fake */ override fun remove(p0: Any?): Boolean + + // CHECK JVM_IR: + // Mangled name: E#removeAll(kotlin.collections.Collection){}kotlin.Boolean + // Public signature: /E.removeAll|2083414713666946876[0] + // Public signature debug description: removeAll(kotlin.collections.Collection){}kotlin.Boolean + /* fake */ override fun removeAll(p0: Collection): Boolean + + // CHECK JVM_IR: + // Mangled name: E#removeAt(kotlin.Int){}kotlin.Any? + // Public signature: /E.removeAt|-8980852212530989044[0] + // Public signature debug description: removeAt(kotlin.Int){}kotlin.Any? + /* fake */ override operator fun removeAt(p0: Int): Any? + + // CHECK: + // Mangled name: E#removeRange(kotlin.Int;kotlin.Int){} + // Public signature: /E.removeRange|7632320944993890593[0] + // Public signature debug description: removeRange(kotlin.Int;kotlin.Int){} + protected_and_package /* fake */ override fun removeRange(p0: Int, p1: Int): Unit + + // CHECK JVM_IR: + // Mangled name: E#retainAll(kotlin.collections.Collection){}kotlin.Boolean + // Public signature: /E.retainAll|-4369081002402657372[0] + // Public signature debug description: retainAll(kotlin.collections.Collection){}kotlin.Boolean + /* fake */ override fun retainAll(p0: Collection): Boolean + + // CHECK JVM_IR: + // Mangled name: E#set(kotlin.Int;kotlin.Any?){}kotlin.Any? + // Public signature: /E.set|8583092022568728310[0] + // Public signature debug description: set(kotlin.Int;kotlin.Any?){}kotlin.Any? + /* fake */ override operator fun set(p0: Int, p1: Any?): Any? + + // CHECK JVM_IR: + // Mangled name: E#subList(kotlin.Int;kotlin.Int){}kotlin.collections.MutableList + // Mangled name for the signature by IR: subList(kotlin.Int;kotlin.Int){}kotlin.collections.MutableList + // Mangled name for the signature by Frontend: subList(kotlin.Int;kotlin.Int){}kotlin.collections.MutableList{EnhancedNullability} + // Public signature: /E.subList|5649745263147539891[0] + // Public signature debug description: subList(kotlin.Int;kotlin.Int){}kotlin.collections.MutableList + /* fake */ override fun subList(p0: Int, p1: Int): MutableList + + // CHECK JVM_IR: + // Mangled name: E#toArray(){}kotlin.Array? + // Public signature: /E.toArray|-8468800257910341540[0] + // Public signature debug description: toArray(){}kotlin.Array? + /* fake */ override fun toArray(): Array? + + // CHECK JVM_IR: + // Mangled name: E#toArray(kotlin.Array?){0§}kotlin.Array? + // Public signature: /E.toArray|5867798891017880795[0] + // Public signature debug description: toArray(kotlin.Array?){0§}kotlin.Array? + /* fake */ override fun toArray(p0: Array?): Array? + + // CHECK JVM_IR: + // Mangled name: E#toString(){}kotlin.String{EnhancedNullability} + // Public signature: /E.toString|7581629773206850948[0] + // Public signature debug description: toString(){}kotlin.String{EnhancedNullability} + /* fake */ override fun toString(): @EnhancedNullability String + + // CHECK: + // Mangled name: E#trimToSize(){} + // Public signature: /E.trimToSize|-5937642362792008740[0] + // Public signature debug description: trimToSize(){} + /* fake */ override fun trimToSize(): Unit + + // CHECK: + // Mangled name: E{}size + // Public signature: /E.size|-6253659984320132064[0] + // Public signature debug description: {}size + /* fake */ override val size: Int + // CHECK JVM_IR: + // Mangled name: E#(){}kotlin.Int + // Public signature: /E.size.|-3941649985161900780[0] + // Public signature debug description: (){}kotlin.Int + /* fake */ override get(): Int + +} diff --git a/compiler/testData/ir/irText/fakeOverrides/fakeOverrideOfRawJavaCollection.ir.txt b/compiler/testData/ir/irText/fakeOverrides/fakeOverrideOfRawJavaCollection.ir.txt new file mode 100644 index 00000000000..d15c628ce8f --- /dev/null +++ b/compiler/testData/ir/irText/fakeOverrides/fakeOverrideOfRawJavaCollection.ir.txt @@ -0,0 +1,160 @@ +FILE fqName: fileName:/1.kt + CLASS CLASS name:E modality:ABSTRACT visibility:public superTypes:[.Java1] + $this: VALUE_PARAMETER INSTANCE_RECEIVER name: type:.E + CONSTRUCTOR visibility:public <> () returnType:.E [primary] + BLOCK_BODY + DELEGATING_CONSTRUCTOR_CALL 'public constructor () declared in .Java1' + INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:E modality:ABSTRACT visibility:public superTypes:[.Java1]' + FUN FAKE_OVERRIDE name:add visibility:public modality:OPEN <> ($this:@[RawType] java.util.ArrayList<@[FlexibleNullability] kotlin.Any?>, element:@[EnhancedNullability] @[FlexibleNullability] kotlin.Any?) returnType:kotlin.Boolean [fake_override] + overridden: + public open fun add (element: @[EnhancedNullability] @[FlexibleNullability] kotlin.Any?): kotlin.Boolean declared in .Java1 + $this: VALUE_PARAMETER name: type:@[RawType] java.util.ArrayList<@[FlexibleNullability] kotlin.Any?> + VALUE_PARAMETER name:element index:0 type:@[EnhancedNullability] @[FlexibleNullability] kotlin.Any? + FUN FAKE_OVERRIDE name:add visibility:public modality:OPEN <> ($this:@[RawType] java.util.ArrayList<@[FlexibleNullability] kotlin.Any?>, index:kotlin.Int, element:@[EnhancedNullability] @[FlexibleNullability] kotlin.Any?) returnType:kotlin.Unit [fake_override] + overridden: + public open fun add (index: kotlin.Int, element: @[EnhancedNullability] @[FlexibleNullability] kotlin.Any?): kotlin.Unit declared in .Java1 + $this: VALUE_PARAMETER name: type:@[RawType] java.util.ArrayList<@[FlexibleNullability] kotlin.Any?> + VALUE_PARAMETER name:index index:0 type:kotlin.Int + VALUE_PARAMETER name:element index:1 type:@[EnhancedNullability] @[FlexibleNullability] kotlin.Any? + FUN FAKE_OVERRIDE name:addAll visibility:public modality:OPEN <> ($this:@[RawType] java.util.ArrayList<@[FlexibleNullability] kotlin.Any?>, elements:@[EnhancedNullability] @[RawType] kotlin.collections.Collection) returnType:kotlin.Boolean [fake_override] + overridden: + public open fun addAll (elements: @[EnhancedNullability] @[RawType] kotlin.collections.Collection): kotlin.Boolean declared in .Java1 + $this: VALUE_PARAMETER name: type:@[RawType] java.util.ArrayList<@[FlexibleNullability] kotlin.Any?> + VALUE_PARAMETER name:elements index:0 type:@[EnhancedNullability] @[RawType] kotlin.collections.Collection + FUN FAKE_OVERRIDE name:addAll visibility:public modality:OPEN <> ($this:@[RawType] java.util.ArrayList<@[FlexibleNullability] kotlin.Any?>, index:kotlin.Int, elements:@[EnhancedNullability] @[RawType] kotlin.collections.Collection) returnType:kotlin.Boolean [fake_override] + overridden: + public open fun addAll (index: kotlin.Int, elements: @[EnhancedNullability] @[RawType] kotlin.collections.Collection): kotlin.Boolean declared in .Java1 + $this: VALUE_PARAMETER name: type:@[RawType] java.util.ArrayList<@[FlexibleNullability] kotlin.Any?> + VALUE_PARAMETER name:index index:0 type:kotlin.Int + VALUE_PARAMETER name:elements index:1 type:@[EnhancedNullability] @[RawType] kotlin.collections.Collection + FUN FAKE_OVERRIDE name:clear visibility:public modality:OPEN <> ($this:@[RawType] java.util.ArrayList<@[FlexibleNullability] kotlin.Any?>) returnType:kotlin.Unit [fake_override] + overridden: + public open fun clear (): kotlin.Unit declared in .Java1 + $this: VALUE_PARAMETER name: type:@[RawType] java.util.ArrayList<@[FlexibleNullability] kotlin.Any?> + FUN FAKE_OVERRIDE name:iterator visibility:public modality:OPEN <> ($this:@[RawType] java.util.ArrayList<@[FlexibleNullability] kotlin.Any?>) returnType:@[EnhancedNullability] @[RawType] kotlin.collections.MutableIterator [fake_override,operator] + overridden: + public open fun iterator (): @[EnhancedNullability] @[RawType] kotlin.collections.MutableIterator declared in .Java1 + $this: VALUE_PARAMETER name: type:@[RawType] java.util.ArrayList<@[FlexibleNullability] kotlin.Any?> + FUN FAKE_OVERRIDE name:remove visibility:public modality:OPEN <> ($this:@[RawType] java.util.ArrayList<@[FlexibleNullability] kotlin.Any?>, element:@[EnhancedNullability] @[FlexibleNullability] kotlin.Any?) returnType:kotlin.Boolean [fake_override] + overridden: + public open fun remove (element: @[EnhancedNullability] @[FlexibleNullability] kotlin.Any?): kotlin.Boolean declared in .Java1 + $this: VALUE_PARAMETER name: type:@[RawType] java.util.ArrayList<@[FlexibleNullability] kotlin.Any?> + VALUE_PARAMETER name:element index:0 type:@[EnhancedNullability] @[FlexibleNullability] kotlin.Any? + FUN FAKE_OVERRIDE name:removeAll visibility:public modality:OPEN <> ($this:@[RawType] java.util.ArrayList<@[FlexibleNullability] kotlin.Any?>, elements:@[RawType] kotlin.collections.Collection) returnType:kotlin.Boolean [fake_override] + overridden: + public open fun removeAll (elements: @[RawType] kotlin.collections.Collection): kotlin.Boolean declared in .Java1 + $this: VALUE_PARAMETER name: type:@[RawType] java.util.ArrayList<@[FlexibleNullability] kotlin.Any?> + VALUE_PARAMETER name:elements index:0 type:@[RawType] kotlin.collections.Collection + FUN FAKE_OVERRIDE name:retainAll visibility:public modality:OPEN <> ($this:@[RawType] java.util.ArrayList<@[FlexibleNullability] kotlin.Any?>, elements:@[RawType] kotlin.collections.Collection) returnType:kotlin.Boolean [fake_override] + overridden: + public open fun retainAll (elements: @[RawType] kotlin.collections.Collection): kotlin.Boolean declared in .Java1 + $this: VALUE_PARAMETER name: type:@[RawType] java.util.ArrayList<@[FlexibleNullability] kotlin.Any?> + VALUE_PARAMETER name:elements index:0 type:@[RawType] kotlin.collections.Collection + FUN FAKE_OVERRIDE name:contains visibility:public modality:OPEN <> ($this:@[RawType] java.util.ArrayList<@[FlexibleNullability] kotlin.Any?>, element:@[EnhancedNullability] @[FlexibleNullability] kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator] + overridden: + public open fun contains (element: @[EnhancedNullability] @[FlexibleNullability] kotlin.Any?): kotlin.Boolean declared in .Java1 + $this: VALUE_PARAMETER name: type:@[RawType] java.util.ArrayList<@[FlexibleNullability] kotlin.Any?> + VALUE_PARAMETER name:element index:0 type:@[EnhancedNullability] @[FlexibleNullability] kotlin.Any? + FUN FAKE_OVERRIDE name:containsAll visibility:public modality:OPEN <> ($this:@[RawType] java.util.AbstractCollection<@[FlexibleNullability] kotlin.Any?>, elements:@[RawType] kotlin.collections.Collection) returnType:kotlin.Boolean [fake_override] + overridden: + public open fun containsAll (elements: @[RawType] kotlin.collections.Collection): kotlin.Boolean declared in .Java1 + $this: VALUE_PARAMETER name: type:@[RawType] java.util.AbstractCollection<@[FlexibleNullability] kotlin.Any?> + VALUE_PARAMETER name:elements index:0 type:@[RawType] kotlin.collections.Collection + FUN FAKE_OVERRIDE name:isEmpty visibility:public modality:OPEN <> ($this:@[RawType] java.util.ArrayList<@[FlexibleNullability] kotlin.Any?>) returnType:kotlin.Boolean [fake_override] + overridden: + public open fun isEmpty (): kotlin.Boolean declared in .Java1 + $this: VALUE_PARAMETER name: type:@[RawType] java.util.ArrayList<@[FlexibleNullability] kotlin.Any?> + FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:@[RawType] java.util.AbstractList<@[FlexibleNullability] kotlin.Any?>, other:@[EnhancedNullability] kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator] + overridden: + public open fun equals (other: @[EnhancedNullability] kotlin.Any?): kotlin.Boolean declared in .Java1 + $this: VALUE_PARAMETER name: type:@[RawType] java.util.AbstractList<@[FlexibleNullability] kotlin.Any?> + VALUE_PARAMETER name:other index:0 type:@[EnhancedNullability] kotlin.Any? + FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:@[RawType] java.util.AbstractList<@[FlexibleNullability] kotlin.Any?>) returnType:kotlin.Int [fake_override] + overridden: + public open fun hashCode (): kotlin.Int declared in .Java1 + $this: VALUE_PARAMETER name: type:@[RawType] java.util.AbstractList<@[FlexibleNullability] kotlin.Any?> + FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:@[RawType] java.util.AbstractCollection<@[FlexibleNullability] kotlin.Any?>) returnType:@[EnhancedNullability] kotlin.String [fake_override] + overridden: + public open fun toString (): @[EnhancedNullability] kotlin.String declared in .Java1 + $this: VALUE_PARAMETER name: type:@[RawType] java.util.AbstractCollection<@[FlexibleNullability] kotlin.Any?> + FUN FAKE_OVERRIDE name:toArray visibility:public modality:OPEN <> ($this:@[RawType] java.util.ArrayList<@[FlexibleNullability] kotlin.Any?>) returnType:@[FlexibleNullability] kotlin.Array? [fake_override] + overridden: + public open fun toArray (): @[FlexibleNullability] kotlin.Array? declared in .Java1 + $this: VALUE_PARAMETER name: type:@[RawType] java.util.ArrayList<@[FlexibleNullability] kotlin.Any?> + FUN FAKE_OVERRIDE name:toArray visibility:public modality:OPEN ($this:@[RawType] java.util.ArrayList<@[FlexibleNullability] kotlin.Any?>, p0:@[FlexibleNullability] kotlin.Array?) returnType:@[FlexibleNullability] kotlin.Array? [fake_override] + overridden: + public open fun toArray (p0: @[FlexibleNullability] kotlin.Array?): @[FlexibleNullability] kotlin.Array? declared in .Java1 + TYPE_PARAMETER name:T index:0 variance: superTypes:[@[FlexibleNullability] kotlin.Any?] reified:false + $this: VALUE_PARAMETER name: type:@[RawType] java.util.ArrayList<@[FlexibleNullability] kotlin.Any?> + VALUE_PARAMETER name:p0 index:0 type:@[FlexibleNullability] kotlin.Array? + FUN FAKE_OVERRIDE name:listIterator visibility:public modality:OPEN <> ($this:@[RawType] java.util.ArrayList<@[FlexibleNullability] kotlin.Any?>, index:kotlin.Int) returnType:@[EnhancedNullability] @[RawType] kotlin.collections.MutableListIterator [fake_override] + overridden: + public open fun listIterator (index: kotlin.Int): @[EnhancedNullability] @[RawType] kotlin.collections.MutableListIterator declared in .Java1 + $this: VALUE_PARAMETER name: type:@[RawType] java.util.ArrayList<@[FlexibleNullability] kotlin.Any?> + VALUE_PARAMETER name:index index:0 type:kotlin.Int + FUN FAKE_OVERRIDE name:listIterator visibility:public modality:OPEN <> ($this:@[RawType] java.util.ArrayList<@[FlexibleNullability] kotlin.Any?>) returnType:@[EnhancedNullability] @[RawType] kotlin.collections.MutableListIterator [fake_override] + overridden: + public open fun listIterator (): @[EnhancedNullability] @[RawType] kotlin.collections.MutableListIterator declared in .Java1 + $this: VALUE_PARAMETER name: type:@[RawType] java.util.ArrayList<@[FlexibleNullability] kotlin.Any?> + FUN FAKE_OVERRIDE name:removeAt visibility:public modality:OPEN <> ($this:@[RawType] java.util.ArrayList<@[FlexibleNullability] kotlin.Any?>, p0:kotlin.Int) returnType:@[EnhancedNullability] @[FlexibleNullability] kotlin.Any? [fake_override] + overridden: + public open fun removeAt (p0: kotlin.Int): @[EnhancedNullability] @[FlexibleNullability] kotlin.Any? declared in .Java1 + $this: VALUE_PARAMETER name: type:@[RawType] java.util.ArrayList<@[FlexibleNullability] kotlin.Any?> + VALUE_PARAMETER name:p0 index:0 type:kotlin.Int + FUN FAKE_OVERRIDE name:set visibility:public modality:OPEN <> ($this:@[RawType] java.util.ArrayList<@[FlexibleNullability] kotlin.Any?>, index:kotlin.Int, element:@[EnhancedNullability] @[FlexibleNullability] kotlin.Any?) returnType:@[EnhancedNullability] @[FlexibleNullability] kotlin.Any? [fake_override,operator] + overridden: + public open fun set (index: kotlin.Int, element: @[EnhancedNullability] @[FlexibleNullability] kotlin.Any?): @[EnhancedNullability] @[FlexibleNullability] kotlin.Any? declared in .Java1 + $this: VALUE_PARAMETER name: type:@[RawType] java.util.ArrayList<@[FlexibleNullability] kotlin.Any?> + VALUE_PARAMETER name:index index:0 type:kotlin.Int + VALUE_PARAMETER name:element index:1 type:@[EnhancedNullability] @[FlexibleNullability] kotlin.Any? + FUN FAKE_OVERRIDE name:subList visibility:public modality:OPEN <> ($this:@[RawType] java.util.ArrayList<@[FlexibleNullability] kotlin.Any?>, fromIndex:kotlin.Int, toIndex:kotlin.Int) returnType:@[EnhancedNullability] @[RawType] kotlin.collections.MutableList [fake_override] + overridden: + public open fun subList (fromIndex: kotlin.Int, toIndex: kotlin.Int): @[EnhancedNullability] @[RawType] kotlin.collections.MutableList declared in .Java1 + $this: VALUE_PARAMETER name: type:@[RawType] java.util.ArrayList<@[FlexibleNullability] kotlin.Any?> + VALUE_PARAMETER name:fromIndex index:0 type:kotlin.Int + VALUE_PARAMETER name:toIndex index:1 type:kotlin.Int + FUN FAKE_OVERRIDE name:get visibility:public modality:OPEN <> ($this:@[RawType] java.util.ArrayList<@[FlexibleNullability] kotlin.Any?>, index:kotlin.Int) returnType:@[EnhancedNullability] @[FlexibleNullability] kotlin.Any? [fake_override,operator] + overridden: + public open fun get (index: kotlin.Int): @[EnhancedNullability] @[FlexibleNullability] kotlin.Any? declared in .Java1 + $this: VALUE_PARAMETER name: type:@[RawType] java.util.ArrayList<@[FlexibleNullability] kotlin.Any?> + VALUE_PARAMETER name:index index:0 type:kotlin.Int + FUN FAKE_OVERRIDE name:indexOf visibility:public modality:OPEN <> ($this:@[RawType] java.util.ArrayList<@[FlexibleNullability] kotlin.Any?>, element:@[EnhancedNullability] @[FlexibleNullability] kotlin.Any?) returnType:kotlin.Int [fake_override] + overridden: + public open fun indexOf (element: @[EnhancedNullability] @[FlexibleNullability] kotlin.Any?): kotlin.Int declared in .Java1 + $this: VALUE_PARAMETER name: type:@[RawType] java.util.ArrayList<@[FlexibleNullability] kotlin.Any?> + VALUE_PARAMETER name:element index:0 type:@[EnhancedNullability] @[FlexibleNullability] kotlin.Any? + FUN FAKE_OVERRIDE name:lastIndexOf visibility:public modality:OPEN <> ($this:@[RawType] java.util.ArrayList<@[FlexibleNullability] kotlin.Any?>, element:@[EnhancedNullability] @[FlexibleNullability] kotlin.Any?) returnType:kotlin.Int [fake_override] + overridden: + public open fun lastIndexOf (element: @[EnhancedNullability] @[FlexibleNullability] kotlin.Any?): kotlin.Int declared in .Java1 + $this: VALUE_PARAMETER name: type:@[RawType] java.util.ArrayList<@[FlexibleNullability] kotlin.Any?> + VALUE_PARAMETER name:element index:0 type:@[EnhancedNullability] @[FlexibleNullability] kotlin.Any? + FUN FAKE_OVERRIDE name:removeRange visibility:protected/*protected and package*/ modality:OPEN <> ($this:@[RawType] java.util.ArrayList<@[FlexibleNullability] kotlin.Any?>, p0:kotlin.Int, p1:kotlin.Int) returnType:kotlin.Unit [fake_override] + overridden: + protected/*protected and package*/ open fun removeRange (p0: kotlin.Int, p1: kotlin.Int): kotlin.Unit declared in .Java1 + $this: VALUE_PARAMETER name: type:@[RawType] java.util.ArrayList<@[FlexibleNullability] kotlin.Any?> + VALUE_PARAMETER name:p0 index:0 type:kotlin.Int + VALUE_PARAMETER name:p1 index:1 type:kotlin.Int + FUN FAKE_OVERRIDE name:clone visibility:public modality:OPEN <> ($this:@[RawType] java.util.ArrayList<@[FlexibleNullability] kotlin.Any?>) returnType:@[EnhancedNullability] kotlin.Any [fake_override] + overridden: + public open fun clone (): @[EnhancedNullability] kotlin.Any declared in .Java1 + $this: VALUE_PARAMETER name: type:@[RawType] java.util.ArrayList<@[FlexibleNullability] kotlin.Any?> + FUN FAKE_OVERRIDE name:trimToSize visibility:public modality:OPEN <> ($this:@[RawType] java.util.ArrayList<@[FlexibleNullability] kotlin.Any?>) returnType:kotlin.Unit [fake_override] + overridden: + public open fun trimToSize (): kotlin.Unit declared in .Java1 + $this: VALUE_PARAMETER name: type:@[RawType] java.util.ArrayList<@[FlexibleNullability] kotlin.Any?> + FUN FAKE_OVERRIDE name:ensureCapacity visibility:public modality:OPEN <> ($this:@[RawType] java.util.ArrayList<@[FlexibleNullability] kotlin.Any?>, p0:kotlin.Int) returnType:kotlin.Unit [fake_override] + overridden: + public open fun ensureCapacity (p0: kotlin.Int): kotlin.Unit declared in .Java1 + $this: VALUE_PARAMETER name: type:@[RawType] java.util.ArrayList<@[FlexibleNullability] kotlin.Any?> + VALUE_PARAMETER name:p0 index:0 type:kotlin.Int + PROPERTY FAKE_OVERRIDE name:size visibility:public modality:OPEN [fake_override,val] + overridden: + public open size: kotlin.Int + FUN FAKE_OVERRIDE name: visibility:public modality:OPEN <> ($this:@[RawType] java.util.ArrayList<@[FlexibleNullability] kotlin.Any?>) returnType:kotlin.Int [fake_override] + correspondingProperty: PROPERTY FAKE_OVERRIDE name:size visibility:public modality:OPEN [fake_override,val] + overridden: + public open fun (): kotlin.Int declared in .Java1 + $this: VALUE_PARAMETER name: type:@[RawType] java.util.ArrayList<@[FlexibleNullability] kotlin.Any?> + PROPERTY FAKE_OVERRIDE name:modCount visibility:protected/*protected and package*/ modality:FINAL [fake_override,var] + overridden: + protected/*protected and package*/ final modCount: kotlin.Int diff --git a/compiler/testData/ir/irText/fakeOverrides/fakeOverrideOfRawJavaCollection.kt b/compiler/testData/ir/irText/fakeOverrides/fakeOverrideOfRawJavaCollection.kt new file mode 100644 index 00000000000..f22228cdc8f --- /dev/null +++ b/compiler/testData/ir/irText/fakeOverrides/fakeOverrideOfRawJavaCollection.kt @@ -0,0 +1,11 @@ +// ISSUE: KT-65448 +// TARGET_BACKEND: JVM +// SEPARATE_SIGNATURE_DUMP_FOR_K2 +// FILE: Java1.java +import java.util.ArrayList; + +public abstract class Java1 extends ArrayList { } + +// FILE: 1.kt +abstract class E : Java1(){ +} \ No newline at end of file diff --git a/compiler/testData/ir/irText/fakeOverrides/fakeOverrideOfRawJavaCollection.kt.txt b/compiler/testData/ir/irText/fakeOverrides/fakeOverrideOfRawJavaCollection.kt.txt new file mode 100644 index 00000000000..e57e7fd179b --- /dev/null +++ b/compiler/testData/ir/irText/fakeOverrides/fakeOverrideOfRawJavaCollection.kt.txt @@ -0,0 +1,8 @@ +abstract class E : Java1 { + constructor() /* primary */ { + super/*Java1*/() + /* () */ + + } + +} diff --git a/compiler/testData/ir/irText/fakeOverrides/fakeOverrideOfRawJavaCollection.sig.kt.txt b/compiler/testData/ir/irText/fakeOverrides/fakeOverrideOfRawJavaCollection.sig.kt.txt new file mode 100644 index 00000000000..b11af65809c --- /dev/null +++ b/compiler/testData/ir/irText/fakeOverrides/fakeOverrideOfRawJavaCollection.sig.kt.txt @@ -0,0 +1,196 @@ +// CHECK: +// Mangled name: E +// Public signature: /E|null[0] +abstract class E : Java1 { + // CHECK: + // Mangled name: E#(){} + // Public signature: /E.|-5645683436151566731[0] + // Public signature debug description: (){} + constructor() /* primary */ + + // CHECK JVM_IR: + // Mangled name: E#add(kotlin.Any?{EnhancedNullability}){}kotlin.Boolean + // Public signature: /E.add|-5986090388026932451[0] + // Public signature debug description: add(kotlin.Any?{EnhancedNullability}){}kotlin.Boolean + /* fake */ override fun add(element: @EnhancedNullability Any?): Boolean + + // CHECK: + // Mangled name: E#add(kotlin.Int;kotlin.Any?{EnhancedNullability}){} + // Public signature: /E.add|6239812882338845322[0] + // Public signature debug description: add(kotlin.Int;kotlin.Any?{EnhancedNullability}){} + /* fake */ override fun add(index: Int, element: @EnhancedNullability Any?): Unit + + // CHECK JVM_IR: + // Mangled name: E#addAll(kotlin.collections.Collection{EnhancedNullability}){}kotlin.Boolean + // Public signature: /E.addAll|-5255485977914273331[0] + // Public signature debug description: addAll(kotlin.collections.Collection{EnhancedNullability}){}kotlin.Boolean + /* fake */ override fun addAll(elements: @EnhancedNullability Collection): Boolean + + // CHECK JVM_IR: + // Mangled name: E#addAll(kotlin.Int;kotlin.collections.Collection{EnhancedNullability}){}kotlin.Boolean + // Public signature: /E.addAll|-8796714502043537184[0] + // Public signature debug description: addAll(kotlin.Int;kotlin.collections.Collection{EnhancedNullability}){}kotlin.Boolean + /* fake */ override fun addAll(index: Int, elements: @EnhancedNullability Collection): Boolean + + // CHECK: + // Mangled name: E#clear(){} + // Public signature: /E.clear|-6446868449915108923[0] + // Public signature debug description: clear(){} + /* fake */ override fun clear(): Unit + + // CHECK JVM_IR: + // Mangled name: E#clone(){}kotlin.Any{EnhancedNullability} + // Public signature: /E.clone|178802004086941196[0] + // Public signature debug description: clone(){}kotlin.Any{EnhancedNullability} + /* fake */ override fun clone(): @EnhancedNullability Any + + // CHECK JVM_IR: + // Mangled name: E#contains(kotlin.Any?{EnhancedNullability}){}kotlin.Boolean + // Public signature: /E.contains|8753434238909728898[0] + // Public signature debug description: contains(kotlin.Any?{EnhancedNullability}){}kotlin.Boolean + /* fake */ override operator fun contains(element: @EnhancedNullability Any?): Boolean + + // CHECK JVM_IR: + // Mangled name: E#containsAll(kotlin.collections.Collection){}kotlin.Boolean + // Public signature: /E.containsAll|7057326425365175105[0] + // Public signature debug description: containsAll(kotlin.collections.Collection){}kotlin.Boolean + /* fake */ override fun containsAll(elements: Collection): Boolean + + // CHECK: + // Mangled name: E#ensureCapacity(kotlin.Int){} + // Public signature: /E.ensureCapacity|-7913402150632352615[0] + // Public signature debug description: ensureCapacity(kotlin.Int){} + /* fake */ override fun ensureCapacity(p0: Int): Unit + + // CHECK JVM_IR: + // Mangled name: E#equals(kotlin.Any?{EnhancedNullability}){}kotlin.Boolean + // Public signature: /E.equals|4126616015386471185[0] + // Public signature debug description: equals(kotlin.Any?{EnhancedNullability}){}kotlin.Boolean + /* fake */ override operator fun equals(other: @EnhancedNullability Any?): Boolean + + // CHECK JVM_IR: + // Mangled name: E#get(kotlin.Int){}kotlin.Any?{EnhancedNullability} + // Public signature: /E.get|-5300912049483714805[0] + // Public signature debug description: get(kotlin.Int){}kotlin.Any?{EnhancedNullability} + /* fake */ override operator fun get(index: Int): @EnhancedNullability Any? + + // CHECK JVM_IR: + // Mangled name: E#hashCode(){}kotlin.Int + // Public signature: /E.hashCode|-8048879360829830756[0] + // Public signature debug description: hashCode(){}kotlin.Int + /* fake */ override fun hashCode(): Int + + // CHECK JVM_IR: + // Mangled name: E#indexOf(kotlin.Any?{EnhancedNullability}){}kotlin.Int + // Public signature: /E.indexOf|-23119642662624689[0] + // Public signature debug description: indexOf(kotlin.Any?{EnhancedNullability}){}kotlin.Int + /* fake */ override fun indexOf(element: @EnhancedNullability Any?): Int + + // CHECK JVM_IR: + // Mangled name: E#isEmpty(){}kotlin.Boolean + // Public signature: /E.isEmpty|-626562167393617703[0] + // Public signature debug description: isEmpty(){}kotlin.Boolean + /* fake */ override fun isEmpty(): Boolean + + // CHECK JVM_IR: + // Mangled name: E#iterator(){}kotlin.collections.MutableIterator{EnhancedNullability} + // Public signature: /E.iterator|5209183249781014428[0] + // Public signature debug description: iterator(){}kotlin.collections.MutableIterator{EnhancedNullability} + /* fake */ override operator fun iterator(): @EnhancedNullability MutableIterator + + // CHECK JVM_IR: + // Mangled name: E#lastIndexOf(kotlin.Any?{EnhancedNullability}){}kotlin.Int + // Public signature: /E.lastIndexOf|-2894732914974618509[0] + // Public signature debug description: lastIndexOf(kotlin.Any?{EnhancedNullability}){}kotlin.Int + /* fake */ override fun lastIndexOf(element: @EnhancedNullability Any?): Int + + // CHECK JVM_IR: + // Mangled name: E#listIterator(){}kotlin.collections.MutableListIterator{EnhancedNullability} + // Public signature: /E.listIterator|9085299506388071801[0] + // Public signature debug description: listIterator(){}kotlin.collections.MutableListIterator{EnhancedNullability} + /* fake */ override fun listIterator(): @EnhancedNullability MutableListIterator + + // CHECK JVM_IR: + // Mangled name: E#listIterator(kotlin.Int){}kotlin.collections.MutableListIterator{EnhancedNullability} + // Public signature: /E.listIterator|943240675884260208[0] + // Public signature debug description: listIterator(kotlin.Int){}kotlin.collections.MutableListIterator{EnhancedNullability} + /* fake */ override fun listIterator(index: Int): @EnhancedNullability MutableListIterator + + // CHECK JVM_IR: + // Mangled name: E#remove(kotlin.Any?{EnhancedNullability}){}kotlin.Boolean + // Public signature: /E.remove|5889602773215073339[0] + // Public signature debug description: remove(kotlin.Any?{EnhancedNullability}){}kotlin.Boolean + /* fake */ override fun remove(element: @EnhancedNullability Any?): Boolean + + // CHECK JVM_IR: + // Mangled name: E#removeAll(kotlin.collections.Collection){}kotlin.Boolean + // Public signature: /E.removeAll|2083414713666946876[0] + // Public signature debug description: removeAll(kotlin.collections.Collection){}kotlin.Boolean + /* fake */ override fun removeAll(elements: Collection): Boolean + + // CHECK JVM_IR: + // Mangled name: E#removeAt(kotlin.Int){}kotlin.Any?{EnhancedNullability} + // Public signature: /E.removeAt|4725866102208590817[0] + // Public signature debug description: removeAt(kotlin.Int){}kotlin.Any?{EnhancedNullability} + /* fake */ override fun removeAt(p0: Int): @EnhancedNullability Any? + + // CHECK: + // Mangled name: E#removeRange(kotlin.Int;kotlin.Int){} + // Public signature: /E.removeRange|7632320944993890593[0] + // Public signature debug description: removeRange(kotlin.Int;kotlin.Int){} + protected_and_package /* fake */ override fun removeRange(p0: Int, p1: Int): Unit + + // CHECK JVM_IR: + // Mangled name: E#retainAll(kotlin.collections.Collection){}kotlin.Boolean + // Public signature: /E.retainAll|-4369081002402657372[0] + // Public signature debug description: retainAll(kotlin.collections.Collection){}kotlin.Boolean + /* fake */ override fun retainAll(elements: Collection): Boolean + + // CHECK JVM_IR: + // Mangled name: E#set(kotlin.Int;kotlin.Any?{EnhancedNullability}){}kotlin.Any?{EnhancedNullability} + // Public signature: /E.set|-1329887672320845825[0] + // Public signature debug description: set(kotlin.Int;kotlin.Any?{EnhancedNullability}){}kotlin.Any?{EnhancedNullability} + /* fake */ override operator fun set(index: Int, element: @EnhancedNullability Any?): @EnhancedNullability Any? + + // CHECK JVM_IR: + // Mangled name: E#subList(kotlin.Int;kotlin.Int){}kotlin.collections.MutableList{EnhancedNullability} + // Public signature: /E.subList|-2625343716108283264[0] + // Public signature debug description: subList(kotlin.Int;kotlin.Int){}kotlin.collections.MutableList{EnhancedNullability} + /* fake */ override fun subList(fromIndex: Int, toIndex: Int): @EnhancedNullability MutableList + + // CHECK JVM_IR: + // Mangled name: E#toArray(){}kotlin.Array? + // Public signature: /E.toArray|-8468800257910341540[0] + // Public signature debug description: toArray(){}kotlin.Array? + /* fake */ override fun toArray(): Array? + + // CHECK JVM_IR: + // Mangled name: E#toArray(kotlin.Array?){0§}kotlin.Array? + // Public signature: /E.toArray|5867798891017880795[0] + // Public signature debug description: toArray(kotlin.Array?){0§}kotlin.Array? + /* fake */ override fun toArray(p0: Array?): Array? + + // CHECK JVM_IR: + // Mangled name: E#toString(){}kotlin.String{EnhancedNullability} + // Public signature: /E.toString|7581629773206850948[0] + // Public signature debug description: toString(){}kotlin.String{EnhancedNullability} + /* fake */ override fun toString(): @EnhancedNullability String + + // CHECK: + // Mangled name: E#trimToSize(){} + // Public signature: /E.trimToSize|-5937642362792008740[0] + // Public signature debug description: trimToSize(){} + /* fake */ override fun trimToSize(): Unit + + // CHECK: + // Mangled name: E{}size + // Public signature: /E.size|-6253659984320132064[0] + // Public signature debug description: {}size + /* fake */ override val size: Int + // CHECK JVM_IR: + // Mangled name: E#(){}kotlin.Int + // Public signature: /E.size.|-3941649985161900780[0] + // Public signature debug description: (){}kotlin.Int + /* fake */ override get(): Int + +} 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 6b6487d8e6e..ce607229146 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 @@ -30555,6 +30555,12 @@ public class DiagnosticTestGenerated extends AbstractDiagnosticTest { public void testKt57620() throws Exception { runTest("compiler/testData/diagnostics/tests/rawTypes/kt57620.kt"); } + + @Test + @TestMetadata("rawTypeOverrides.kt") + public void testRawTypeOverrides() throws Exception { + runTest("compiler/testData/diagnostics/tests/rawTypes/rawTypeOverrides.kt"); + } } @Nested diff --git a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/ir/ClassicJvmIrTextTestGenerated.java b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/ir/ClassicJvmIrTextTestGenerated.java index 84aaa6eff2c..6b048f9675a 100644 --- a/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/ir/ClassicJvmIrTextTestGenerated.java +++ b/compiler/tests-common-new/tests-gen/org/jetbrains/kotlin/test/runners/ir/ClassicJvmIrTextTestGenerated.java @@ -2691,6 +2691,12 @@ public class ClassicJvmIrTextTestGenerated extends AbstractClassicJvmIrTextTest public void testFakeOverrideOfRaw() throws Exception { runTest("compiler/testData/ir/irText/fakeOverrides/fakeOverrideOfRaw.kt"); } + + @Test + @TestMetadata("fakeOverrideOfRawJavaCollection.kt") + public void testFakeOverrideOfRawJavaCollection() throws Exception { + runTest("compiler/testData/ir/irText/fakeOverrides/fakeOverrideOfRawJavaCollection.kt"); + } } @Nested