[Test] Support some jvm codegen specific configuration directives

This commit is contained in:
Dmitriy Novozhilov
2021-01-22 14:34:24 +03:00
parent 7d4adaba21
commit 5c0cfa87ba
31 changed files with 73 additions and 41 deletions
+2 -2
View File
@@ -4,7 +4,7 @@
// IGNORE_BACKEND: JS_IR
// IGNORE_BACKEND: JS_IR_ES6
// IGNORE_BACKEND: JS
// KOTLIN_CONFIGURATION_FLAGS: ASSERTIONS_MODE=always-disable
// ASSERTIONS_MODE: always-disable
// WITH_RUNTIME
fun checkTrue(): Boolean {
@@ -42,4 +42,4 @@ fun box(): String {
if (checkFalseWithMessage()) return "FAIL 3"
return "OK"
}
}
+2 -2
View File
@@ -3,7 +3,7 @@
// IGNORE_BACKEND: JS_IR
// IGNORE_BACKEND: JS_IR_ES6
// IGNORE_BACKEND: JS
// KOTLIN_CONFIGURATION_FLAGS: ASSERTIONS_MODE=always-enable
// ASSERTIONS_MODE: always-enable
// WITH_RUNTIME
fun checkTrue(): Boolean {
@@ -49,4 +49,4 @@ fun box(): String {
}
return "OK"
}
}
@@ -1,5 +1,5 @@
// TARGET_BACKEND: JVM
// KOTLIN_CONFIGURATION_FLAGS: ASSERTIONS_MODE=jvm
// ASSERTIONS_MODE: jvm
// WITH_RUNTIME
// Assertions which run before the class initializer are always checked
@@ -1,5 +1,5 @@
// TARGET_BACKEND: JVM
// KOTLIN_CONFIGURATION_FLAGS: ASSERTIONS_MODE=jvm
// ASSERTIONS_MODE: jvm
// WITH_RUNTIME
package classAssertions
@@ -1,5 +1,5 @@
// TARGET_BACKEND: JVM
// KOTLIN_CONFIGURATION_FLAGS: ASSERTIONS_MODE=jvm
// ASSERTIONS_MODE: jvm
// WITH_RUNTIME
package classAssertions
@@ -1,6 +1,6 @@
// TARGET_BACKEND: JVM
// IGNORE_BACKEND: JVM
// KOTLIN_CONFIGURATION_FLAGS: ASSERTIONS_MODE=jvm
// ASSERTIONS_MODE: jvm
// WITH_RUNTIME
package classAssertions
@@ -1,6 +1,6 @@
// TARGET_BACKEND: JVM
// IGNORE_BACKEND: JVM
// KOTLIN_CONFIGURATION_FLAGS: ASSERTIONS_MODE=jvm
// ASSERTIONS_MODE: jvm
// WITH_RUNTIME
package classAssertions
@@ -1,6 +1,6 @@
// TARGET_BACKEND: JVM
// IGNORE_BACKEND: JVM
// KOTLIN_CONFIGURATION_FLAGS: ASSERTIONS_MODE=jvm
// ASSERTIONS_MODE: jvm
// WITH_RUNTIME
package classAssertions
@@ -1,5 +1,5 @@
// TARGET_BACKEND: JVM
// KOTLIN_CONFIGURATION_FLAGS: ASSERTIONS_MODE=jvm
// ASSERTIONS_MODE: jvm
// WITH_RUNTIME
package interfaceAssertionsDisabled
@@ -1,5 +1,5 @@
// TARGET_BACKEND: JVM
// KOTLIN_CONFIGURATION_FLAGS: ASSERTIONS_MODE=jvm
// ASSERTIONS_MODE: jvm
// WITH_RUNTIME
package interfaceAssertionsEnabled
@@ -61,4 +61,4 @@ fun box(): String {
}
return "OK"
}
}
@@ -1,5 +1,5 @@
// TARGET_BACKEND: JVM
// KOTLIN_CONFIGURATION_FLAGS: ASSERTIONS_MODE=jvm
// ASSERTIONS_MODE: jvm
// WITH_RUNTIME
// If assertions are disabled, neither argument to assert should be evaluated.
@@ -1,5 +1,5 @@
// TARGET_BACKEND: JVM
// KOTLIN_CONFIGURATION_FLAGS: ASSERTIONS_MODE=jvm
// ASSERTIONS_MODE: jvm
// WITH_RUNTIME
package localAnonymousFunction
@@ -123,4 +123,4 @@ fun box(): String {
}
return "OK"
}
}
+2 -2
View File
@@ -1,5 +1,5 @@
// TARGET_BACKEND: JVM
// KOTLIN_CONFIGURATION_FLAGS: ASSERTIONS_MODE=jvm
// ASSERTIONS_MODE: jvm
// WITH_RUNTIME
package localClass
@@ -163,4 +163,4 @@ fun box(): String {
}
return "OK"
}
}
+2 -2
View File
@@ -1,5 +1,5 @@
// TARGET_BACKEND: JVM
// KOTLIN_CONFIGURATION_FLAGS: ASSERTIONS_MODE=jvm
// ASSERTIONS_MODE: jvm
// WITH_RUNTIME
package localFunction
@@ -123,4 +123,4 @@ fun box(): String {
}
return "OK"
}
}
+2 -2
View File
@@ -1,5 +1,5 @@
// TARGET_BACKEND: JVM
// KOTLIN_CONFIGURATION_FLAGS: ASSERTIONS_MODE=jvm
// ASSERTIONS_MODE: jvm
// WITH_RUNTIME
package localLambda
@@ -123,4 +123,4 @@ fun box(): String {
}
return "OK"
}
}
+2 -2
View File
@@ -1,5 +1,5 @@
// TARGET_BACKEND: JVM
// KOTLIN_CONFIGURATION_FLAGS: ASSERTIONS_MODE=jvm
// ASSERTIONS_MODE: jvm
// WITH_RUNTIME
package localObject
@@ -155,4 +155,4 @@ fun box(): String {
}
return "OK"
}
}
@@ -1,5 +1,5 @@
// TARGET_BACKEND: JVM
// KOTLIN_CONFIGURATION_FLAGS: ASSERTIONS_MODE=jvm
// ASSERTIONS_MODE: jvm
// WITH_RUNTIME
// Reusing the $assertionsDisabled field in the Outer class might seem like a good idea,
+2 -2
View File
@@ -1,5 +1,5 @@
// TARGET_BACKEND: JVM
// KOTLIN_CONFIGURATION_FLAGS: ASSERTIONS_MODE=jvm
// ASSERTIONS_MODE: jvm
// WITH_RUNTIME
package nonLocalReturn
@@ -74,4 +74,4 @@ fun box(): String {
if (!c.checkFalseWithMessage()) return "FAIL 8"
return "OK"
}
}
+2 -2
View File
@@ -1,5 +1,5 @@
// TARGET_BACKEND: JVM
// KOTLIN_CONFIGURATION_FLAGS: ASSERTIONS_MODE=jvm
// ASSERTIONS_MODE: jvm
// WITH_RUNTIME
package ordinary
@@ -99,4 +99,4 @@ fun box(): String {
}
return "OK"
}
}
@@ -1,5 +1,5 @@
// TARGET_BACKEND: JVM
// KOTLIN_CONFIGURATION_FLAGS: ASSERTIONS_MODE=jvm
// ASSERTIONS_MODE: jvm
// WITH_RUNTIME
package superClassInitializer
@@ -117,4 +117,4 @@ fun box(): String {
}
return "OK"
}
}
@@ -1,5 +1,5 @@
// TARGET_BACKEND: JVM
// KOTLIN_CONFIGURATION_FLAGS: ASSERTIONS_MODE=jvm
// ASSERTIONS_MODE: jvm
// WITH_RUNTIME
// WITH_COROUTINES
package suspendFunctionAssertionDisabled
@@ -1,5 +1,5 @@
// TARGET_BACKEND: JVM
// KOTLIN_CONFIGURATION_FLAGS: ASSERTIONS_MODE=jvm
// ASSERTIONS_MODE: jvm
// WITH_RUNTIME
// WITH_COROUTINES
package suspendFunctionAssertionsEnabled
@@ -1,5 +1,5 @@
// TARGET_BACKEND: JVM
// KOTLIN_CONFIGURATION_FLAGS: ASSERTIONS_MODE=jvm
// ASSERTIONS_MODE: jvm
// WITH_RUNTIME
// WITH_COROUTINES
package suspendLambdaAssertionsDisabled
@@ -1,5 +1,5 @@
// TARGET_BACKEND: JVM
// KOTLIN_CONFIGURATION_FLAGS: ASSERTIONS_MODE=jvm
// ASSERTIONS_MODE: jvm
// WITH_RUNTIME
// WITH_COROUTINES
package suspendLambdaAssertionsEnabled
@@ -1,6 +1,6 @@
// TARGET_BACKEND: JVM
// WITH_RUNTIME
// KOTLIN_CONFIGURATION_FLAGS: CONSTRUCTOR_CALL_NORMALIZATION_MODE=disable
// CONSTRUCTOR_CALL_NORMALIZATION_MODE: disable
// FILE: test.kt
fun box(): String {
Foo(
@@ -1,6 +1,6 @@
// TARGET_BACKEND: JVM
// WITH_RUNTIME
// KOTLIN_CONFIGURATION_FLAGS: CONSTRUCTOR_CALL_NORMALIZATION_MODE=enable
// CONSTRUCTOR_CALL_NORMALIZATION_MODE: enable
// FILE: test.kt
fun box(): String {
Foo(
@@ -1,6 +1,6 @@
// TARGET_BACKEND: JVM
// WITH_RUNTIME
// KOTLIN_CONFIGURATION_FLAGS: CONSTRUCTOR_CALL_NORMALIZATION_MODE=preserve-class-initialization
// CONSTRUCTOR_CALL_NORMALIZATION_MODE: preserve-class-initialization
// FILE: test.kt
fun box(): String {
Foo(
@@ -1,6 +1,6 @@
// TARGET_BACKEND: JVM
// WITH_RUNTIME
// KOTLIN_CONFIGURATION_FLAGS: CONSTRUCTOR_CALL_NORMALIZATION_MODE=enable
// CONSTRUCTOR_CALL_NORMALIZATION_MODE: enable
open class A(val s: String)
inline fun test(crossinline z: () -> String): String {
@@ -11,4 +11,4 @@ inline fun test(crossinline z: () -> String): String {
fun box(): String {
return test { "OK" }
}
}
@@ -1,6 +1,6 @@
// TARGET_BACKEND: JVM
// WITH_RUNTIME
// KOTLIN_CONFIGURATION_FLAGS: CONSTRUCTOR_CALL_NORMALIZATION_MODE=enable
// CONSTRUCTOR_CALL_NORMALIZATION_MODE: enable
// FILE: test.kt
fun box(): String {
Foo(