d1ce55cbd2
When an annotation constructor value parameter is annotated with the very same annotation, FIR2IR went in an infinite loop when trying to generate it. To fix this, the constructor is added to the Fir2IrDeclarationStorage cache before generating the value parameters. To accommodate for the missing parameters, the value arguments count is determined using the FIR.
17 lines
365 B
Kotlin
Vendored
17 lines
365 B
Kotlin
Vendored
// FIR_DUMP
|
|
// DUMP_IR
|
|
|
|
annotation class Ann(@Ann(1) val e: Int)
|
|
|
|
@MyRequiresOptIn("", MyRequiresOptIn.MyLevel.ERROR)
|
|
public annotation class MyRequiresOptIn(
|
|
val a: String = "",
|
|
@MyRequiresOptIn("", MyRequiresOptIn.MyLevel.WARNING) val b: MyLevel = MyLevel.ERROR
|
|
) {
|
|
public enum class MyLevel {
|
|
WARNING,
|
|
ERROR,
|
|
}
|
|
}
|
|
|
|
fun box() = "OK" |