K2/Java: implement platform-dependent function filtering in JvmMappedScope

We drop Kotlin function 'remove' or 'getOrDefault' from JvmMappedScope,
if it has platform-dependent annotation, and the bound Java class scope
does not contain a function with the same signature.

#KT-57268 Fixed
This commit is contained in:
Mikhail Glukhikh
2024-01-24 16:50:47 +01:00
committed by Space Team
parent 7d584e0eb4
commit 672b5ba0d7
87 changed files with 352 additions and 373 deletions
@@ -93,10 +93,6 @@ MODULE main
---
K2
values
K1
---
K2
remove(Ljava/lang/Object;Ljava/lang/Object;)Z [public]
CLASS MM.class
CLASS METADATA
K1
@@ -1,5 +1,5 @@
// WITH_STDLIB
// JVM_ABI_K1_K2_DIFF: KT-57268, KT-63955, KT-63828
// JVM_ABI_K1_K2_DIFF: KT-63955, KT-63828
class Itr : Iterator<String> by ArrayList<String>().iterator()
class MItr : MutableIterator<String> by ArrayList<String>().iterator()
@@ -93,10 +93,6 @@ MODULE main
---
K2
values
K1
---
K2
remove(Ljava/lang/Object;Ljava/lang/Object;)Z [public]
CLASS MM.class
CLASS METADATA
K1
@@ -1,5 +1,5 @@
// WITH_STDLIB
// JVM_ABI_K1_K2_DIFF: KT-57268, KT-63955, KT-63828
// JVM_ABI_K1_K2_DIFF: KT-63955, KT-63828
class Itr : Iterator<String> by ArrayList<String>().iterator()
class MItr : MutableIterator<String> by ArrayList<String>().iterator()
@@ -1,6 +0,0 @@
MODULE main
CLASS M.class
K1
---
K2
remove(Ljava/lang/Object;Ljava/lang/Object;)Z [public]
@@ -1,5 +1,4 @@
// TARGET_BACKEND: JVM
// JVM_ABI_K1_K2_DIFF: KT-57268
// WITH_STDLIB
abstract class Itr : Iterator<String>
@@ -93,10 +93,6 @@ MODULE main
---
K2
values
K1
---
K2
remove(Ljava/lang/Object;Ljava/lang/Object;)Z [public]
CLASS MM.class
CLASS METADATA
K1
@@ -1,5 +1,5 @@
// WITH_STDLIB
// JVM_ABI_K1_K2_DIFF: KT-57268, KT-63955, KT-63828
// JVM_ABI_K1_K2_DIFF: KT-63955, KT-63828
class Itr : Iterator<String> by ArrayList<String>().iterator()
class MItr : MutableIterator<String> by ArrayList<String>().iterator()
@@ -93,10 +93,6 @@ MODULE main
---
K2
values
K1
---
K2
remove(Ljava/lang/Object;Ljava/lang/Object;)Z [public]
CLASS MM.class
CLASS METADATA
K1
@@ -1,5 +1,5 @@
// WITH_STDLIB
// JVM_ABI_K1_K2_DIFF: KT-57268, KT-63955, KT-63828
// JVM_ABI_K1_K2_DIFF: KT-63955, KT-63828
class Itr : Iterator<String> by ArrayList<String>().iterator()
class MItr : MutableIterator<String> by ArrayList<String>().iterator()
@@ -93,10 +93,6 @@ MODULE main
---
K2
values
K1
---
K2
remove(Ljava/lang/Object;Ljava/lang/Object;)Z [public]
CLASS MM.class
CLASS METADATA
K1
@@ -1,5 +1,5 @@
// WITH_STDLIB
// JVM_ABI_K1_K2_DIFF: KT-57268, KT-63955, KT-63828
// JVM_ABI_K1_K2_DIFF: KT-63955, KT-63828
class Itr : Iterator<String> by ArrayList<String>().iterator()
class MItr : MutableIterator<String> by ArrayList<String>().iterator()
@@ -93,10 +93,6 @@ MODULE main
---
K2
values
K1
---
K2
remove(Ljava/lang/Object;Ljava/lang/Object;)Z [public]
CLASS MM.class
CLASS METADATA
K1
@@ -1,5 +1,5 @@
// WITH_STDLIB
// JVM_ABI_K1_K2_DIFF: KT-57268
// JVM_ABI_K1_K2_DIFF: KT-63955, KT-63828
class Itr : Iterator<String> by ArrayList<String>().iterator()
class MItr : MutableIterator<String> by ArrayList<String>().iterator()