Check constness of 'apiVersionIsAtLeast' arguments

This commit is contained in:
Dmitry Petrov
2017-09-25 14:00:26 +03:00
parent 23d8b4cefe
commit 26136cd0fe
10 changed files with 203 additions and 46 deletions
@@ -0,0 +1,23 @@
// !DIAGNOSTICS: -UNUSED_PARAMETER
// SKIP_TXT
// FILE: test.kt
package test
import kotlin.internal.*
const val ZERO = 0
const val ONE = 1
fun zero() = 0
val one = 1
val test0 = apiVersionIsAtLeast(0, 0, 0)
val testConstVals = apiVersionIsAtLeast(ONE, ONE, ZERO)
val testConstExprs = apiVersionIsAtLeast(ONE + 0, 1 + 0, ((0 + 1 + 0)))
val testNonConstExprs = apiVersionIsAtLeast(<!API_VERSION_IS_AT_LEAST_ARGUMENT_SHOULD_BE_CONSTANT!>one<!>, <!API_VERSION_IS_AT_LEAST_ARGUMENT_SHOULD_BE_CONSTANT!>zero()<!>, <!API_VERSION_IS_AT_LEAST_ARGUMENT_SHOULD_BE_CONSTANT!>one + 1<!>)
// FILE: apiVersionIsAtLeast.kt
package kotlin.internal
fun apiVersionIsAtLeast(epic: Int, major: Int, minor: Int): Boolean =
false