c7435ba760
We are going to deprecate `WITH_RUNTIME` directive. The main reason behind this change is that `WITH_STDLIB` directive better describes its meaning, specifically it will add kotlin stdlib to test's classpath.
31 lines
598 B
Kotlin
Vendored
31 lines
598 B
Kotlin
Vendored
// TARGET_BACKEND: JVM
|
|
// WITH_STDLIB
|
|
// MODULE: lib
|
|
// FILE: A.kt
|
|
|
|
import java.io.IOException
|
|
|
|
interface A {
|
|
@Throws(IOException::class)
|
|
@Anno
|
|
fun foo()
|
|
}
|
|
|
|
annotation class Anno
|
|
|
|
// MODULE: main(lib)
|
|
// FILE: B.kt
|
|
|
|
class B(a: A) : A by a
|
|
|
|
fun box(): String {
|
|
val method = B::class.java.declaredMethods.single { it.name == B::foo.name }
|
|
if (method.exceptionTypes.size != 0)
|
|
return "Fail throws: ${method.exceptionTypes.toList()}"
|
|
|
|
if (method.declaredAnnotations.size != 1)
|
|
return "Fail annotations: ${method.declaredAnnotations.toList()}"
|
|
|
|
return "OK"
|
|
}
|