blob: 32ab3ce4dbea820abbc2ac54c7808484b207b2e3 [file] [log] [blame]
// TARGET_BACKEND: JVM
// WITH_STDLIB
// FILE: JavaClass.java
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
public class JavaClass {
@Retention(RetentionPolicy.RUNTIME)
@interface Foo {
int value();
}
@Foo(KotlinClass.FOO_INT)
public String test() throws NoSuchMethodException {
return KotlinClass.FOO_STRING +
JavaClass.class.getMethod("test").getAnnotation(Foo.class).value();
}
}
// FILE: kotlinClass.kt
class KotlinClass {
companion object {
const val FOO_INT: Int = 10
@JvmField val FOO_STRING: String = "OK"
}
}
fun box(): String {
val test = JavaClass().test()
return if (test == "OK10") "OK" else "fail : $test"
}