[FIR-TEST] Add new testdata generated after changes in previous commit
This commit is contained in:
+77
@@ -0,0 +1,77 @@
|
||||
// !LANGUAGE: +NestedClassesInAnnotations
|
||||
// !USE_EXPERIMENTAL: kotlin.Experimental
|
||||
// !DIAGNOSTICS: -UNUSED_PARAMETER
|
||||
// FILE: api.kt
|
||||
|
||||
package test
|
||||
|
||||
import kotlin.reflect.KClass
|
||||
|
||||
// Usages in import should be OK
|
||||
import kotlin.Experimental.Level.*
|
||||
import kotlin.Experimental.Level
|
||||
import kotlin.Experimental
|
||||
|
||||
// Usages with FQ names should be OK
|
||||
|
||||
@kotlin.Experimental(kotlin.Experimental.Level.ERROR)
|
||||
annotation class M
|
||||
|
||||
|
||||
// Usages as types should be errors
|
||||
|
||||
fun f1(e: Experimental) {}
|
||||
fun f2(u: UseExperimental?) {}
|
||||
|
||||
typealias Experimental0 = Experimental
|
||||
typealias UseExperimental0 = UseExperimental
|
||||
fun f3(e: Experimental0 /* TODO */) {}
|
||||
fun f4(u: UseExperimental0 /* TODO */) {}
|
||||
|
||||
|
||||
// Usages as ::class literals should be errors
|
||||
|
||||
annotation class VarargKClasses(vararg val k: KClass<*>)
|
||||
|
||||
@VarargKClasses(
|
||||
Experimental::class,
|
||||
UseExperimental::class,
|
||||
kotlin.Experimental::class,
|
||||
kotlin.UseExperimental::class
|
||||
)
|
||||
fun f5() {}
|
||||
|
||||
|
||||
// Usages of markers as types should be errors
|
||||
|
||||
@Experimental
|
||||
annotation class Marker {
|
||||
class NestedClass
|
||||
|
||||
companion object {
|
||||
const val value = 42
|
||||
}
|
||||
}
|
||||
|
||||
fun f6(m: Marker) {}
|
||||
fun f7(): List<Marker>? = null
|
||||
fun f8(): test.Marker? = null
|
||||
|
||||
typealias Marker0 = Marker
|
||||
|
||||
fun f9(m: Marker0) {}
|
||||
|
||||
|
||||
// Usages of markers as qualifiers are errors as well (we can lift this restriction for select cases)
|
||||
|
||||
fun f10(m: Marker.NestedClass) {
|
||||
Marker.value
|
||||
}
|
||||
|
||||
// FILE: usage-from-other-file.kt
|
||||
|
||||
// Usages of markers in import statements should be OK, but not as qualifiers to import their nested classes
|
||||
|
||||
import test.Marker
|
||||
import test.Marker.NestedClass
|
||||
import test.Marker.Companion
|
||||
Reference in New Issue
Block a user