JVM_IR more precise superclass stub filtering

Filter out abstract members of superclasses when generating collection
stubs.

KT-43207
This commit is contained in:
Dmitry Petrov
2020-11-10 06:45:24 +03:00
parent 7f26deb5e6
commit e10d8e51b6
11 changed files with 325 additions and 94 deletions
@@ -339,6 +339,21 @@ public class BytecodeListingTestGenerated extends AbstractBytecodeListingTest {
runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/extendingAbstractCollection.kt");
}
@TestMetadata("inheritingFromAbstractCollections.kt")
public void testInheritingFromAbstractCollections() throws Exception {
runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/inheritingFromAbstractCollections.kt");
}
@TestMetadata("inheritingFromAbstractMap.kt")
public void testInheritingFromAbstractMap() throws Exception {
runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/inheritingFromAbstractMap.kt");
}
@TestMetadata("inheritingFromAbstractMutableList.kt")
public void testInheritingFromAbstractMutableList() throws Exception {
runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/inheritingFromAbstractMutableList.kt");
}
@TestMetadata("mapOfPrimitivesFullJdk.kt")
public void testMapOfPrimitivesFullJdk() throws Exception {
runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/mapOfPrimitivesFullJdk.kt");
@@ -339,6 +339,21 @@ public class IrBytecodeListingTestGenerated extends AbstractIrBytecodeListingTes
runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/extendingAbstractCollection.kt");
}
@TestMetadata("inheritingFromAbstractCollections.kt")
public void testInheritingFromAbstractCollections() throws Exception {
runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/inheritingFromAbstractCollections.kt");
}
@TestMetadata("inheritingFromAbstractMap.kt")
public void testInheritingFromAbstractMap() throws Exception {
runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/inheritingFromAbstractMap.kt");
}
@TestMetadata("inheritingFromAbstractMutableList.kt")
public void testInheritingFromAbstractMutableList() throws Exception {
runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/inheritingFromAbstractMutableList.kt");
}
@TestMetadata("mapOfPrimitivesFullJdk.kt")
public void testMapOfPrimitivesFullJdk() throws Exception {
runTest("compiler/testData/codegen/bytecodeListing/collectionStubs/mapOfPrimitivesFullJdk.kt");