[FIR-TEST] Add new testdata generated after changes in previous commit
This commit is contained in:
+9
@@ -0,0 +1,9 @@
|
||||
// !WITH_NEW_INFERENCE
|
||||
// !DIAGNOSTICS: -UNUSED_PARAMETER
|
||||
class A<F>
|
||||
|
||||
inline fun <reified T> foo(x: A<T>) {}
|
||||
|
||||
fun test(x: A<out CharSequence>) {
|
||||
foo(x)
|
||||
}
|
||||
+3
@@ -0,0 +1,3 @@
|
||||
|
||||
fun <T: Any> dereferenceClass(): Any =
|
||||
<!OTHER_ERROR!>T<!>::class
|
||||
@@ -0,0 +1,13 @@
|
||||
// !DIAGNOSTICS: -UNUSED_PARAMETER
|
||||
|
||||
inline operator fun <reified T> T.plus(p: T): T = this
|
||||
|
||||
inline operator fun <reified T> T.invoke(): T = this
|
||||
|
||||
fun <A> main(tp: A, any: Any) {
|
||||
tp + tp
|
||||
any + any
|
||||
|
||||
tp()
|
||||
any()
|
||||
}
|
||||
Vendored
+19
@@ -0,0 +1,19 @@
|
||||
// !LANGUAGE: +ProhibitNonReifiedArraysAsReifiedTypeArguments
|
||||
// !DIAGNOSTICS: -UNUSED_PARAMETER
|
||||
|
||||
inline fun <reified T> foo() {}
|
||||
|
||||
fun <T> bar() {
|
||||
foo<T>()
|
||||
foo<Array<T>>()
|
||||
foo<Array<Array<T>>>()
|
||||
foo<Array<Int>>()
|
||||
foo<Array<Array<Int>>>()
|
||||
foo<IntArray>()
|
||||
foo<List<T>>()
|
||||
foo<List<Array<T>>>()
|
||||
}
|
||||
|
||||
fun test(x: Array<String>, y: Array<*>) {
|
||||
bar<Int>()
|
||||
}
|
||||
compiler/testData/diagnostics/tests/generics/tpAsReified/GenericArrayAsReifiedArgumentWarning.fir.kt
Vendored
+19
@@ -0,0 +1,19 @@
|
||||
// !LANGUAGE: -ProhibitNonReifiedArraysAsReifiedTypeArguments
|
||||
// !DIAGNOSTICS: -UNUSED_PARAMETER
|
||||
|
||||
inline fun <reified T> foo() {}
|
||||
|
||||
fun <T> bar() {
|
||||
foo<T>()
|
||||
foo<Array<T>>()
|
||||
foo<Array<Array<T>>>()
|
||||
foo<Array<Int>>()
|
||||
foo<Array<Array<Int>>>()
|
||||
foo<IntArray>()
|
||||
foo<List<T>>()
|
||||
foo<List<Array<T>>>()
|
||||
}
|
||||
|
||||
fun test(x: Array<String>, y: Array<*>) {
|
||||
bar<Int>()
|
||||
}
|
||||
+24
@@ -0,0 +1,24 @@
|
||||
// !DIAGNOSTICS: -UNUSED_PARAMETER
|
||||
|
||||
inline fun <reified T> foo() {}
|
||||
|
||||
inline fun <reified F> bar() {
|
||||
foo<Array<F>>()
|
||||
foo<List<F>>()
|
||||
}
|
||||
|
||||
inline fun <reified E> baz(x: E) {}
|
||||
|
||||
fun test(x: Array<String>, y: Array<*>) {
|
||||
foo<List<String>>()
|
||||
foo<List<*>>()
|
||||
foo<Map<*, String>>()
|
||||
foo<Map<*, *>>()
|
||||
|
||||
foo<Array<String>>()
|
||||
foo<Array<*>>()
|
||||
|
||||
baz(x)
|
||||
baz(y)
|
||||
}
|
||||
|
||||
+17
@@ -0,0 +1,17 @@
|
||||
// !WITH_NEW_INFERENCE
|
||||
class C<reified T>
|
||||
|
||||
fun <T> id(p: T): T = p
|
||||
|
||||
fun <A> main() {
|
||||
C()
|
||||
|
||||
val a: C<A> = C()
|
||||
C<A>()
|
||||
|
||||
val b: C<Int> = C()
|
||||
C<Int>()
|
||||
|
||||
// TODO svtk, uncomment when extensions are called for nested calls!
|
||||
//val < !UNUSED_VARIABLE!>с< !>: C<A> = id(< !TYPE_PARAMETER_AS_REIFIED!>C< !>())
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
// !WITH_NEW_INFERENCE
|
||||
// !DIAGNOSTICS: -UNUSED_PARAMETER
|
||||
|
||||
inline fun <reified T> f(): T = throw UnsupportedOperationException()
|
||||
|
||||
fun <T> id(p: T): T = p
|
||||
|
||||
fun <A> main() {
|
||||
f()
|
||||
|
||||
val a: A = f()
|
||||
f<A>()
|
||||
|
||||
val b: Int = f()
|
||||
f<Int>()
|
||||
|
||||
val с: A = id(f())
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
val <reified T> T.v: T
|
||||
get() = throw UnsupportedOperationException()
|
||||
@@ -0,0 +1,4 @@
|
||||
class C<reified T>
|
||||
|
||||
fun <A> main(p1: C<A>, p2: C<Int>) {
|
||||
}
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
// !DIAGNOSTICS: -UNUSED_PARAMETER
|
||||
|
||||
inline fun<T1, reified T2> bar(x: T1, y: T2): T2 = y
|
||||
inline fun<reified R> foo(z: R): R = bar(1, z)
|
||||
|
||||
fun box() {
|
||||
foo("abc")
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
// !DIAGNOSTICS: -UNUSED_PARAMETER -NOT_YET_SUPPORTED_IN_INLINE
|
||||
|
||||
inline fun<reified T> foo(x: T) {
|
||||
fun<reified R> bar() {
|
||||
|
||||
}
|
||||
|
||||
bar<T>()
|
||||
}
|
||||
+4
@@ -0,0 +1,4 @@
|
||||
|
||||
fun<T1, reified T2, T3, reified T4> foo() {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
class A<T1, reified T2, T3, reified T4> {
|
||||
fun<reified R> foo(): T2 = throw UnsupportedOperationException()
|
||||
}
|
||||
Reference in New Issue
Block a user