[FIR] Implement NULL_FOR_NONNULL_TYPE diagnostics, fix tests
This commit is contained in:
Vendored
-23
@@ -1,23 +0,0 @@
|
||||
// !CHECK_TYPE
|
||||
// FILE: A.java
|
||||
public class A {}
|
||||
|
||||
// FILE: X.java
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
public class X<T> {
|
||||
@NotNull T fooN() {return null;}
|
||||
void barN(@NotNull T a) {}
|
||||
}
|
||||
|
||||
// FILE: Y.java
|
||||
public class Y extends X<String> {
|
||||
|
||||
}
|
||||
|
||||
// FILE: test.kt
|
||||
|
||||
fun main() {
|
||||
checkSubtype<Any>(Y().fooN())
|
||||
Y().barN(<!ARGUMENT_TYPE_MISMATCH!>null<!>);
|
||||
}
|
||||
Vendored
+1
@@ -1,3 +1,4 @@
|
||||
// FIR_IDENTICAL
|
||||
// !CHECK_TYPE
|
||||
// FILE: A.java
|
||||
public class A {}
|
||||
|
||||
Vendored
-23
@@ -1,23 +0,0 @@
|
||||
// !CHECK_TYPE
|
||||
// FILE: A.java
|
||||
public class A {}
|
||||
|
||||
// FILE: X.java
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
public class X<T> {
|
||||
@NotNull T fooN() {return null;}
|
||||
void barN(@NotNull T a) {}
|
||||
}
|
||||
|
||||
// FILE: Y.java
|
||||
public class Y extends X<A> {
|
||||
|
||||
}
|
||||
|
||||
// FILE: test.kt
|
||||
|
||||
fun main() {
|
||||
checkSubtype<Any>(Y().fooN())
|
||||
Y().barN(<!ARGUMENT_TYPE_MISMATCH!>null<!>);
|
||||
}
|
||||
+1
@@ -1,3 +1,4 @@
|
||||
// FIR_IDENTICAL
|
||||
// !CHECK_TYPE
|
||||
// FILE: A.java
|
||||
public class A {}
|
||||
|
||||
+1
-1
@@ -100,7 +100,7 @@ public class SpecializedMap extends AbstractSpecializedMap {
|
||||
// FILE: main.kt
|
||||
fun foo(x: SpecializedMap) {
|
||||
x.containsKey(1)
|
||||
x.containsKey(<!ARGUMENT_TYPE_MISMATCH!>null<!>)
|
||||
x.containsKey(<!NULL_FOR_NONNULL_TYPE!>null<!>)
|
||||
|
||||
x.<!OVERLOAD_RESOLUTION_AMBIGUITY!>get<!>(2)
|
||||
x.<!NONE_APPLICABLE!>get<!>(null)
|
||||
|
||||
@@ -20,5 +20,5 @@ class In<in F> {
|
||||
|
||||
fun test() {
|
||||
A.foo().x() checkType { _<Any?>() }
|
||||
A.bar().y(<!ARGUMENT_TYPE_MISMATCH!>null<!>)
|
||||
A.bar().y(<!NULL_FOR_NONNULL_TYPE!>null<!>)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user