// DONT_TARGET_EXACT_BACKEND: JS JS_IR JS_IR_ES6 WASM NATIVE // IGNORE_BACKEND_FIR: JVM_IR // WITH_RUNTIME // MODULE: lib // FILE: JavaAnn.java import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; @Retention(RetentionPolicy.RUNTIME) @interface JavaAnn { Class[] value(); } // MODULE: main(lib) // FILE: 1.kt class O class K @JavaAnn(O::class, K::class) class MyClass fun box(): String { val args = MyClass::class.java.getAnnotation(JavaAnn::class.java).value val argName1 = args[0].java.simpleName ?: "fail 1" val argName2 = args[1].java.simpleName ?: "fail 2" return argName1 + argName2 }