[FIR] Fix enhancement of FlexibleNullability and EnhancedNullability

- Add utilities to add new attribute to ConeAttributes
- Get rid of FlexibleNullability attribute (it can be easily inferred
    for any flexible type at any moment)
- Fix determining of EnhancedNullability attribute
This commit is contained in:
Dmitriy Novozhilov
2021-03-09 14:51:19 +03:00
parent 0108f8a1b4
commit 65ea4e184a
290 changed files with 1395 additions and 2037 deletions
@@ -1,9 +1,9 @@
fun f(x: Any): String {
when {
x is A<*> -> return x /*as A<*> */.call(block = local fun <anonymous>(y: Any?): String? {
x is A<*> -> return x /*as A<*> */.call(block = local fun <anonymous>(y: Any?): @FlexibleNullability String? {
return "OK"
}
/*-> I<Any?>? */) /*!! String */
/*-> @FlexibleNullability I<@FlexibleNullability Any?>? */) /*!! @FlexibleNullability String */
}
return "Fail"
}