9c2c11f7e9
The problem was that we were using unenhanced constructors that still might contain java type refs. Basically, most of the `firClass.declarations` usages are unsafe in that meaning. The test is very complicated because to reproduce the exception there should be some conditions met: - MyClass should be compiled with K1, so it has `@EnhancedNullability` annotation serialized (that is unnecessary, but don't do any harm) - `@Nls` scope should be properly resolved, so enum entries are converted to resolved type refs - That leads to attempt to check if null-check might be needed to be inserted and to failure at FirTypeUtilsKt.getCanBeNull While this quite controversial to have this check being performed for freshly created annotations calls, the problem with improper constructor lookup anyway existed and fixed correctly. ^KT-57213 Fixed
7 lines
269 B
Kotlin
Vendored
7 lines
269 B
Kotlin
Vendored
fun box(): String {
|
|
// This class is only needed to force resolution of `@Nls` scope, so its types would be converted to resolved
|
|
class LocalClassToUseAnnotation(val name: @Nls(capitalization = Nls.Capitalization.Title) String)
|
|
|
|
return MyClass("OK").name
|
|
}
|