Setter visibility must be worse or the same as property visibility
This commit is contained in:
@@ -17,7 +17,7 @@ class Test: ATest(), ITest {
|
||||
|
||||
override var prop2 : Int
|
||||
get() = 14
|
||||
<!CANNOT_CHANGE_ACCESS_PRIVILEGE!>internal<!> set(value) {}
|
||||
<!CANNOT_CHANGE_ACCESS_PRIVILEGE, SETTER_VISIBILITY_INCONSISTENT_WITH_PROPERTY_VISIBILITY!>internal<!> set(value) {}
|
||||
}
|
||||
|
||||
fun main(args: Array<String>) {
|
||||
|
||||
@@ -0,0 +1,25 @@
|
||||
class My {
|
||||
var x: Int = 0
|
||||
// Ok
|
||||
private set
|
||||
|
||||
private var y: Int = 1
|
||||
// Error: better
|
||||
<!SETTER_VISIBILITY_INCONSISTENT_WITH_PROPERTY_VISIBILITY!>public<!> set
|
||||
|
||||
protected var z: Int = 2
|
||||
// Ok
|
||||
private set
|
||||
|
||||
protected var w: Int = 3
|
||||
// Error: incompatible
|
||||
<!SETTER_VISIBILITY_INCONSISTENT_WITH_PROPERTY_VISIBILITY!>internal<!> set
|
||||
|
||||
internal var v: Int = 4
|
||||
// Error: incompatible
|
||||
<!SETTER_VISIBILITY_INCONSISTENT_WITH_PROPERTY_VISIBILITY!>protected<!> set
|
||||
|
||||
internal var t: Int = 5
|
||||
// Error: better
|
||||
<!SETTER_VISIBILITY_INCONSISTENT_WITH_PROPERTY_VISIBILITY!>public<!> set
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
package
|
||||
|
||||
public final class My {
|
||||
public constructor My()
|
||||
internal final var t: kotlin.Int
|
||||
internal final var v: kotlin.Int
|
||||
protected final var w: kotlin.Int
|
||||
public final var x: kotlin.Int
|
||||
private final var y: kotlin.Int
|
||||
protected final var z: kotlin.Int
|
||||
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