[FIR] Don't add @EnhancedVisibility to types with @Nullable annotation

This commit is contained in:
Dmitriy Novozhilov
2021-03-12 15:55:46 +03:00
committed by TeamCityServer
parent a7c08345b4
commit 3d1f4b8386
22 changed files with 106 additions and 43 deletions
@@ -0,0 +1,40 @@
// TARGET_BACKEND: JVM
// JVM_TARGET: 1.8
// FILE: Utils.java
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
public class Utils {
@NotNull
public static A resolveVisibilityFromModifiers(@NotNull A defaultVisibility) {
return A.Companion.getPUBLIC();
}
@Nullable
public static Integer compare(@NotNull A first, @NotNull A second) {
if (first.getIndex() == second.getIndex()) return null;
return Integer.compare(first.getIndex(), second.getIndex());
}
}
// FILE: main.kt
class KtModifierListOwner
class A(val index: Int) {
companion object {
val PUBLIC = A(1)
val PRIVATE = A(2)
}
}
fun test(visibility: A): String {
val parentVisibility = Utils.resolveVisibilityFromModifiers(visibility)
if (Utils.compare(parentVisibility, visibility) ?: 0 < 0) {
return "OK"
}
return "Fail"
}
fun box(): String {
return test(A.PRIVATE)
}