Tests, messages and infra for deprecated symbol reporting

This commit is contained in:
Ilya Ryzhenkov
2015-03-16 23:04:37 +03:00
parent c8920b8158
commit 288e1baa87
55 changed files with 773 additions and 83 deletions
@@ -8,10 +8,10 @@ fun <T> fail2(): Array<T> = ok1 { <!TYPE_PARAMETER_AS_REIFIED!>Array<!><T>(1) {
fun <T> ok3(block: () -> Array<T>): Array<T> = ok1 { block() }
inline fun <reified T> ok4(): Array<T> = ok1 { Array<T>(1) { null!! } }
fun <T> fail3(block: () -> T): Pair<Array<T>, Array<T>> = Pair(<!TYPE_PARAMETER_AS_REIFIED!>array<!>(
block()), <!TYPE_PARAMETER_AS_REIFIED!>array<!>()
fun <T> fail3(block: () -> T): Pair<Array<T>, Array<T>> = Pair(<!TYPE_PARAMETER_AS_REIFIED!>arrayOf<!>(
block()), <!TYPE_PARAMETER_AS_REIFIED!>arrayOf<!>()
)
inline fun <reified T> ok5(block: () -> T): Pair<Array<T>, Array<T>> = Pair(
array(block()), array()
arrayOf(block()), arrayOf()
)
@@ -1,11 +1,11 @@
class A<T>(val x: Array<T>) {
val y: Int = x[0].toString().length
val y: Int = x[0].toString().length()
fun foo(a: T) {
x[0] = a
}
fun <R> bar(a: Array<R>): Int = a[0].toString().length
fun <R> bar(a: Array<R>): Int = a[0].toString().length()
}
fun <T> baz(a: Array<T>): String = a[0].toString()
@@ -3,7 +3,7 @@
inline fun<reified T> foo(block: () -> T): String = block().toString()
fun box() {
val a = <!REIFIED_TYPE_FORBIDDEN_SUBSTITUTION!>array<!>(null!!)
val a = <!REIFIED_TYPE_FORBIDDEN_SUBSTITUTION!>arrayOf<!>(null!!)
val b = <!REIFIED_TYPE_FORBIDDEN_SUBSTITUTION!>Array<!><Nothing?>(5) { null!! }
val c = <!REIFIED_TYPE_FORBIDDEN_SUBSTITUTION!>foo<!>() { null!! }
val d = foo<Any> { null!! }