[FIR-TEST] Add new testdata generated after changes in previous commit
This commit is contained in:
+18
@@ -0,0 +1,18 @@
|
||||
// !DIAGNOSTICS: -UNUSED_VALUE -UNUSED_VARIABLE -ASSIGNED_BUT_NEVER_ACCESSED_VARIABLE
|
||||
// !LANGUAGE: +LateinitLocalVariables
|
||||
|
||||
import kotlin.reflect.KProperty
|
||||
|
||||
object Delegate {
|
||||
operator fun getValue(instance: Any?, property: KProperty<*>) : String = ""
|
||||
operator fun setValue(instance: Any?, property: KProperty<*>, value: String) {}
|
||||
}
|
||||
|
||||
|
||||
fun test() {
|
||||
lateinit val test0: Any
|
||||
lateinit var test1: Int
|
||||
lateinit var test2: Any?
|
||||
lateinit var test3: String = ""
|
||||
lateinit var test4 by Delegate
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
// !LANGUAGE: +LateinitLocalVariables
|
||||
|
||||
fun test() {
|
||||
lateinit var s: String
|
||||
s = ""
|
||||
s.length
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
// !LANGUAGE: +LateinitLocalVariables
|
||||
|
||||
fun test1() {
|
||||
lateinit var s: String
|
||||
s.length
|
||||
}
|
||||
|
||||
fun test2() {
|
||||
lateinit var s: String
|
||||
run {
|
||||
s = ""
|
||||
}
|
||||
s.length
|
||||
}
|
||||
|
||||
fun almostAlwaysTrue(): Boolean = true
|
||||
|
||||
fun test3() {
|
||||
lateinit var s: String
|
||||
if (almostAlwaysTrue()) {
|
||||
s = ""
|
||||
}
|
||||
s.length
|
||||
}
|
||||
@@ -0,0 +1,71 @@
|
||||
// !LANGUAGE: -LateinitTopLevelProperties -LateinitLocalVariables
|
||||
import kotlin.reflect.KProperty
|
||||
|
||||
class CustomDelegate {
|
||||
operator fun getValue(thisRef: Any?, prop: KProperty<*>): String = prop.name
|
||||
operator fun setValue(thisRef: Any?, prop: KProperty<*>, value: String) {}
|
||||
}
|
||||
|
||||
public abstract class A<T: Any, V: String?>(lateinit var p2: String) {
|
||||
|
||||
public lateinit val a: String
|
||||
lateinit val b: T
|
||||
private lateinit var c: CharSequence
|
||||
|
||||
lateinit val d: String
|
||||
get
|
||||
|
||||
public lateinit var e: String
|
||||
get
|
||||
private set
|
||||
|
||||
fun a() {
|
||||
lateinit var a: String
|
||||
}
|
||||
|
||||
lateinit var e1: V
|
||||
lateinit var e2: String?
|
||||
lateinit var e3: Int
|
||||
lateinit var e4: Int?
|
||||
lateinit var e5 = "A"
|
||||
|
||||
// With initializer, primitive
|
||||
lateinit var e6 = 3
|
||||
|
||||
lateinit var e7 by CustomDelegate()
|
||||
|
||||
lateinit var e8: String
|
||||
get() = "A"
|
||||
|
||||
lateinit var e9: String
|
||||
set(v) { field = v }
|
||||
|
||||
abstract lateinit var e10: String
|
||||
|
||||
lateinit var String.e11: String
|
||||
|
||||
lateinit var String.e12: String
|
||||
}
|
||||
|
||||
lateinit val topLevel: String
|
||||
lateinit var topLevelMutable: String
|
||||
|
||||
public interface Intf {
|
||||
lateinit var str: String
|
||||
}
|
||||
|
||||
public abstract class AbstractClass {
|
||||
abstract var str: String
|
||||
}
|
||||
|
||||
public class AbstractClassImpl : AbstractClass() {
|
||||
override lateinit var str: String
|
||||
}
|
||||
|
||||
public class B {
|
||||
lateinit var a: String
|
||||
|
||||
init {
|
||||
a.length
|
||||
}
|
||||
}
|
||||
+71
@@ -0,0 +1,71 @@
|
||||
// !LANGUAGE: +LateinitTopLevelProperties +LateinitLocalVariables
|
||||
import kotlin.reflect.KProperty
|
||||
|
||||
class CustomDelegate {
|
||||
operator fun getValue(thisRef: Any?, prop: KProperty<*>): String = prop.name
|
||||
operator fun setValue(thisRef: Any?, prop: KProperty<*>, value: String) {}
|
||||
}
|
||||
|
||||
public abstract class A<T: Any, V: String?>(lateinit var p2: String) {
|
||||
|
||||
public lateinit val a: String
|
||||
lateinit val b: T
|
||||
private lateinit var c: CharSequence
|
||||
|
||||
lateinit val d: String
|
||||
get
|
||||
|
||||
public lateinit var e: String
|
||||
get
|
||||
private set
|
||||
|
||||
fun a() {
|
||||
lateinit var a: String
|
||||
}
|
||||
|
||||
lateinit var e1: V
|
||||
lateinit var e2: String?
|
||||
lateinit var e3: Int
|
||||
lateinit var e4: Int?
|
||||
lateinit var e5 = "A"
|
||||
|
||||
// With initializer, primitive
|
||||
lateinit var e6 = 3
|
||||
|
||||
lateinit var e7 by CustomDelegate()
|
||||
|
||||
lateinit var e8: String
|
||||
get() = "A"
|
||||
|
||||
lateinit var e9: String
|
||||
set(v) { field = v }
|
||||
|
||||
abstract lateinit var e10: String
|
||||
|
||||
lateinit var String.e11: String
|
||||
|
||||
lateinit var String.e12: String
|
||||
}
|
||||
|
||||
lateinit val topLevel: String
|
||||
lateinit var topLevelMutable: String
|
||||
|
||||
public interface Intf {
|
||||
lateinit var str: String
|
||||
}
|
||||
|
||||
public abstract class AbstractClass {
|
||||
abstract var str: String
|
||||
}
|
||||
|
||||
public class AbstractClassImpl : AbstractClass() {
|
||||
override lateinit var str: String
|
||||
}
|
||||
|
||||
public class B {
|
||||
lateinit var a: String
|
||||
|
||||
init {
|
||||
a.length
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
class My {
|
||||
|
||||
lateinit var x: String
|
||||
private set
|
||||
|
||||
lateinit var y: String
|
||||
internal set
|
||||
|
||||
lateinit protected var z: String
|
||||
private set
|
||||
|
||||
lateinit private var w: String
|
||||
// Ok, private var / private set
|
||||
private set
|
||||
|
||||
lateinit protected var v: String
|
||||
public set
|
||||
|
||||
lateinit public var u: String
|
||||
// Ok, public var / public set
|
||||
public set
|
||||
}
|
||||
Reference in New Issue
Block a user