[FIR] Implement replacing Object with type parameters for specials builtins
#KT-42601 Fixed
This commit is contained in:
+4
-4
@@ -2,7 +2,7 @@ import java.util.*
|
||||
fun foo() {
|
||||
val al = ArrayList<String>()
|
||||
al.size
|
||||
al.contains(1)
|
||||
al.<!INAPPLICABLE_CANDIDATE!>contains<!>(1)
|
||||
al.contains("")
|
||||
|
||||
al.remove("")
|
||||
@@ -10,7 +10,7 @@ fun foo() {
|
||||
|
||||
val hs = HashSet<String>()
|
||||
hs.size
|
||||
hs.contains(1)
|
||||
hs.<!INAPPLICABLE_CANDIDATE!>contains<!>(1)
|
||||
hs.contains("")
|
||||
|
||||
hs.remove("")
|
||||
@@ -18,10 +18,10 @@ fun foo() {
|
||||
|
||||
val hm = HashMap<String, Int>()
|
||||
hm.size
|
||||
hm.containsKey(1)
|
||||
hm.<!INAPPLICABLE_CANDIDATE!>containsKey<!>(1)
|
||||
hm.containsKey("")
|
||||
|
||||
hm[1]
|
||||
<!INAPPLICABLE_CANDIDATE!>hm[1]<!>
|
||||
hm[""]
|
||||
|
||||
hm.remove("")
|
||||
|
||||
+6
-6
@@ -35,9 +35,9 @@ fun foo(
|
||||
al: java.util.ArrayList<String>
|
||||
) {
|
||||
a.contains("")
|
||||
a.contains(1)
|
||||
a.<!INAPPLICABLE_CANDIDATE!>contains<!>(1)
|
||||
"" in a
|
||||
1 in a
|
||||
1 <!INAPPLICABLE_CANDIDATE!>in<!> a
|
||||
|
||||
b.contains("")
|
||||
b.contains(1)
|
||||
@@ -50,9 +50,9 @@ fun foo(
|
||||
1 in ic
|
||||
|
||||
ka.contains("")
|
||||
ka.contains(1)
|
||||
ka.<!INAPPLICABLE_CANDIDATE!>contains<!>(1)
|
||||
"" in ka
|
||||
1 in ka
|
||||
1 <!INAPPLICABLE_CANDIDATE!>in<!> ka
|
||||
|
||||
kb.contains("")
|
||||
kb.contains(1)
|
||||
@@ -60,7 +60,7 @@ fun foo(
|
||||
1 in kb
|
||||
|
||||
al.contains("")
|
||||
al.contains(1)
|
||||
al.<!INAPPLICABLE_CANDIDATE!>contains<!>(1)
|
||||
"" in al
|
||||
1 in al
|
||||
1 <!INAPPLICABLE_CANDIDATE!>in<!> al
|
||||
}
|
||||
|
||||
+2
-2
@@ -8,9 +8,9 @@ val concurrentHash: ConcurrentHashMap<String, Int> = null!!
|
||||
|
||||
fun foo() {
|
||||
concurrent.remove("", 1)
|
||||
concurrent.remove("", "")
|
||||
concurrent.<!INAPPLICABLE_CANDIDATE!>remove<!>("", "")
|
||||
concurrentHash.remove("", 1)
|
||||
concurrentHash.remove("", "")
|
||||
concurrentHash.<!INAPPLICABLE_CANDIDATE!>remove<!>("", "")
|
||||
|
||||
// Flexible types
|
||||
concurrent.remove(null, 1)
|
||||
|
||||
@@ -4,17 +4,17 @@ abstract class A : Map<Int, String>
|
||||
|
||||
fun foo(x: Map<Int, String>, a: A, b: java.util.HashMap<Int, String>) {
|
||||
x.getOrDefault(1, "")
|
||||
x.getOrDefault("", "")
|
||||
x.<!NONE_APPLICABLE!>getOrDefault<!>("", "")
|
||||
x.<!NONE_APPLICABLE!>getOrDefault<!>(1, 2)
|
||||
x.<!NONE_APPLICABLE!>getOrDefault<!>("", 2)
|
||||
|
||||
a.getOrDefault(1, "")
|
||||
a.getOrDefault("", "")
|
||||
a.<!NONE_APPLICABLE!>getOrDefault<!>("", "")
|
||||
a.<!NONE_APPLICABLE!>getOrDefault<!>(1, 2)
|
||||
a.<!NONE_APPLICABLE!>getOrDefault<!>("", 2)
|
||||
|
||||
b.getOrDefault(1, "")
|
||||
b.getOrDefault("", "")
|
||||
b.<!INAPPLICABLE_CANDIDATE!>getOrDefault<!>("", "")
|
||||
b.<!INAPPLICABLE_CANDIDATE!>getOrDefault<!>(1, 2)
|
||||
b.<!INAPPLICABLE_CANDIDATE!>getOrDefault<!>("", 2)
|
||||
}
|
||||
|
||||
+1
-1
@@ -22,7 +22,7 @@ fun foo(x: MutableMap<String, Int>, y: java.util.HashMap<String, Int>, z: java.u
|
||||
x.<!INAPPLICABLE_CANDIDATE!>remove<!>("", null)
|
||||
|
||||
y.remove("", 1)
|
||||
y.remove("", "")
|
||||
y.<!INAPPLICABLE_CANDIDATE!>remove<!>("", "")
|
||||
y.remove("", null)
|
||||
|
||||
z.remove("", 1)
|
||||
|
||||
Reference in New Issue
Block a user