Private setter is now forbidden for non-private late init variables
This commit is contained in:
+1
-1
@@ -13,7 +13,7 @@ public abstract class A<T: Any, V: String?>(<!INAPPLICABLE_LATEINIT_MODIFIER_PRI
|
||||
|
||||
public lateinit var e: String
|
||||
get
|
||||
private set
|
||||
<!PRIVATE_SETTER_ON_NON_PRIVATE_LATE_INIT_VAR!>private<!> set
|
||||
|
||||
fun a() {
|
||||
<!WRONG_MODIFIER_TARGET!>lateinit<!> var <!UNUSED_VARIABLE!>a<!>: String
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
class My {
|
||||
|
||||
lateinit var x: String
|
||||
<!PRIVATE_SETTER_ON_NON_PRIVATE_LATE_INIT_VAR!>private<!> set
|
||||
|
||||
lateinit var y: String
|
||||
// Ok, non-private setter
|
||||
internal set
|
||||
|
||||
lateinit protected var z: String
|
||||
<!PRIVATE_SETTER_ON_NON_PRIVATE_LATE_INIT_VAR!>private<!> set
|
||||
|
||||
lateinit private var w: String
|
||||
// Ok, private var
|
||||
private set
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
package
|
||||
|
||||
public final class My {
|
||||
public constructor My()
|
||||
private final lateinit var w: kotlin.String
|
||||
public final lateinit var x: kotlin.String
|
||||
public final lateinit var y: kotlin.String
|
||||
protected final lateinit var z: kotlin.String
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
Reference in New Issue
Block a user