Don't enhance previously erased value parameters for jspecify strict mode

^KT-48261 Fixed
This commit is contained in:
Victor Petukhov
2021-10-06 14:15:25 +03:00
parent e77f72071d
commit d015d3bc0e
19 changed files with 348 additions and 21 deletions
@@ -0,0 +1,31 @@
// FIR_IDENTICAL
// JSR305_GLOBAL_REPORT: strict
// JSPECIFY_STATE: warn
// WITH_RUNTIME
// FULL_JDK
// !LANGUAGE: +IgnoreNullabilityForErasedValueParameters
// FILE: MyList.java
import java.util.List;
import org.jetbrains.annotations.NotNull;
public abstract class MyList<E> extends MyCollection<E> implements List<@NotNull E> {
@Override
public boolean contains(Object o) {
return false;
}
}
// FILE: MyCollection.java
import java.util.AbstractCollection;
import javax.annotation.CheckForNull;
public abstract class MyCollection<E> extends AbstractCollection<E> {
@Override
public boolean contains(@CheckForNull Object o) {
return false;
}
}
// FILE: main.kt
fun go(myList : MyList<String>) = myList.contains("")