Accessor visibilities are now forbidden for abstract properties
This commit is contained in:
@@ -0,0 +1,15 @@
|
||||
abstract class My {
|
||||
abstract var x: Int
|
||||
<!REDUNDANT_MODIFIER_IN_GETTER!>public<!> get
|
||||
<!ACCESSOR_VISIBILITY_FOR_ABSTRACT_PROPERTY!>private<!> set
|
||||
|
||||
abstract val y: Int
|
||||
<!ACCESSOR_VISIBILITY_FOR_ABSTRACT_PROPERTY!>protected<!> get
|
||||
|
||||
abstract protected var z: Int
|
||||
<!ACCESSOR_VISIBILITY_FOR_ABSTRACT_PROPERTY!>internal<!> get
|
||||
<!ACCESSOR_VISIBILITY_FOR_ABSTRACT_PROPERTY!>public<!> set
|
||||
|
||||
abstract internal val w: Int
|
||||
<!ACCESSOR_VISIBILITY_FOR_ABSTRACT_PROPERTY!>protected<!> get
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
package
|
||||
|
||||
public abstract class My {
|
||||
public constructor My()
|
||||
internal abstract val w: kotlin.Int
|
||||
public abstract var x: kotlin.Int
|
||||
public abstract val y: kotlin.Int
|
||||
protected abstract 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
|
||||
}
|
||||
@@ -9,8 +9,8 @@ abstract class MyAbstractClass() {
|
||||
|
||||
<!MUST_BE_INITIALIZED_OR_BE_ABSTRACT!>var b: Int<!> private set
|
||||
var b1: Int = 0; private set
|
||||
abstract var b2: Int private set
|
||||
abstract var b3: Int = <!ABSTRACT_PROPERTY_WITH_INITIALIZER!>0<!>; private set
|
||||
abstract var b2: Int <!ACCESSOR_VISIBILITY_FOR_ABSTRACT_PROPERTY!>private<!> set
|
||||
abstract var b3: Int = <!ABSTRACT_PROPERTY_WITH_INITIALIZER!>0<!>; <!ACCESSOR_VISIBILITY_FOR_ABSTRACT_PROPERTY!>private<!> set
|
||||
|
||||
<!MUST_BE_INITIALIZED!>var c: Int<!> set(v: Int) { field = v }
|
||||
var c1: Int = 0; set(v: Int) { field = v }
|
||||
|
||||
+2
-2
@@ -9,8 +9,8 @@ class MyClass() {
|
||||
|
||||
<!MUST_BE_INITIALIZED_OR_BE_ABSTRACT!>var b: Int<!> private set
|
||||
var b1: Int = 0; private set
|
||||
<!ABSTRACT_PROPERTY_IN_NON_ABSTRACT_CLASS!>abstract<!> var b2: Int private set
|
||||
<!ABSTRACT_PROPERTY_IN_NON_ABSTRACT_CLASS!>abstract<!> var b3: Int = 0; private set
|
||||
<!ABSTRACT_PROPERTY_IN_NON_ABSTRACT_CLASS!>abstract<!> var b2: Int <!ACCESSOR_VISIBILITY_FOR_ABSTRACT_PROPERTY!>private<!> set
|
||||
<!ABSTRACT_PROPERTY_IN_NON_ABSTRACT_CLASS!>abstract<!> var b3: Int = 0; <!ACCESSOR_VISIBILITY_FOR_ABSTRACT_PROPERTY!>private<!> set
|
||||
|
||||
<!MUST_BE_INITIALIZED!>var c: Int<!> set(v: Int) { field = v }
|
||||
var c1: Int = 0; set(v: Int) { field = v }
|
||||
|
||||
+3
-3
@@ -7,10 +7,10 @@ interface MyTrait {
|
||||
<!ABSTRACT_MODIFIER_IN_INTERFACE!>abstract<!> val a2: Int
|
||||
<!ABSTRACT_MODIFIER_IN_INTERFACE!>abstract<!> val a3: Int = <!ABSTRACT_PROPERTY_WITH_INITIALIZER!>1<!>
|
||||
|
||||
var b: Int private set
|
||||
var b: Int <!ACCESSOR_VISIBILITY_FOR_ABSTRACT_PROPERTY!>private<!> set
|
||||
var b1: Int = <!PROPERTY_INITIALIZER_IN_INTERFACE!>0<!>; private set
|
||||
<!ABSTRACT_MODIFIER_IN_INTERFACE!>abstract<!> var b2: Int private set
|
||||
<!ABSTRACT_MODIFIER_IN_INTERFACE!>abstract<!> var b3: Int = <!ABSTRACT_PROPERTY_WITH_INITIALIZER!>0<!>; private set
|
||||
<!ABSTRACT_MODIFIER_IN_INTERFACE!>abstract<!> var b2: Int <!ACCESSOR_VISIBILITY_FOR_ABSTRACT_PROPERTY!>private<!> set
|
||||
<!ABSTRACT_MODIFIER_IN_INTERFACE!>abstract<!> var b3: Int = <!ABSTRACT_PROPERTY_WITH_INITIALIZER!>0<!>; <!ACCESSOR_VISIBILITY_FOR_ABSTRACT_PROPERTY!>private<!> set
|
||||
|
||||
<!BACKING_FIELD_IN_INTERFACE!>var c: Int<!> set(v: Int) { field = v }
|
||||
<!BACKING_FIELD_IN_INTERFACE!>var c1: Int<!> = <!PROPERTY_INITIALIZER_IN_INTERFACE!>0<!>; set(v: Int) { field = v }
|
||||
|
||||
@@ -11,8 +11,8 @@ enum class MyEnum() {
|
||||
|
||||
<!MUST_BE_INITIALIZED_OR_BE_ABSTRACT!>var b: Int<!> private set
|
||||
var b1: Int = 0; private set
|
||||
abstract var b2: Int private set
|
||||
abstract var b3: Int = <!ABSTRACT_PROPERTY_WITH_INITIALIZER!>0<!>; private set
|
||||
abstract var b2: Int <!ACCESSOR_VISIBILITY_FOR_ABSTRACT_PROPERTY!>private<!> set
|
||||
abstract var b3: Int = <!ABSTRACT_PROPERTY_WITH_INITIALIZER!>0<!>; <!ACCESSOR_VISIBILITY_FOR_ABSTRACT_PROPERTY!>private<!> set
|
||||
|
||||
<!MUST_BE_INITIALIZED!>var c: Int<!> set(v: Int) { field = v }
|
||||
var c1: Int = 0; set(v: Int) { field = v }
|
||||
|
||||
@@ -5,11 +5,11 @@ interface Test<in I, out O> {
|
||||
<!PRIVATE_PROPERTY_IN_INTERFACE!>private<!> val private_val: I
|
||||
|
||||
var interlan_private_set: <!TYPE_VARIANCE_CONFLICT!>O<!>
|
||||
private set
|
||||
<!ACCESSOR_VISIBILITY_FOR_ABSTRACT_PROPERTY!>private<!> set
|
||||
public var public_private_set: <!TYPE_VARIANCE_CONFLICT!>O<!>
|
||||
private set
|
||||
<!ACCESSOR_VISIBILITY_FOR_ABSTRACT_PROPERTY!>private<!> set
|
||||
<!WRONG_MODIFIER_CONTAINING_DECLARATION!>protected<!> var protected_private_set: <!TYPE_VARIANCE_CONFLICT!>O<!>
|
||||
private set
|
||||
<!ACCESSOR_VISIBILITY_FOR_ABSTRACT_PROPERTY!>private<!> set
|
||||
<!PRIVATE_PROPERTY_IN_INTERFACE!>private<!> var private_private_set: O
|
||||
private set
|
||||
|
||||
|
||||
Reference in New Issue
Block a user