[FIR-TEST] Add new testdata generated after changes in previous commit
This commit is contained in:
@@ -0,0 +1,6 @@
|
||||
class Flower() {
|
||||
|
||||
var minusOne: Int = 1
|
||||
get() = field + 1
|
||||
set(n: Int) { field = n - 1 }
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
class CustomGetVal() {
|
||||
val zz = 1
|
||||
get() = field * 2
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
package customGetValGlobal
|
||||
val zz = 1
|
||||
get() = field * 2
|
||||
@@ -0,0 +1,4 @@
|
||||
class Raise() {
|
||||
var zz = 1
|
||||
get() = field * 2
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
class Raise() {
|
||||
var zz = 1
|
||||
set(it) { field = it / 2 }
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
// See KT-9303: synthetic field variable does not exist for extension properties
|
||||
val String.foo: Int
|
||||
get() {
|
||||
// No shadowing here
|
||||
val field = 42
|
||||
return field
|
||||
}
|
||||
|
||||
val String.bar: Int = 13
|
||||
// Error
|
||||
get() = field
|
||||
|
||||
class My {
|
||||
val String.x: Int = 7
|
||||
// Error
|
||||
get() = field
|
||||
}
|
||||
@@ -0,0 +1,8 @@
|
||||
var y: Int = 1
|
||||
|
||||
// No backing field!
|
||||
var x: Int
|
||||
get() = y
|
||||
set(field) {
|
||||
y = field
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
class My(val field: Int) {
|
||||
// Backing field, initializer
|
||||
val second: Int = 0
|
||||
get() = field
|
||||
|
||||
// No backing field, no initializer
|
||||
val third: Int
|
||||
get() = this.field
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
open class Base {
|
||||
open val x: Int = 1
|
||||
get() = field - 1
|
||||
}
|
||||
|
||||
class Other: Base() {
|
||||
override val x = 2
|
||||
}
|
||||
|
||||
class Another: Base() {
|
||||
override val x = 3
|
||||
get() = field + 1
|
||||
}
|
||||
|
||||
class NoBackingField: Base() {
|
||||
override val x: Int
|
||||
get() = 5
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
interface My {
|
||||
val x: Int = 0
|
||||
get() = field
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
// !DIAGNOSTICS: -UNUSED_VARIABLE
|
||||
fun foo() {
|
||||
open class Local {
|
||||
val my: Int = 2
|
||||
get() = field
|
||||
}
|
||||
val your = object: Local() {
|
||||
val your: Int = 3
|
||||
get() = field
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
val my: Int = 21
|
||||
get() = field * 2
|
||||
@@ -0,0 +1,5 @@
|
||||
var my: Int = 0
|
||||
get() = -field
|
||||
set(arg) {
|
||||
field = arg
|
||||
}
|
||||
+7
@@ -0,0 +1,7 @@
|
||||
// !LANGUAGE: +RestrictionOfValReassignmentViaBackingField
|
||||
|
||||
val my: Int = 1
|
||||
get() {
|
||||
field++
|
||||
return field
|
||||
}
|
||||
+7
@@ -0,0 +1,7 @@
|
||||
// !LANGUAGE: -RestrictionOfValReassignmentViaBackingField
|
||||
|
||||
val my: Int = 1
|
||||
get() {
|
||||
field++
|
||||
return field
|
||||
}
|
||||
@@ -0,0 +1,8 @@
|
||||
class My {
|
||||
// No initialization needed because no backing field
|
||||
val two: Int
|
||||
get() {
|
||||
val field = 2
|
||||
return field
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,30 @@
|
||||
class My(val v: Int) {
|
||||
// Ok: setter is just private
|
||||
var x: Int
|
||||
private set
|
||||
|
||||
var y: Int
|
||||
set(arg) { field = arg }
|
||||
|
||||
var z: Int
|
||||
set(arg) { field = arg }
|
||||
|
||||
// Ok: initializer available
|
||||
var w: Int = v
|
||||
set(arg) { field = arg }
|
||||
|
||||
// Ok: no backing field
|
||||
var u: Int
|
||||
get() = w
|
||||
set(arg) { w = 2 * arg }
|
||||
|
||||
constructor(): this(0) {
|
||||
z = v
|
||||
}
|
||||
|
||||
init {
|
||||
x = 1
|
||||
y = 2
|
||||
u = 3
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,27 @@
|
||||
abstract class My(val v: Int) {
|
||||
// Ok: variable is just abstract
|
||||
abstract var x: Int
|
||||
|
||||
open var y: Int
|
||||
|
||||
open var z: Int
|
||||
|
||||
// Ok: initializer available
|
||||
open var w: Int = v
|
||||
set(arg) { field = arg }
|
||||
|
||||
// Ok: no backing field, no initializer possible
|
||||
open var u: Int
|
||||
get() = w
|
||||
set(arg) { w = 2 * arg }
|
||||
|
||||
constructor(): this(0) {
|
||||
z = v
|
||||
}
|
||||
|
||||
init {
|
||||
x = 1
|
||||
y = 2
|
||||
u = 3
|
||||
}
|
||||
}
|
||||
+26
@@ -0,0 +1,26 @@
|
||||
// KT-7042 Providing return type for property setter is not reported as error
|
||||
|
||||
var x: Int = 1
|
||||
|
||||
// No backing field!
|
||||
var y: Int
|
||||
get() = x
|
||||
set(value): Any {
|
||||
x = value
|
||||
}
|
||||
|
||||
var z: Int
|
||||
get() = x
|
||||
set(value): Unit {
|
||||
x = value
|
||||
}
|
||||
|
||||
var u: String = ""
|
||||
set(value): Unit {
|
||||
field = value
|
||||
}
|
||||
|
||||
var v: String = ""
|
||||
set(value): String {
|
||||
field = value
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
// KT-782 Allow backing field usage for accessors of variables on namespace level
|
||||
|
||||
package kt782
|
||||
|
||||
val z : Int = 34
|
||||
|
||||
val y : Int = 11
|
||||
get() {
|
||||
return field
|
||||
}
|
||||
|
||||
val x : Int
|
||||
get() = z
|
||||
|
||||
val w : Int = 56
|
||||
get() = field
|
||||
Reference in New Issue
Block a user