Remove directives that have no effect from bytecode text tests

All bytecode text tests are run with stdlib in the classpath and only
for JVM backend, therefore directives WITH_RUNTIME, TARGET_BACKEND,
IGNORE_BACKEND are not needed
This commit is contained in:
Alexander Udalov
2018-12-18 17:35:14 +01:00
parent 00caa23307
commit f5ff3d2fa9
90 changed files with 86 additions and 227 deletions
@@ -1,9 +1,10 @@
// WITH_RUNTIME
// FILE: list.kt // FILE: list.kt
val intList = listOf(1, 2, 3) val intList = listOf(1, 2, 3)
val longList = listOf(1L, 2L, 3L) val longList = listOf(1L, 2L, 3L)
// FILE: box.kt // FILE: box.kt
fun box(): String { fun box(): String {
val intListMin = intList.minBy { it } ?: -1 val intListMin = intList.minBy { it } ?: -1
if (intListMin != 1) return "Fail intListMin=$intListMin" if (intListMin != 1) return "Fail intListMin=$intListMin"
@@ -1,5 +1,3 @@
// WITH_RUNTIME
fun test() { fun test() {
var x = 0 var x = 0
run { run {
@@ -1,5 +1,3 @@
// WITH_RUNTIME
fun test() { fun test() {
var x = 0 var x = 0
run { ++x } run { ++x }
@@ -1,5 +1,3 @@
// WITH_RUNTIME
fun test() { fun test() {
var x = 0 var x = 0
run { run {
@@ -1,5 +1,3 @@
// WITH_RUNTIME
fun runNoInline(f: () -> Unit) = f() fun runNoInline(f: () -> Unit) = f()
fun test() { fun test() {
@@ -1,5 +1,3 @@
// WITH_RUNTIME
fun runNoInline(f: () -> Unit) = f() fun runNoInline(f: () -> Unit) = f()
fun test() { fun test() {
@@ -1,5 +1,3 @@
// WITH_RUNTIME
fun box(): String { fun box(): String {
var xl = 0L // Long, size 2 var xl = 0L // Long, size 2
var xi = 0 // Int, size 1 var xi = 0 // Int, size 1
@@ -1,5 +1,3 @@
// WITH_RUNTIME
fun box(): String { fun box(): String {
run { run {
run { run {
@@ -1,5 +1,3 @@
// WITH_RUNTIME
fun add(x: Int, y: Int) = x + y fun add(x: Int, y: Int) = x + y
fun test() { fun test() {
@@ -1,5 +1,3 @@
// WITH_RUNTIME
fun testPrimitiveArray(ints: IntArray) = fun testPrimitiveArray(ints: IntArray) =
10 in ints.indices 10 in ints.indices
@@ -1,5 +1,3 @@
// WITH_RUNTIME
fun test(list: List<String>) { fun test(list: List<String>) {
val result = mutableListOf<String>() val result = mutableListOf<String>()
use1 { list.forEach { result.add(it) } } use1 { list.forEach { result.add(it) } }
@@ -1,5 +1,4 @@
// !LANGUAGE: -ReleaseCoroutines // !LANGUAGE: -ReleaseCoroutines
// WITH_RUNTIME
// WITH_COROUTINES // WITH_COROUTINES
// TREAT_AS_ONE_FILE // TREAT_AS_ONE_FILE
@@ -1,8 +1,8 @@
// WITH_RUNTIME
// COMMON_COROUTINES_TEST // COMMON_COROUTINES_TEST
// WITH_COROUTINES // WITH_COROUTINES
import helpers.*
// TREAT_AS_ONE_FILE // TREAT_AS_ONE_FILE
import helpers.*
import COROUTINES_PACKAGE.* import COROUTINES_PACKAGE.*
import COROUTINES_PACKAGE.intrinsics.* import COROUTINES_PACKAGE.intrinsics.*
@@ -1,8 +1,8 @@
// WITH_RUNTIME
// COMMON_COROUTINES_TEST // COMMON_COROUTINES_TEST
// WITH_COROUTINES // WITH_COROUTINES
import helpers.*
// TREAT_AS_ONE_FILE // TREAT_AS_ONE_FILE
import helpers.*
import COROUTINES_PACKAGE.* import COROUTINES_PACKAGE.*
import COROUTINES_PACKAGE.intrinsics.* import COROUTINES_PACKAGE.intrinsics.*
@@ -1,8 +1,8 @@
// WITH_RUNTIME
// COMMON_COROUTINES_TEST // COMMON_COROUTINES_TEST
// WITH_COROUTINES // WITH_COROUTINES
import helpers.*
// TREAT_AS_ONE_FILE // TREAT_AS_ONE_FILE
import helpers.*
import COROUTINES_PACKAGE.* import COROUTINES_PACKAGE.*
import COROUTINES_PACKAGE.intrinsics.* import COROUTINES_PACKAGE.intrinsics.*
@@ -1,8 +1,8 @@
// WITH_RUNTIME
// COMMON_COROUTINES_TEST // COMMON_COROUTINES_TEST
// WITH_COROUTINES // WITH_COROUTINES
import helpers.*
// TREAT_AS_ONE_FILE // TREAT_AS_ONE_FILE
import helpers.*
import COROUTINES_PACKAGE.* import COROUTINES_PACKAGE.*
import COROUTINES_PACKAGE.intrinsics.* import COROUTINES_PACKAGE.intrinsics.*
@@ -1,8 +1,8 @@
// WITH_RUNTIME
// COMMON_COROUTINES_TEST // COMMON_COROUTINES_TEST
// WITH_COROUTINES // WITH_COROUTINES
import helpers.*
// TREAT_AS_ONE_FILE // TREAT_AS_ONE_FILE
import helpers.*
import COROUTINES_PACKAGE.* import COROUTINES_PACKAGE.*
import COROUTINES_PACKAGE.intrinsics.* import COROUTINES_PACKAGE.intrinsics.*
@@ -1,8 +1,8 @@
// WITH_RUNTIME
// COMMON_COROUTINES_TEST // COMMON_COROUTINES_TEST
// WITH_COROUTINES // WITH_COROUTINES
import helpers.*
// TREAT_AS_ONE_FILE // TREAT_AS_ONE_FILE
import helpers.*
import COROUTINES_PACKAGE.* import COROUTINES_PACKAGE.*
import COROUTINES_PACKAGE.intrinsics.* import COROUTINES_PACKAGE.intrinsics.*
@@ -1,9 +1,8 @@
// WITH_RUNTIME
// COMMON_COROUTINES_TEST // COMMON_COROUTINES_TEST
// WITH_COROUTINES // WITH_COROUTINES
import helpers.*
// TREAT_AS_ONE_FILE // TREAT_AS_ONE_FILE
// TARGET_BACKEND: JVM
import helpers.*
import COROUTINES_PACKAGE.* import COROUTINES_PACKAGE.*
import COROUTINES_PACKAGE.intrinsics.* import COROUTINES_PACKAGE.intrinsics.*
@@ -1,8 +1,8 @@
// WITH_RUNTIME
// COMMON_COROUTINES_TEST // COMMON_COROUTINES_TEST
// WITH_COROUTINES // WITH_COROUTINES
import helpers.*
// TREAT_AS_ONE_FILE // TREAT_AS_ONE_FILE
import helpers.*
import COROUTINES_PACKAGE.* import COROUTINES_PACKAGE.*
import COROUTINES_PACKAGE.intrinsics.* import COROUTINES_PACKAGE.intrinsics.*
@@ -1,9 +1,8 @@
// WITH_RUNTIME
// COMMON_COROUTINES_TEST // COMMON_COROUTINES_TEST
// WITH_COROUTINES // WITH_COROUTINES
import helpers.*
// TREAT_AS_ONE_FILE // TREAT_AS_ONE_FILE
// TARGET_BACKEND: JVM
import helpers.*
import COROUTINES_PACKAGE.* import COROUTINES_PACKAGE.*
import COROUTINES_PACKAGE.intrinsics.* import COROUTINES_PACKAGE.intrinsics.*
@@ -1,8 +1,8 @@
// WITH_RUNTIME
// COMMON_COROUTINES_TEST // COMMON_COROUTINES_TEST
// WITH_COROUTINES // WITH_COROUTINES
import helpers.*
// TREAT_AS_ONE_FILE // TREAT_AS_ONE_FILE
import helpers.*
import COROUTINES_PACKAGE.* import COROUTINES_PACKAGE.*
import COROUTINES_PACKAGE.intrinsics.* import COROUTINES_PACKAGE.intrinsics.*
@@ -1,11 +1,10 @@
// WITH_RUNTIME
// COMMON_COROUTINES_TEST // COMMON_COROUTINES_TEST
// WITH_COROUTINES // WITH_COROUTINES
// TREAT_AS_ONE_FILE
import helpers.* import helpers.*
import COROUTINES_PACKAGE.* import COROUTINES_PACKAGE.*
import COROUTINES_PACKAGE.intrinsics.* import COROUTINES_PACKAGE.intrinsics.*
// TREAT_AS_ONE_FILE
var res = "FAIL" var res = "FAIL"
@@ -1,5 +1,3 @@
// WITH_RUNTIME
val arr = arrayOf("a", "b", "c", "d") val arr = arrayOf("a", "b", "c", "d")
fun box(): String { fun box(): String {
@@ -1,5 +1,3 @@
// WITH_RUNTIME
val arr = arrayOf("a", "b", "c", "d") val arr = arrayOf("a", "b", "c", "d")
fun box(): String { fun box(): String {
@@ -1,5 +1,3 @@
// WITH_RUNTIME
val arr = intArrayOf() val arr = intArrayOf()
fun box(): String { fun box(): String {
@@ -1,5 +1,3 @@
// WITH_RUNTIME
val arr = intArrayOf(10, 20, 30, 40) val arr = intArrayOf(10, 20, 30, 40)
fun box(): String { fun box(): String {
@@ -1,5 +1,3 @@
// WITH_RUNTIME
val arr = arrayOf("a", "b", "c", "d") val arr = arrayOf("a", "b", "c", "d")
fun box(): String { fun box(): String {
@@ -1,5 +1,3 @@
// WITH_RUNTIME
fun test() { fun test() {
var s = "" var s = ""
for (c in "testString") { for (c in "testString") {
@@ -1,5 +1,3 @@
// WITH_RUNTIME
val cs: CharSequence = "abcd" val cs: CharSequence = "abcd"
fun box(): String { fun box(): String {
@@ -1,5 +1,3 @@
// WITH_RUNTIME
fun box(): String { fun box(): String {
for ((index, x) in "".withIndex()) { for ((index, x) in "".withIndex()) {
return "Loop over empty String should not be executed" return "Loop over empty String should not be executed"
@@ -1,5 +1,3 @@
// WITH_RUNTIME
fun box(): String { fun box(): String {
val s = StringBuilder() val s = StringBuilder()
@@ -1,5 +1,3 @@
// WITH_RUNTIME
val xs = "abcd" val xs = "abcd"
fun box(): String { fun box(): String {
@@ -1,5 +1,3 @@
// WITH_RUNTIME
val xs = "abcd" val xs = "abcd"
fun box(): String { fun box(): String {
@@ -1,5 +1,3 @@
// WITH_RUNTIME
val xs = "abcd" val xs = "abcd"
fun useAny(x: Any) {} fun useAny(x: Any) {}
@@ -1,5 +1,3 @@
// WITH_RUNTIME
fun test(s: CharSequence): Int { fun test(s: CharSequence): Int {
var result = 0 var result = 0
for (i in s.indices) { for (i in s.indices) {
@@ -1,5 +1,3 @@
// WITH_RUNTIME
fun Collection<Int>.sumIndices(): Int { fun Collection<Int>.sumIndices(): Int {
var sum = 0 var sum = 0
for (i in indices) { for (i in indices) {
@@ -1,5 +1,3 @@
// WITH_RUNTIME
fun test() { fun test() {
var sum = 0 var sum = 0
for (i in listOf(0, 0, 0, 0).indices) { for (i in listOf(0, 0, 0, 0).indices) {
@@ -1,5 +1,3 @@
// WITH_RUNTIME
import kotlin.test.assertEquals import kotlin.test.assertEquals
fun test(coll: Collection<*>?): Int { fun test(coll: Collection<*>?): Int {
@@ -1,5 +1,3 @@
// WITH_RUNTIME
fun test() { fun test() {
var sum = 0 var sum = 0
for (i in arrayOf("", "", "", "").indices) { for (i in arrayOf("", "", "", "").indices) {
@@ -1,5 +1,3 @@
// WITH_RUNTIME
fun test() { fun test() {
var sum = 0 var sum = 0
for (i in intArrayOf(0, 0, 0, 0).indices) { for (i in intArrayOf(0, 0, 0, 0).indices) {
@@ -1,5 +1,3 @@
// WITH_RUNTIME
val xs = listOf<Any>() val xs = listOf<Any>()
fun box(): String { fun box(): String {
@@ -1,5 +1,3 @@
// WITH_RUNTIME
val xs = listOf("a", "b", "c", "d") val xs = listOf("a", "b", "c", "d")
fun box(): String { fun box(): String {
@@ -1,5 +1,3 @@
// WITH_RUNTIME
val xs = listOf("a", "b", "c", "d") val xs = listOf("a", "b", "c", "d")
fun box(): String { fun box(): String {
@@ -1,5 +1,3 @@
// WITH_RUNTIME
val xs = listOf("a", "b", "c", "d") val xs = listOf("a", "b", "c", "d")
fun box(): String { fun box(): String {
@@ -1,5 +1,3 @@
// WITH_RUNTIME
val xs = listOf("a", "b", "c", "d") val xs = listOf("a", "b", "c", "d")
fun useAny(x: Any) {} fun useAny(x: Any) {}
@@ -1,4 +1,3 @@
// WITH_RUNTIME
import kotlin.test.* import kotlin.test.*
fun intRange() = 1 .. 4 fun intRange() = 1 .. 4
@@ -1,4 +1,3 @@
// WITH_RUNTIME
import kotlin.test.* import kotlin.test.*
fun box(): String { fun box(): String {
@@ -1,4 +1,3 @@
// WITH_RUNTIME
import kotlin.test.* import kotlin.test.*
fun box(): String { fun box(): String {
@@ -1,4 +1,3 @@
// WITH_RUNTIME
import kotlin.test.* import kotlin.test.*
fun box(): String { fun box(): String {
@@ -1,4 +1,3 @@
// WITH_RUNTIME
import kotlin.test.* import kotlin.test.*
fun box(): String { fun box(): String {
@@ -1,5 +1,3 @@
// WITH_RUNTIME
fun box(): String { fun box(): String {
for (i in (4 .. 1).reversed()) { for (i in (4 .. 1).reversed()) {
throw AssertionError("Loop should not be executed") throw AssertionError("Loop should not be executed")
@@ -1,4 +1,3 @@
// WITH_RUNTIME
import kotlin.test.* import kotlin.test.*
fun intRange() = 1 .. 4 fun intRange() = 1 .. 4
@@ -1,4 +1,3 @@
// WITH_RUNTIME
import kotlin.test.* import kotlin.test.*
fun box(): String { fun box(): String {
@@ -1,4 +1,3 @@
// WITH_RUNTIME
import kotlin.test.* import kotlin.test.*
fun intRange() = 1 .. 4 fun intRange() = 1 .. 4
@@ -1,4 +1,3 @@
// WITH_RUNTIME
import kotlin.test.* import kotlin.test.*
fun box(): String { fun box(): String {
@@ -1,5 +1,3 @@
// WITH_RUNTIME
val xs = listOf<Any>().asSequence() val xs = listOf<Any>().asSequence()
fun box(): String { fun box(): String {
@@ -1,5 +1,3 @@
// WITH_RUNTIME
val xs = listOf("a", "b", "c", "d").asSequence() val xs = listOf("a", "b", "c", "d").asSequence()
fun box(): String { fun box(): String {
@@ -1,5 +1,3 @@
// WITH_RUNTIME
val xs = listOf("a", "b", "c", "d").asSequence() val xs = listOf("a", "b", "c", "d").asSequence()
fun box(): String { fun box(): String {
@@ -1,5 +1,3 @@
// WITH_RUNTIME
val xs = listOf("a", "b", "c", "d").asSequence() val xs = listOf("a", "b", "c", "d").asSequence()
fun box(): String { fun box(): String {
@@ -1,6 +1,4 @@
// IGNORE_BACKEND: JS, NATIVE
// FULL_JDK // FULL_JDK
// WITH_RUNTIME
val xsl = arrayListOf("a", "b", "c", "d") val xsl = arrayListOf("a", "b", "c", "d")
val xs = xsl.asSequence() val xs = xsl.asSequence()
@@ -1,5 +1,3 @@
// WITH_RUNTIME
val xs = listOf("a", "b", "c", "d").asSequence() val xs = listOf("a", "b", "c", "d").asSequence()
fun useAny(x: Any) {} fun useAny(x: Any) {}
@@ -1,5 +1,3 @@
// WITH_RUNTIME
fun test() { fun test() {
var s = "" var s = ""
for (c in "testString") { for (c in "testString") {
@@ -1,5 +1,3 @@
// WITH_RUNTIME
fun test(): Int { fun test(): Int {
var sum = 0 var sum = 0
for (i in 1 until 6) { for (i in 1 until 6) {
@@ -1,5 +1,3 @@
// WITH_RUNTIME
fun test(): Int { fun test(): Int {
var sum = 0 var sum = 0
for (i in 4 downTo 1) { for (i in 4 downTo 1) {
@@ -1,5 +1,4 @@
// !LANGUAGE: +InlineClasses // !LANGUAGE: +InlineClasses
// IGNORE_BACKEND: JVM_IR
inline class Id(val id: String) inline class Id(val id: String)
@@ -1,5 +1,3 @@
// WITH_RUNTIME
fun uint(vararg us: UInt): UIntArray = us fun uint(vararg us: UInt): UIntArray = us
// FILE: NoBoxing.kt // FILE: NoBoxing.kt
@@ -1,5 +1,3 @@
// WITH_RUNTIME
class A { class A {
} }
@@ -1,5 +1,3 @@
// WITH_RUNTIME
class A { class A {
} }
@@ -1,6 +1,5 @@
// !JVM_DEFAULT_MODE: compatibility // !JVM_DEFAULT_MODE: compatibility
// JVM_TARGET: 1.8 // JVM_TARGET: 1.8
// WITH_RUNTIME
// FULL_JDK // FULL_JDK
interface KInterface { interface KInterface {
@@ -1,6 +1,5 @@
// !JVM_DEFAULT_MODE: compatibility // !JVM_DEFAULT_MODE: compatibility
// JVM_TARGET: 1.8 // JVM_TARGET: 1.8
// WITH_RUNTIME
interface KInterface { interface KInterface {
-3
View File
@@ -1,6 +1,3 @@
// WITH_RUNTIME
// TARGET_BACKEND: JVM
// FILE: Dummy.kt // FILE: Dummy.kt
// Empty body to trigger multifile test mode // Empty body to trigger multifile test mode
@@ -1,4 +1,3 @@
// WITH_RUNTIME
// KOTLIN_CONFIGURATION_FLAGS: +JVM.INHERIT_MULTIFILE_PARTS // KOTLIN_CONFIGURATION_FLAGS: +JVM.INHERIT_MULTIFILE_PARTS
// FILE: bar.kt // FILE: bar.kt
@@ -1,5 +1,3 @@
// WITH_RUNTIME
fun test1() { fun test1() {
val a = null val a = null
@@ -1,5 +1,3 @@
// WITH_RUNTIME
// FILE: test.kt // FILE: test.kt
fun test1() { fun test1() {
@@ -1,5 +1,3 @@
// WITH_RUNTIME
fun test1() { fun test1() {
val a = Unit val a = Unit
@@ -1,5 +1,3 @@
// WITH_RUNTIME
// FILE: test.kt // FILE: test.kt
fun test1(): String { fun test1(): String {
@@ -1,5 +1,3 @@
// WITH_RUNTIME
fun test() { fun test() {
val value = System.getProperty("key") val value = System.getProperty("key")
if (value != null) { if (value != null) {
@@ -1,5 +1,3 @@
// WITH_RUNTIME
fun testPrimitiveArray(i: Int, ints: IntArray) = i in ints.indices fun testPrimitiveArray(i: Int, ints: IntArray) = i in ints.indices
fun testObjectArray(i: Int, xs: Array<Any>) = i in xs.indices fun testObjectArray(i: Int, xs: Array<Any>) = i in xs.indices
@@ -1,5 +1,3 @@
// WITH_RUNTIME
fun testCharSequence(i: Int, cs: CharSequence) = i in cs.indices fun testCharSequence(i: Int, cs: CharSequence) = i in cs.indices
fun testLongWithCharSequence(i: Long, cs: CharSequence) = i in cs.indices fun testLongWithCharSequence(i: Long, cs: CharSequence) = i in cs.indices
@@ -1,5 +1,3 @@
// WITH_RUNTIME
fun testCollection(i: Int, xs: List<Any>) = i in xs.indices fun testCollection(i: Int, xs: List<Any>) = i in xs.indices
fun testLongWithCollection(i: Long, xs: List<Any>) = i in xs.indices fun testLongWithCollection(i: Long, xs: List<Any>) = i in xs.indices
@@ -1,5 +1,3 @@
// WITH_RUNTIME
fun inInt(x: Long): Boolean { fun inInt(x: Long): Boolean {
return x in 1..2 return x in 1..2
} }
@@ -1,5 +1,3 @@
// WITH_RUNTIME
fun byteInFloat(x: Byte, a: Float, b: Float) = x in a .. b fun byteInFloat(x: Byte, a: Float, b: Float) = x in a .. b
fun byteInDouble(x: Byte, a: Double, b: Double) = x in a .. b fun byteInDouble(x: Byte, a: Double, b: Double) = x in a .. b
fun shortInFloat(x: Short, a: Float, b: Float) = x in a .. b fun shortInFloat(x: Short, a: Float, b: Float) = x in a .. b
@@ -1,5 +1,3 @@
// WITH_RUNTIME
fun Byte.inByte(left: Byte, right: Byte) = this in left..right fun Byte.inByte(left: Byte, right: Byte) = this in left..right
fun Short.inInt(left: Int, right: Int) = this in left .. right fun Short.inInt(left: Int, right: Int) = this in left .. right
@@ -1,5 +1,3 @@
// WITH_RUNTIME
fun testByte(a: Byte, x: Byte, y: Byte) = a in x until y fun testByte(a: Byte, x: Byte, y: Byte) = a in x until y
fun testShort(a: Short, x: Short, y: Short) = a in x until y fun testShort(a: Short, x: Short, y: Short) = a in x until y
@@ -1,5 +1,3 @@
// WITH_RUNTIME
fun test(a: Int) = a in 1 .. 10 fun test(a: Int) = a in 1 .. 10
fun test(a: Long) = a in 1L .. 10L fun test(a: Long) = a in 1L .. 10L
fun test(a: Float) = a in 1.0f .. 10.0f fun test(a: Float) = a in 1.0f .. 10.0f
@@ -1,4 +1,3 @@
// WITH_RUNTIME
// FILE: JFoo.java // FILE: JFoo.java
import org.jetbrains.annotations.Nullable; import org.jetbrains.annotations.Nullable;
@@ -1,4 +1,3 @@
// WITH_RUNTIME
// FILE: JFoo.java // FILE: JFoo.java
import org.jetbrains.annotations.Nullable; import org.jetbrains.annotations.Nullable;
@@ -1,5 +1,3 @@
// WITH_RUNTIME
fun findUserId(username: String): Long? = null fun findUserId(username: String): Long? = null
fun main(args: Array<String>) { fun main(args: Array<String>) {
@@ -60,8 +60,8 @@ fun parseLanguageVersionSettings(directiveMap: Map<String, String>): CompilerTes
val skipMetadataVersionCheck = AnalysisFlags.skipMetadataVersionCheck to directiveMap.containsKey(SKIP_METADATA_VERSION_CHECK) val skipMetadataVersionCheck = AnalysisFlags.skipMetadataVersionCheck to directiveMap.containsKey(SKIP_METADATA_VERSION_CHECK)
val allowResultReturnType = AnalysisFlags.allowResultReturnType to directiveMap.containsKey(ALLOW_RESULT_RETURN_TYPE) val allowResultReturnType = AnalysisFlags.allowResultReturnType to directiveMap.containsKey(ALLOW_RESULT_RETURN_TYPE)
if (apiVersionString == null && languageFeaturesString == null && experimental == null && if (apiVersionString == null && languageFeaturesString == null && experimental == null && useExperimental == null &&
useExperimental == null && !ignoreDataFlowInAssert.second && !allowResultReturnType.second !ignoreDataFlowInAssert.second && enableJvmDefault == null && !skipMetadataVersionCheck.second && !allowResultReturnType.second
) { ) {
return null return null
} }