[FIR] Fix tests (ARGUMENT_TYPE_MISMATCH instead of INCOMPATIBLE_CANDIDATE)
This commit is contained in:
committed by
TeamCityServer
parent
4ffab5fe5a
commit
ad9b962536
Vendored
+1
-1
@@ -19,5 +19,5 @@ public class Y extends X<String> {
|
||||
|
||||
fun main() {
|
||||
checkSubtype<Any>(Y().fooN())
|
||||
Y().<!INAPPLICABLE_CANDIDATE!>barN<!>(null);
|
||||
Y().barN(<!ARGUMENT_TYPE_MISMATCH!>null<!>);
|
||||
}
|
||||
|
||||
Vendored
+1
-1
@@ -19,5 +19,5 @@ public class Y extends X<A> {
|
||||
|
||||
fun main() {
|
||||
checkSubtype<Any>(Y().fooN())
|
||||
Y().<!INAPPLICABLE_CANDIDATE!>barN<!>(null);
|
||||
Y().barN(<!ARGUMENT_TYPE_MISMATCH!>null<!>);
|
||||
}
|
||||
|
||||
+4
-4
@@ -2,7 +2,7 @@ import java.util.*
|
||||
fun foo() {
|
||||
val al = ArrayList<String>()
|
||||
al.size
|
||||
al.<!INAPPLICABLE_CANDIDATE!>contains<!>(1)
|
||||
al.contains(<!ARGUMENT_TYPE_MISMATCH!>1<!>)
|
||||
al.contains("")
|
||||
|
||||
al.remove("")
|
||||
@@ -10,7 +10,7 @@ fun foo() {
|
||||
|
||||
val hs = HashSet<String>()
|
||||
hs.size
|
||||
hs.<!INAPPLICABLE_CANDIDATE!>contains<!>(1)
|
||||
hs.contains(<!ARGUMENT_TYPE_MISMATCH!>1<!>)
|
||||
hs.contains("")
|
||||
|
||||
hs.remove("")
|
||||
@@ -18,10 +18,10 @@ fun foo() {
|
||||
|
||||
val hm = HashMap<String, Int>()
|
||||
hm.size
|
||||
hm.<!INAPPLICABLE_CANDIDATE!>containsKey<!>(1)
|
||||
hm.containsKey(<!ARGUMENT_TYPE_MISMATCH!>1<!>)
|
||||
hm.containsKey("")
|
||||
|
||||
<!INAPPLICABLE_CANDIDATE!>hm[1]<!>
|
||||
hm[<!ARGUMENT_TYPE_MISMATCH!>1<!>]
|
||||
hm[""]
|
||||
|
||||
hm.remove("")
|
||||
|
||||
+12
-12
@@ -35,32 +35,32 @@ fun foo(
|
||||
al: java.util.ArrayList<String>
|
||||
) {
|
||||
a.contains("")
|
||||
a.<!INAPPLICABLE_CANDIDATE!>contains<!>(1)
|
||||
a.contains(<!ARGUMENT_TYPE_MISMATCH!>1<!>)
|
||||
"" in a
|
||||
1 <!INAPPLICABLE_CANDIDATE!>in<!> a
|
||||
<!ARGUMENT_TYPE_MISMATCH!>1<!> in a
|
||||
|
||||
b.contains("")
|
||||
b.<!INAPPLICABLE_CANDIDATE!>contains<!>(1)
|
||||
b.contains(<!ARGUMENT_TYPE_MISMATCH!>1<!>)
|
||||
"" in b
|
||||
1 <!INAPPLICABLE_CANDIDATE!>in<!> b
|
||||
<!ARGUMENT_TYPE_MISMATCH!>1<!> in b
|
||||
|
||||
ic.contains("")
|
||||
ic.<!INAPPLICABLE_CANDIDATE!>contains<!>(1)
|
||||
ic.contains(<!ARGUMENT_TYPE_MISMATCH!>1<!>)
|
||||
"" in ic
|
||||
1 <!INAPPLICABLE_CANDIDATE!>in<!> ic
|
||||
<!ARGUMENT_TYPE_MISMATCH!>1<!> in ic
|
||||
|
||||
ka.contains("")
|
||||
ka.<!INAPPLICABLE_CANDIDATE!>contains<!>(1)
|
||||
ka.contains(<!ARGUMENT_TYPE_MISMATCH!>1<!>)
|
||||
"" in ka
|
||||
1 <!INAPPLICABLE_CANDIDATE!>in<!> ka
|
||||
<!ARGUMENT_TYPE_MISMATCH!>1<!> in ka
|
||||
|
||||
kb.contains("")
|
||||
kb.<!INAPPLICABLE_CANDIDATE!>contains<!>(1)
|
||||
kb.contains(<!ARGUMENT_TYPE_MISMATCH!>1<!>)
|
||||
"" in kb
|
||||
1 <!INAPPLICABLE_CANDIDATE!>in<!> kb
|
||||
<!ARGUMENT_TYPE_MISMATCH!>1<!> in kb
|
||||
|
||||
al.contains("")
|
||||
al.<!INAPPLICABLE_CANDIDATE!>contains<!>(1)
|
||||
al.contains(<!ARGUMENT_TYPE_MISMATCH!>1<!>)
|
||||
"" in al
|
||||
1 <!INAPPLICABLE_CANDIDATE!>in<!> al
|
||||
<!ARGUMENT_TYPE_MISMATCH!>1<!> in al
|
||||
}
|
||||
|
||||
+6
-6
@@ -37,20 +37,20 @@ fun foo(
|
||||
cs: Collection<String>, ca: Collection<Any?>
|
||||
) {
|
||||
a.containsAll(cs)
|
||||
a.<!INAPPLICABLE_CANDIDATE!>containsAll<!>(ca)
|
||||
a.containsAll(<!ARGUMENT_TYPE_MISMATCH!>ca<!>)
|
||||
|
||||
b.containsAll(cs)
|
||||
b.<!INAPPLICABLE_CANDIDATE!>containsAll<!>(ca)
|
||||
b.containsAll(<!ARGUMENT_TYPE_MISMATCH!>ca<!>)
|
||||
|
||||
ic.containsAll(cs)
|
||||
ic.<!INAPPLICABLE_CANDIDATE!>containsAll<!>(ca)
|
||||
ic.containsAll(<!ARGUMENT_TYPE_MISMATCH!>ca<!>)
|
||||
|
||||
ka.containsAll(cs)
|
||||
ka.<!INAPPLICABLE_CANDIDATE!>containsAll<!>(ca)
|
||||
ka.containsAll(<!ARGUMENT_TYPE_MISMATCH!>ca<!>)
|
||||
|
||||
kb.containsAll(cs)
|
||||
kb.<!INAPPLICABLE_CANDIDATE!>containsAll<!>(ca)
|
||||
kb.containsAll(<!ARGUMENT_TYPE_MISMATCH!>ca<!>)
|
||||
|
||||
al.containsAll(cs)
|
||||
al.<!INAPPLICABLE_CANDIDATE!>containsAll<!>(ca)
|
||||
al.containsAll(<!ARGUMENT_TYPE_MISMATCH!>ca<!>)
|
||||
}
|
||||
|
||||
+2
-2
@@ -18,7 +18,7 @@ fun foo(a: A, ka: KA) {
|
||||
1 <!NONE_APPLICABLE!>in<!> a
|
||||
|
||||
ka.contains("")
|
||||
ka.<!INAPPLICABLE_CANDIDATE!>contains<!>(1)
|
||||
ka.contains(<!ARGUMENT_TYPE_MISMATCH!>1<!>)
|
||||
"" in ka
|
||||
1 <!INAPPLICABLE_CANDIDATE!>in<!> ka
|
||||
<!ARGUMENT_TYPE_MISMATCH!>1<!> in ka
|
||||
}
|
||||
|
||||
+1
-1
@@ -12,6 +12,6 @@ fun test(x: List<Int>, y: List<String>) {
|
||||
A("", x) checkType { <!INAPPLICABLE_CANDIDATE!>_<!><A<Any?>>() }
|
||||
A("", y) checkType { _<A<String?>>() }
|
||||
|
||||
<!INAPPLICABLE_CANDIDATE!>A<!><CharSequence, String>("", x)
|
||||
A<CharSequence, String>("", <!ARGUMENT_TYPE_MISMATCH!>x<!>)
|
||||
A<CharSequence, String>("", y)
|
||||
}
|
||||
|
||||
+1
-1
@@ -14,5 +14,5 @@ fun test(x: List<Int>, y: List<String>) {
|
||||
Outer<Int>().Inner<CharSequence, String, Int>("", y, 1) checkType { _<Outer<Int>.Inner<CharSequence>>() }
|
||||
|
||||
Outer<Int>().Inner("", x, 1) checkType { <!INAPPLICABLE_CANDIDATE!>_<!><Outer<Int>.Inner<Any>>() }
|
||||
Outer<Int>().<!INAPPLICABLE_CANDIDATE!>Inner<!><CharSequence, String, Int>("", x, 1)
|
||||
Outer<Int>().Inner<CharSequence, String, Int>("", <!ARGUMENT_TYPE_MISMATCH!>x<!>, 1)
|
||||
}
|
||||
|
||||
+1
-1
@@ -10,7 +10,7 @@ fun test(x: List<Int>, y: List<String>) {
|
||||
A("", x) // inferred as Any!
|
||||
A("", y)
|
||||
|
||||
<!INAPPLICABLE_CANDIDATE!>A<!><String>("", x)
|
||||
A<String>("", <!ARGUMENT_TYPE_MISMATCH!>x<!>)
|
||||
|
||||
A<Any>("", x)
|
||||
A<String>("", y)
|
||||
|
||||
Vendored
+4
-4
@@ -10,12 +10,12 @@ public class A {
|
||||
class Inv<T>
|
||||
|
||||
fun test(x: Inv<Int>, y: Inv<String>) {
|
||||
<!INAPPLICABLE_CANDIDATE!>A<!>("", x)
|
||||
A("", <!ARGUMENT_TYPE_MISMATCH!>x<!>)
|
||||
A("", y)
|
||||
|
||||
<!INAPPLICABLE_CANDIDATE!>A<!><String>("", x)
|
||||
A<String>("", <!ARGUMENT_TYPE_MISMATCH!>x<!>)
|
||||
|
||||
<!INAPPLICABLE_CANDIDATE!>A<!><Any>("", x)
|
||||
A<Any>("", <!ARGUMENT_TYPE_MISMATCH!>x<!>)
|
||||
A<String>("", y)
|
||||
<!INAPPLICABLE_CANDIDATE!>A<!><CharSequence>("", y)
|
||||
A<CharSequence>("", <!ARGUMENT_TYPE_MISMATCH!>y<!>)
|
||||
}
|
||||
|
||||
+2
-2
@@ -10,9 +10,9 @@ public class A<E> {
|
||||
// FILE: main.kt
|
||||
|
||||
class B1(x: List<String>) : A<CharSequence>("", x)
|
||||
class B2(x: List<Int>) : <!INAPPLICABLE_CANDIDATE!>A<CharSequence><!>("", x)
|
||||
class B2(x: List<Int>) : A<CharSequence>("", <!ARGUMENT_TYPE_MISMATCH!>x<!>)
|
||||
|
||||
class C : A<CharSequence> {
|
||||
constructor(x: List<String>) : super("", x)
|
||||
constructor(x: List<Int>, y: Int) : <!INAPPLICABLE_CANDIDATE!>super<!>("", x)
|
||||
constructor(x: List<Int>, y: Int) : super("", <!ARGUMENT_TYPE_MISMATCH!>x<!>)
|
||||
}
|
||||
|
||||
Vendored
+2
-2
@@ -13,9 +13,9 @@ public class A<E> {
|
||||
// if there is not enough information to infer corresponding arguments
|
||||
// May be we could add some special syntax for such arguments
|
||||
class B1(x: List<String>) : A<CharSequence>("", x)
|
||||
class B2(x: List<Int>) : <!INAPPLICABLE_CANDIDATE!>A<CharSequence><!>("", x)
|
||||
class B2(x: List<Int>) : A<CharSequence>("", <!ARGUMENT_TYPE_MISMATCH!>x<!>)
|
||||
|
||||
class C : A<CharSequence> {
|
||||
constructor(x: List<String>) : super("", x)
|
||||
constructor(x: List<Int>, y: Int) : <!INAPPLICABLE_CANDIDATE!>super<!>("", x)
|
||||
constructor(x: List<Int>, y: Int) : super("", <!ARGUMENT_TYPE_MISMATCH!>x<!>)
|
||||
}
|
||||
|
||||
+1
-1
@@ -11,7 +11,7 @@ fun test(x: List<Int>, y: List<String>) {
|
||||
var z: A<Double> = A("", x) // E inferred from expected type
|
||||
z = A("", y)
|
||||
|
||||
z = <!INAPPLICABLE_CANDIDATE!>A<!><Double, String>("", x)
|
||||
z = A<Double, String>("", <!ARGUMENT_TYPE_MISMATCH!>x<!>)
|
||||
|
||||
z = A<Double, Any>("", x)
|
||||
z = A<Double, String>("", y)
|
||||
|
||||
+2
-2
@@ -11,8 +11,8 @@ public class J {
|
||||
|
||||
import java.io.Serializable
|
||||
|
||||
fun cloneable(c: Cloneable) = <!INAPPLICABLE_CANDIDATE!>J<!>(c)
|
||||
fun cloneable(c: Cloneable) = J(<!ARGUMENT_TYPE_MISMATCH!>c<!>)
|
||||
|
||||
fun serializable(s: Serializable) = <!INAPPLICABLE_CANDIDATE!>J<!>(s)
|
||||
fun serializable(s: Serializable) = J(<!ARGUMENT_TYPE_MISMATCH!>s<!>)
|
||||
|
||||
fun <T> both(t: T) where T : Cloneable, T : Serializable = J(t)
|
||||
|
||||
+1
-1
@@ -100,7 +100,7 @@ public class SpecializedMap extends AbstractSpecializedMap {
|
||||
// FILE: main.kt
|
||||
fun foo(x: SpecializedMap) {
|
||||
x.containsKey(1)
|
||||
x.<!INAPPLICABLE_CANDIDATE!>containsKey<!>(null)
|
||||
x.containsKey(<!ARGUMENT_TYPE_MISMATCH!>null<!>)
|
||||
|
||||
x.<!OVERLOAD_RESOLUTION_AMBIGUITY!>get<!>(2)
|
||||
x.<!NONE_APPLICABLE!>get<!>(null)
|
||||
|
||||
@@ -16,12 +16,12 @@ public interface J2 extends J {
|
||||
|
||||
// FILE: main.kt
|
||||
fun main() {
|
||||
<!INAPPLICABLE_CANDIDATE!>J<!> { s: String -> s} // should be prohibited, because SAM value parameter has nullable type
|
||||
J { s: String -> <!ARGUMENT_TYPE_MISMATCH!>s<!>} // should be prohibited, because SAM value parameter has nullable type
|
||||
J { "" + it<!UNSAFE_CALL!>.<!>length }
|
||||
J { null }
|
||||
J { it?.length?.toString() }
|
||||
|
||||
<!INAPPLICABLE_CANDIDATE!>J2<!> { s: String -> s}
|
||||
J2 { s: String -> <!ARGUMENT_TYPE_MISMATCH!>s<!>}
|
||||
J2 { "" + it<!UNSAFE_CALL!>.<!>length }
|
||||
J2 { null }
|
||||
J2 { it?.length?.toString() }
|
||||
|
||||
+1
-1
@@ -48,6 +48,6 @@ fun main() {
|
||||
x -> x.toString()
|
||||
}
|
||||
|
||||
A.<!INAPPLICABLE_CANDIDATE!>baz<!>(block)
|
||||
A.baz(<!ARGUMENT_TYPE_MISMATCH!>block<!>)
|
||||
A.baz(block2)
|
||||
}
|
||||
|
||||
@@ -33,8 +33,8 @@ fun testLiterals() {
|
||||
}
|
||||
|
||||
fun testNotSerializable(l: List<Int>) {
|
||||
<!INAPPLICABLE_CANDIDATE!>use<!>(l)
|
||||
<!INAPPLICABLE_CANDIDATE!>use<!>(N())
|
||||
use(<!ARGUMENT_TYPE_MISMATCH!>l<!>)
|
||||
use(<!ARGUMENT_TYPE_MISMATCH!>N()<!>)
|
||||
}
|
||||
|
||||
enum class C {
|
||||
|
||||
Vendored
+1
-1
@@ -18,7 +18,7 @@ public interface SLRUMap<V> {
|
||||
// FILE: main.kt
|
||||
|
||||
fun <V> SLRUMap<V>.getOrPut(value: V, l: List<V>) {
|
||||
<!INAPPLICABLE_CANDIDATE!>takeV<!>(value)
|
||||
takeV(<!ARGUMENT_TYPE_MISMATCH!>value<!>)
|
||||
takeVList(l)
|
||||
|
||||
takeE(value)
|
||||
|
||||
Vendored
+1
-1
@@ -18,7 +18,7 @@ public interface SLRUMap<V> {
|
||||
// FILE: main.kt
|
||||
|
||||
fun <V> SLRUMap<V>.getOrPut(value: V, l: List<V>) {
|
||||
<!INAPPLICABLE_CANDIDATE!>takeV<!>(value)
|
||||
takeV(<!ARGUMENT_TYPE_MISMATCH!>value<!>)
|
||||
takeVList(l)
|
||||
|
||||
takeE(value)
|
||||
|
||||
@@ -20,5 +20,5 @@ class In<in F> {
|
||||
|
||||
fun test() {
|
||||
A.foo().x() checkType { _<Any?>() }
|
||||
A.bar().<!INAPPLICABLE_CANDIDATE!>y<!>(null)
|
||||
A.bar().y(<!ARGUMENT_TYPE_MISMATCH!>null<!>)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user