mirror of
https://github.com/jlengrand/kotlin.git
synced 2026-05-09 00:21:47 +00:00
@@ -1,7 +1,9 @@
|
||||
// !API_VERSION: 1.3
|
||||
// JVM_TARGET: 1.8
|
||||
// KOTLIN_CONFIGURATION_FLAGS: +JVM.JVM8_TARGET_WITH_DEFAULTS
|
||||
// WITH_RUNTIME
|
||||
|
||||
interface Test<T> {
|
||||
@kotlin.annotations.JvmDefault
|
||||
fun test(p: T): T {
|
||||
return p
|
||||
}
|
||||
|
||||
@@ -1,13 +1,16 @@
|
||||
// !API_VERSION: 1.3
|
||||
// JVM_TARGET: 1.8
|
||||
// KOTLIN_CONFIGURATION_FLAGS: +JVM.JVM8_TARGET_WITH_DEFAULTS
|
||||
// WITH_RUNTIME
|
||||
|
||||
interface Test<T> {
|
||||
@kotlin.annotations.JvmDefault
|
||||
fun test(p: T): T {
|
||||
return p
|
||||
}
|
||||
}
|
||||
|
||||
interface Test2: Test<String> {
|
||||
@kotlin.annotations.JvmDefault
|
||||
override fun test(p: String): String {
|
||||
return p + "K"
|
||||
}
|
||||
|
||||
24
compiler/testData/codegen/java8/box/jvm8/defaults/callableReference.kt
vendored
Normal file
24
compiler/testData/codegen/java8/box/jvm8/defaults/callableReference.kt
vendored
Normal file
@@ -0,0 +1,24 @@
|
||||
// !API_VERSION: 1.3
|
||||
// JVM_TARGET: 1.8
|
||||
// WITH_RUNTIME
|
||||
|
||||
interface Test {
|
||||
@kotlin.annotations.JvmDefault
|
||||
fun foo(): String = "O"
|
||||
|
||||
@kotlin.annotations.JvmDefault
|
||||
val bar: String
|
||||
get() = "K"
|
||||
|
||||
fun test(): String {
|
||||
return (::foo)() + (::bar)()
|
||||
}
|
||||
}
|
||||
|
||||
class TestClass : Test {
|
||||
|
||||
}
|
||||
|
||||
fun box(): String {
|
||||
return TestClass().test()
|
||||
}
|
||||
@@ -1,7 +1,9 @@
|
||||
// !API_VERSION: 1.3
|
||||
// JVM_TARGET: 1.8
|
||||
// KOTLIN_CONFIGURATION_FLAGS: +JVM.JVM8_TARGET_WITH_DEFAULTS
|
||||
// WITH_RUNTIME
|
||||
|
||||
interface IBase {
|
||||
@kotlin.annotations.JvmDefault
|
||||
fun bar() = "OK"
|
||||
}
|
||||
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
// !API_VERSION: 1.3
|
||||
// JVM_TARGET: 1.8
|
||||
// KOTLIN_CONFIGURATION_FLAGS: +JVM.JVM8_TARGET_WITH_DEFAULTS
|
||||
|
||||
// WITH_RUNTIME
|
||||
interface Z {
|
||||
@kotlin.annotations.JvmDefault
|
||||
fun test(s: String = "OK"): String {
|
||||
return s
|
||||
}
|
||||
|
||||
@@ -1,9 +1,10 @@
|
||||
// !API_VERSION: 1.3
|
||||
// JVM_TARGET: 1.8
|
||||
// KOTLIN_CONFIGURATION_FLAGS: +JVM.JVM8_TARGET_WITH_DEFAULTS
|
||||
// WITH_REFLECT
|
||||
// FULL_JDK
|
||||
|
||||
interface Test {
|
||||
@kotlin.annotations.JvmDefault
|
||||
fun test(): String {
|
||||
return "Test"
|
||||
}
|
||||
@@ -15,6 +16,7 @@ open class TestClass : Test {
|
||||
|
||||
|
||||
interface Test2 : Test {
|
||||
@kotlin.annotations.JvmDefault
|
||||
override fun test(): String {
|
||||
return "Test2"
|
||||
}
|
||||
|
||||
@@ -1,17 +1,23 @@
|
||||
// !API_VERSION: 1.3
|
||||
// JVM_TARGET: 1.8
|
||||
// KOTLIN_CONFIGURATION_FLAGS: +JVM.JVM8_TARGET_WITH_DEFAULTS
|
||||
// WITH_RUNTIME
|
||||
// IGNORE_BACKEND: JS
|
||||
|
||||
interface Z {
|
||||
|
||||
@kotlin.annotations.JvmDefault
|
||||
private fun privateFun() = { "OK" }
|
||||
|
||||
@kotlin.annotations.JvmDefault
|
||||
fun callPrivateFun() = privateFun()
|
||||
|
||||
@kotlin.annotations.JvmDefault
|
||||
fun publicFun() = { "OK" }
|
||||
|
||||
@kotlin.annotations.JvmDefault
|
||||
fun funWithDefaultArgs(s: () -> Unit = {}): () -> Unit
|
||||
|
||||
@kotlin.annotations.JvmDefault
|
||||
val property: () -> Unit
|
||||
get() = {}
|
||||
|
||||
|
||||
@@ -1,7 +1,9 @@
|
||||
// !API_VERSION: 1.3
|
||||
// JVM_TARGET: 1.8
|
||||
// KOTLIN_CONFIGURATION_FLAGS: +JVM.JVM8_TARGET_WITH_DEFAULTS
|
||||
// WITH_RUNTIME
|
||||
|
||||
interface Z<T> {
|
||||
@kotlin.annotations.JvmDefault
|
||||
fun test(p: T): T {
|
||||
return p
|
||||
}
|
||||
|
||||
@@ -1,7 +1,9 @@
|
||||
// !API_VERSION: 1.3
|
||||
// JVM_TARGET: 1.8
|
||||
// KOTLIN_CONFIGURATION_FLAGS: +JVM.JVM8_TARGET_WITH_DEFAULTS
|
||||
// WITH_RUNTIME
|
||||
|
||||
interface Z<T> {
|
||||
@kotlin.annotations.JvmDefault
|
||||
fun test(p: T): T {
|
||||
return p
|
||||
}
|
||||
|
||||
@@ -1,9 +1,12 @@
|
||||
// !API_VERSION: 1.3
|
||||
// JVM_TARGET: 1.8
|
||||
// KOTLIN_CONFIGURATION_FLAGS: +JVM.JVM8_TARGET_WITH_DEFAULTS
|
||||
// WITH_RUNTIME
|
||||
|
||||
interface Z<T> {
|
||||
|
||||
val value: T
|
||||
|
||||
@kotlin.annotations.JvmDefault
|
||||
val z: T
|
||||
get() = value
|
||||
}
|
||||
|
||||
@@ -1,8 +1,9 @@
|
||||
// !API_VERSION: 1.3
|
||||
// JVM_TARGET: 1.8
|
||||
// KOTLIN_CONFIGURATION_FLAGS: +JVM.JVM8_TARGET_WITH_DEFAULTS
|
||||
// WITH_RUNTIME
|
||||
// FULL_JDK
|
||||
interface Test {
|
||||
@kotlin.annotations.JvmDefault
|
||||
fun test() {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,8 +1,9 @@
|
||||
// !API_VERSION: 1.3
|
||||
// JVM_TARGET: 1.8
|
||||
// KOTLIN_CONFIGURATION_FLAGS: +JVM.JVM8_TARGET_WITH_DEFAULTS
|
||||
// WITH_RUNTIME
|
||||
// FULL_JDK
|
||||
interface Test {
|
||||
@kotlin.annotations.JvmDefault
|
||||
fun test() {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,9 +1,10 @@
|
||||
// !API_VERSION: 1.3
|
||||
// JVM_TARGET: 1.8
|
||||
// KOTLIN_CONFIGURATION_FLAGS: +JVM.JVM8_TARGET_WITH_DEFAULTS
|
||||
// WITH_RUNTIME
|
||||
// FULL_JDK
|
||||
|
||||
interface Test {
|
||||
@kotlin.annotations.JvmDefault
|
||||
fun test() {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,10 +1,14 @@
|
||||
// !API_VERSION: 1.3
|
||||
// JVM_TARGET: 1.8
|
||||
// KOTLIN_CONFIGURATION_FLAGS: +JVM.JVM8_TARGET_WITH_DEFAULTS
|
||||
// WITH_RUNTIME
|
||||
|
||||
interface KCallable {
|
||||
@kotlin.annotations.JvmDefault
|
||||
val returnType: String
|
||||
}
|
||||
|
||||
interface KCallableImpl : KCallable {
|
||||
@kotlin.annotations.JvmDefault
|
||||
override val returnType: String
|
||||
get() = "OK"
|
||||
}
|
||||
|
||||
@@ -1,10 +1,14 @@
|
||||
// !API_VERSION: 1.3
|
||||
// JVM_TARGET: 1.8
|
||||
// KOTLIN_CONFIGURATION_FLAGS: +JVM.JVM8_TARGET_WITH_DEFAULTS
|
||||
// WITH_RUNTIME
|
||||
|
||||
interface KCallable {
|
||||
@kotlin.annotations.JvmDefault
|
||||
val returnType: String
|
||||
}
|
||||
|
||||
interface KCallableImpl : KCallable {
|
||||
@kotlin.annotations.JvmDefault
|
||||
override val returnType: String
|
||||
get() = "OK"
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
// !API_VERSION: 1.3
|
||||
// JVM_TARGET: 1.8
|
||||
// KOTLIN_CONFIGURATION_FLAGS: +JVM.JVM8_TARGET_WITH_DEFAULTS
|
||||
// WITH_REFLECT
|
||||
|
||||
annotation class Property(val value: String)
|
||||
@@ -7,6 +7,7 @@ annotation class Accessor(val value: String)
|
||||
|
||||
interface Z {
|
||||
@Property("OK")
|
||||
@kotlin.annotations.JvmDefault
|
||||
val z: String
|
||||
@Accessor("OK")
|
||||
get() = "OK"
|
||||
@@ -16,7 +17,7 @@ interface Z {
|
||||
class Test : Z
|
||||
|
||||
fun box() : String {
|
||||
val value = (Z::z.annotations.single() as Property).value
|
||||
val value = Z::z.annotations.filterIsInstance<Property>().single().value
|
||||
if (value != "OK") return value
|
||||
return (Z::z.getter.annotations.single() as Accessor).value
|
||||
}
|
||||
@@ -1,24 +0,0 @@
|
||||
// JVM_TARGET: 1.8
|
||||
// KOTLIN_CONFIGURATION_FLAGS: +JVM.JVM8_TARGET_WITH_DEFAULTS, +JVM.INTERFACE_COMPATIBILITY
|
||||
// WITH_REFLECT
|
||||
|
||||
annotation class Property(val value: String)
|
||||
annotation class Accessor(val value: String)
|
||||
|
||||
interface Z {
|
||||
@Property("OK")
|
||||
val z: String
|
||||
@Accessor("OK")
|
||||
get() = "OK"
|
||||
}
|
||||
|
||||
|
||||
class Test : Z
|
||||
|
||||
fun box() : String {
|
||||
val value = (Z::z.annotations.single() as Property).value
|
||||
if (value != "OK") return value
|
||||
val forName = Class.forName("Z\$DefaultImpls")
|
||||
val annotation = forName.getDeclaredMethod("z\$annotations").getAnnotation(Property::class.java)
|
||||
return annotation.value
|
||||
}
|
||||
@@ -1,7 +1,9 @@
|
||||
// !API_VERSION: 1.3
|
||||
// JVM_TARGET: 1.8
|
||||
// KOTLIN_CONFIGURATION_FLAGS: +JVM.JVM8_TARGET_WITH_DEFAULTS
|
||||
// WITH_RUNTIME
|
||||
|
||||
interface Test {
|
||||
@kotlin.annotations.JvmDefault
|
||||
fun test(): String {
|
||||
return "OK"
|
||||
}
|
||||
|
||||
@@ -1,7 +1,9 @@
|
||||
// !API_VERSION: 1.3
|
||||
// JVM_TARGET: 1.8
|
||||
// KOTLIN_CONFIGURATION_FLAGS: +JVM.JVM8_TARGET_WITH_DEFAULTS
|
||||
// WITH_RUNTIME
|
||||
|
||||
interface Z {
|
||||
@kotlin.annotations.JvmDefault
|
||||
val z: String
|
||||
get() = "OK"
|
||||
}
|
||||
|
||||
@@ -1,14 +1,16 @@
|
||||
// !API_VERSION: 1.3
|
||||
// JVM_TARGET: 1.8
|
||||
// KOTLIN_CONFIGURATION_FLAGS: +JVM.JVM8_TARGET_WITH_DEFAULTS
|
||||
|
||||
// WITH_RUNTIME
|
||||
|
||||
interface Test {
|
||||
@kotlin.annotations.JvmDefault
|
||||
fun test(): String {
|
||||
return "OK"
|
||||
}
|
||||
}
|
||||
|
||||
interface Test2 : Test {
|
||||
@kotlin.annotations.JvmDefault
|
||||
override fun test(): String {
|
||||
return super.test()
|
||||
}
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
// !API_VERSION: 1.3
|
||||
// JVM_TARGET: 1.8
|
||||
// KOTLIN_CONFIGURATION_FLAGS: +JVM.JVM8_TARGET_WITH_DEFAULTS
|
||||
// WITH_RUNTIME
|
||||
// FULL_JDK
|
||||
|
||||
// There should be no DefaultImpls method for MutableMap.remove(K;V)
|
||||
@@ -11,6 +12,7 @@ class B : A<String, String>, java.util.AbstractMap<String, String>() {
|
||||
}
|
||||
|
||||
interface C<K, V> : MutableMap<K, V> {
|
||||
@kotlin.annotations.JvmDefault
|
||||
override fun remove(key: K, value: V) = true
|
||||
}
|
||||
|
||||
|
||||
@@ -1,13 +1,15 @@
|
||||
// !API_VERSION: 1.3
|
||||
// JVM_TARGET: 1.8
|
||||
// WITH_RUNTIME
|
||||
// FILE: 1.kt
|
||||
interface Test {
|
||||
@kotlin.annotations.JvmDefault
|
||||
fun test(): String {
|
||||
return "OK"
|
||||
}
|
||||
}
|
||||
|
||||
// FILE: 2.kt
|
||||
// JVM_TARGET: 1.8
|
||||
// KOTLIN_CONFIGURATION_FLAGS: +JVM.JVM8_TARGET_WITH_DEFAULTS
|
||||
class TestClass : Test {
|
||||
override fun test(): String {
|
||||
return super.test()
|
||||
@@ -1,23 +1,23 @@
|
||||
// !API_VERSION: 1.3
|
||||
// JVM_TARGET: 1.8
|
||||
// WITH_RUNTIME
|
||||
// FILE: 1.kt
|
||||
interface Test {
|
||||
@kotlin.annotations.JvmDefault
|
||||
fun test(): String {
|
||||
return "OK"
|
||||
}
|
||||
}
|
||||
|
||||
// FILE: 2.kt
|
||||
// JVM_TARGET: 1.8
|
||||
// KOTLIN_CONFIGURATION_FLAGS: +JVM.JVM8_TARGET_WITH_DEFAULTS
|
||||
|
||||
interface Test2 : Test {
|
||||
@kotlin.annotations.JvmDefault
|
||||
override fun test(): String {
|
||||
return super.test()
|
||||
}
|
||||
}
|
||||
|
||||
class TestClass : Test2 {
|
||||
|
||||
}
|
||||
|
||||
fun box(): String {
|
||||
return TestClass().test()
|
||||
return object : Test2 {}.test()
|
||||
}
|
||||
19
compiler/testData/codegen/java8/compileKotlinAgainstKotlin/jvm8/defaults/superPropAccess.kt
vendored
Normal file
19
compiler/testData/codegen/java8/compileKotlinAgainstKotlin/jvm8/defaults/superPropAccess.kt
vendored
Normal file
@@ -0,0 +1,19 @@
|
||||
// !API_VERSION: 1.3
|
||||
// JVM_TARGET: 1.8
|
||||
// WITH_RUNTIME
|
||||
// FILE: 1.kt
|
||||
interface Test {
|
||||
@kotlin.annotations.JvmDefault
|
||||
val prop: String
|
||||
get() = "OK"
|
||||
}
|
||||
|
||||
// FILE: 2.kt
|
||||
class TestClass : Test {
|
||||
override val prop: String
|
||||
get() = super.prop
|
||||
}
|
||||
|
||||
fun box(): String {
|
||||
return TestClass().prop
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
// !API_VERSION: 1.3
|
||||
// JVM_TARGET: 1.8
|
||||
// WITH_RUNTIME
|
||||
// FILE: 1.kt
|
||||
interface Test {
|
||||
@kotlin.annotations.JvmDefault
|
||||
val prop: String
|
||||
get() = "OK"
|
||||
}
|
||||
|
||||
// FILE: 2.kt
|
||||
interface Test2 : Test {
|
||||
@kotlin.annotations.JvmDefault
|
||||
override val prop: String
|
||||
get() = super.prop
|
||||
}
|
||||
|
||||
fun box(): String {
|
||||
return object : Test2 {}.prop
|
||||
}
|
||||
@@ -1,3 +1,4 @@
|
||||
// !API_VERSION: 1.3
|
||||
// FILE: 1.kt
|
||||
interface Test {
|
||||
fun test(): String {
|
||||
@@ -7,8 +8,9 @@ interface Test {
|
||||
|
||||
// FILE: 2.kt
|
||||
// JVM_TARGET: 1.8
|
||||
// KOTLIN_CONFIGURATION_FLAGS: +JVM.JVM8_TARGET_WITH_DEFAULTS
|
||||
// WITH_RUNTIME
|
||||
interface Test2 : Test {
|
||||
@kotlin.annotations.JvmDefault
|
||||
override fun test(): String {
|
||||
return super.test()
|
||||
}
|
||||
@@ -20,6 +22,7 @@ interface Test3 : Test {
|
||||
|
||||
|
||||
interface Test4 : Test2, Test3 {
|
||||
@kotlin.annotations.JvmDefault
|
||||
override fun test(): String {
|
||||
return super.test()
|
||||
}
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
// !API_VERSION: 1.3
|
||||
// FILE: 1.kt
|
||||
interface Test {
|
||||
fun test(): String {
|
||||
@@ -7,7 +8,7 @@ interface Test {
|
||||
|
||||
// FILE: 2.kt
|
||||
// JVM_TARGET: 1.8
|
||||
// KOTLIN_CONFIGURATION_FLAGS: +JVM.JVM8_TARGET_WITH_DEFAULTS
|
||||
// WITH_RUNTIME
|
||||
open class TestClass : Test {
|
||||
override fun test(): String {
|
||||
return super.test()
|
||||
@@ -15,6 +16,7 @@ open class TestClass : Test {
|
||||
}
|
||||
|
||||
interface Test2 : Test {
|
||||
@kotlin.annotations.JvmDefault
|
||||
override fun test(): String
|
||||
}
|
||||
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
// !API_VERSION: 1.3
|
||||
// FILE: 1.kt
|
||||
interface Test {
|
||||
fun test(): String {
|
||||
@@ -7,12 +8,13 @@ interface Test {
|
||||
|
||||
// FILE: 2.kt
|
||||
// JVM_TARGET: 1.8
|
||||
// KOTLIN_CONFIGURATION_FLAGS: +JVM.JVM8_TARGET_WITH_DEFAULTS
|
||||
// WITH_RUNTIME
|
||||
abstract class TestClass : Test {
|
||||
abstract override fun test(): String
|
||||
}
|
||||
|
||||
interface Test2 : Test {
|
||||
@kotlin.annotations.JvmDefault
|
||||
override fun test(): String {
|
||||
return "OK"
|
||||
}
|
||||
|
||||
@@ -8,7 +8,6 @@ interface Test {
|
||||
|
||||
// FILE: 2.kt
|
||||
// JVM_TARGET: 1.8
|
||||
// KOTLIN_CONFIGURATION_FLAGS: +JVM.JVM8_TARGET_WITH_DEFAULTS
|
||||
class TestClass : Test {
|
||||
override fun test(): String {
|
||||
return super.test()
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
// !API_VERSION: 1.3
|
||||
// FILE: 1.kt
|
||||
interface Test {
|
||||
fun test(): String {
|
||||
@@ -7,8 +8,9 @@ interface Test {
|
||||
|
||||
// FILE: 2.kt
|
||||
// JVM_TARGET: 1.8
|
||||
// KOTLIN_CONFIGURATION_FLAGS: +JVM.JVM8_TARGET_WITH_DEFAULTS
|
||||
// WITH_RUNTIME
|
||||
interface Test2 : Test {
|
||||
@kotlin.annotations.JvmDefault
|
||||
override fun test(): String {
|
||||
return super.test()
|
||||
}
|
||||
@@ -1,3 +1,4 @@
|
||||
// !API_VERSION: 1.3
|
||||
// FILE: 1.kt
|
||||
|
||||
interface Test {
|
||||
@@ -8,8 +9,9 @@ interface Test {
|
||||
|
||||
// FILE: 2.kt
|
||||
// JVM_TARGET: 1.8
|
||||
// KOTLIN_CONFIGURATION_FLAGS: +JVM.JVM8_TARGET_WITH_DEFAULTS
|
||||
// WITH_RUNTIME
|
||||
interface Test2 : Test {
|
||||
@kotlin.annotations.JvmDefault
|
||||
override fun test(): String {
|
||||
return super.test()
|
||||
}
|
||||
|
||||
@@ -7,7 +7,6 @@ interface Test {
|
||||
|
||||
// FILE: 2.kt
|
||||
// JVM_TARGET: 1.8
|
||||
// KOTLIN_CONFIGURATION_FLAGS: +JVM.JVM8_TARGET_WITH_DEFAULTS
|
||||
class TestClass : Test {
|
||||
override val test: String
|
||||
get() = super.test
|
||||
|
||||
@@ -0,0 +1,26 @@
|
||||
// !API_VERSION: 1.3
|
||||
// FILE: 1.kt
|
||||
|
||||
interface Test {
|
||||
val test: String
|
||||
get() = "OK"
|
||||
}
|
||||
|
||||
// FILE: 2.kt
|
||||
// JVM_TARGET: 1.8
|
||||
// WITH_RUNTIME
|
||||
interface Test2 : Test {
|
||||
@kotlin.annotations.JvmDefault
|
||||
override val test: String
|
||||
get() = super.test
|
||||
}
|
||||
|
||||
|
||||
class TestClass : Test2 {
|
||||
|
||||
}
|
||||
|
||||
|
||||
fun box(): String {
|
||||
return TestClass().test
|
||||
}
|
||||
@@ -1,12 +1,18 @@
|
||||
// !API_VERSION: 1.3
|
||||
// JVM_TARGET: 1.8
|
||||
// KOTLIN_CONFIGURATION_FLAGS: +JVM.JVM8_TARGET_WITH_DEFAULTS
|
||||
// WITH_RUNTIME
|
||||
|
||||
interface Test {
|
||||
@kotlin.annotations.JvmDefault
|
||||
fun test(): String {
|
||||
return "OK"
|
||||
}
|
||||
|
||||
fun testAbstract(): String
|
||||
|
||||
fun testDefaultImpl() {
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
// TESTED_OBJECT_KIND: function
|
||||
@@ -16,3 +22,19 @@ interface Test {
|
||||
// TESTED_OBJECT_KIND: function
|
||||
// TESTED_OBJECTS: Test, testAbstract
|
||||
// FLAGS: ACC_PUBLIC, ACC_ABSTRACT
|
||||
|
||||
// TESTED_OBJECT_KIND: function
|
||||
// TESTED_OBJECTS: Test, testDefaultImpl
|
||||
// FLAGS: ACC_PUBLIC, ACC_ABSTRACT
|
||||
|
||||
// TESTED_OBJECT_KIND: function
|
||||
// TESTED_OBJECTS: Test$DefaultImpls, test
|
||||
// ABSENT: TRUE
|
||||
|
||||
// TESTED_OBJECT_KIND: function
|
||||
// TESTED_OBJECTS: Test$DefaultImpls, testAbstract
|
||||
// ABSENT: TRUE
|
||||
|
||||
// TESTED_OBJECT_KIND: function
|
||||
// TESTED_OBJECTS: Test$DefaultImpls, testDefaultImpl
|
||||
// FLAGS: ACC_PUBLIC, ACC_STATIC
|
||||
|
||||
@@ -1,24 +0,0 @@
|
||||
// JVM_TARGET: 1.8
|
||||
// KOTLIN_CONFIGURATION_FLAGS: +JVM.JVM8_TARGET_WITH_DEFAULTS, +JVM.INTERFACE_COMPATIBILITY
|
||||
|
||||
interface Test {
|
||||
fun test(): String {
|
||||
return "OK"
|
||||
}
|
||||
}
|
||||
|
||||
// TESTED_OBJECT_KIND: function
|
||||
// TESTED_OBJECTS: Test, test
|
||||
// FLAGS: ACC_PUBLIC
|
||||
|
||||
// TESTED_OBJECT_KIND: function
|
||||
// TESTED_OBJECTS: Test, test$defaultImpl
|
||||
// FLAGS: ACC_PUBLIC, ACC_STATIC, ACC_SYNTHETIC
|
||||
|
||||
// TESTED_OBJECT_KIND: class
|
||||
// TESTED_OBJECTS: Test$DefaultImpls
|
||||
// FLAGS: ACC_PUBLIC, ACC_FINAL, ACC_SUPER
|
||||
|
||||
// TESTED_OBJECT_KIND: function
|
||||
// TESTED_OBJECTS: Test$DefaultImpls, test
|
||||
// FLAGS: ACC_PUBLIC, ACC_STATIC
|
||||
@@ -1,7 +1,9 @@
|
||||
// !API_VERSION: 1.3
|
||||
// JVM_TARGET: 1.8
|
||||
// KOTLIN_CONFIGURATION_FLAGS: +JVM.JVM8_TARGET_WITH_DEFAULTS
|
||||
// WITH_RUNTIME
|
||||
|
||||
interface Test {
|
||||
@kotlin.annotations.JvmDefault
|
||||
var z: String
|
||||
get() = "OK"
|
||||
set(value) {}
|
||||
|
||||
@@ -1,37 +0,0 @@
|
||||
// JVM_TARGET: 1.8
|
||||
// KOTLIN_CONFIGURATION_FLAGS: +JVM.JVM8_TARGET_WITH_DEFAULTS, +JVM.INTERFACE_COMPATIBILITY
|
||||
|
||||
interface Test {
|
||||
var z: String
|
||||
get() = "OK"
|
||||
set(value) {}
|
||||
}
|
||||
|
||||
// TESTED_OBJECT_KIND: function
|
||||
// TESTED_OBJECTS: Test, getZ
|
||||
// FLAGS: ACC_PUBLIC
|
||||
|
||||
// TESTED_OBJECT_KIND: function
|
||||
// TESTED_OBJECTS: Test, setZ
|
||||
// FLAGS: ACC_PUBLIC
|
||||
|
||||
|
||||
// TESTED_OBJECT_KIND: function
|
||||
// TESTED_OBJECTS: Test, getZ$defaultImpl
|
||||
// FLAGS: ACC_PUBLIC, ACC_STATIC, ACC_SYNTHETIC
|
||||
|
||||
// TESTED_OBJECT_KIND: function
|
||||
// TESTED_OBJECTS: Test, setZ$defaultImpl
|
||||
// FLAGS: ACC_PUBLIC, ACC_STATIC, ACC_SYNTHETIC
|
||||
|
||||
// TESTED_OBJECT_KIND: class
|
||||
// TESTED_OBJECTS: Test$DefaultImpls
|
||||
// FLAGS: ACC_PUBLIC, ACC_FINAL, ACC_SUPER
|
||||
|
||||
// TESTED_OBJECT_KIND: function
|
||||
// TESTED_OBJECTS: Test$DefaultImpls, getZ
|
||||
// FLAGS: ACC_PUBLIC, ACC_STATIC
|
||||
|
||||
// TESTED_OBJECT_KIND: function
|
||||
// TESTED_OBJECTS: Test$DefaultImpls, setZ
|
||||
// FLAGS: ACC_PUBLIC, ACC_STATIC
|
||||
Reference in New Issue
Block a user