SETTER_VISIBILITY_DIFFERS_FROM_LATEINIT_VISIBILITY diagnostic removed

This commit is contained in:
Mikhail Glukhikh
2015-12-17 18:20:33 +03:00
parent cfacd5da1e
commit 60521e20ff
6 changed files with 5 additions and 11 deletions
@@ -357,7 +357,6 @@ public interface Errors {
DiagnosticFactory0<PsiElement> REDUNDANT_MODIFIER_IN_GETTER = DiagnosticFactory0.create(WARNING);
DiagnosticFactory0<PsiElement> GETTER_VISIBILITY_DIFFERS_FROM_PROPERTY_VISIBILITY = DiagnosticFactory0.create(ERROR);
DiagnosticFactory0<PsiElement> SETTER_VISIBILITY_DIFFERS_FROM_LATEINIT_VISIBILITY = DiagnosticFactory0.create(ERROR);
DiagnosticFactory0<PsiElement> SETTER_VISIBILITY_INCONSISTENT_WITH_PROPERTY_VISIBILITY = DiagnosticFactory0.create(ERROR);
DiagnosticFactory0<PsiElement> PRIVATE_SETTER_FOR_ABSTRACT_PROPERTY = DiagnosticFactory0.create(ERROR);
DiagnosticFactory0<PsiElement> PRIVATE_SETTER_FOR_OPEN_PROPERTY = DiagnosticFactory0.create(ERROR);
@@ -210,7 +210,6 @@ public class DefaultErrorMessages {
MAP.put(INAPPLICABLE_LATEINIT_MODIFIER, "''lateinit'' modifier {0}", STRING);
MAP.put(GETTER_VISIBILITY_DIFFERS_FROM_PROPERTY_VISIBILITY, "Getter visibility must be the same as property visibility");
MAP.put(SETTER_VISIBILITY_DIFFERS_FROM_LATEINIT_VISIBILITY, "Setter visibility must be the same as lateinit property visibility");
MAP.put(SETTER_VISIBILITY_INCONSISTENT_WITH_PROPERTY_VISIBILITY, "Setter visibility must be the same or less permissive than property visibility");
MAP.put(PRIVATE_SETTER_FOR_ABSTRACT_PROPERTY, "Private setters are not allowed for abstract properties");
MAP.put(PRIVATE_SETTER_FOR_OPEN_PROPERTY, "Private setters are deprecated for open properties");
@@ -720,9 +720,6 @@ class DeclarationsChecker(
reportVisibilityModifierDiagnostics(tokens.values, Errors.PRIVATE_SETTER_FOR_OPEN_PROPERTY)
}
}
else if (propertyDescriptor.isLateInit && accessorDescriptor.visibility != propertyDescriptor.visibility) {
reportVisibilityModifierDiagnostics(tokens.values, Errors.SETTER_VISIBILITY_DIFFERS_FROM_LATEINIT_VISIBILITY)
}
else {
val compare = Visibilities.compare(accessorDescriptor.visibility, propertyDescriptor.visibility)
if (compare == null || compare > 0) {
+1 -1
View File
@@ -16,7 +16,7 @@ public abstract class A<T: Any, V: String?>(<!INAPPLICABLE_LATEINIT_MODIFIER!>la
public lateinit var e: String
get
<!SETTER_VISIBILITY_DIFFERS_FROM_LATEINIT_VISIBILITY!>private<!> set
private set
fun a() {
<!WRONG_MODIFIER_TARGET!>lateinit<!> var <!UNUSED_VARIABLE!>a<!>: String
+4 -4
View File
@@ -1,20 +1,20 @@
class My {
lateinit var x: String
<!SETTER_VISIBILITY_DIFFERS_FROM_LATEINIT_VISIBILITY!>private<!> set
private set
lateinit var y: String
<!SETTER_VISIBILITY_DIFFERS_FROM_LATEINIT_VISIBILITY!>internal<!> set
internal set
lateinit protected var z: String
<!SETTER_VISIBILITY_DIFFERS_FROM_LATEINIT_VISIBILITY!>private<!> set
private set
lateinit private var w: String
// Ok, private var / private set
private set
lateinit protected var v: String
<!SETTER_VISIBILITY_DIFFERS_FROM_LATEINIT_VISIBILITY!>public<!> set
<!SETTER_VISIBILITY_INCONSISTENT_WITH_PROPERTY_VISIBILITY!>public<!> set
lateinit public var u: String
// Ok, public var / public set
@@ -115,7 +115,6 @@ public class QuickFixRegistrar : QuickFixContributor {
val removeModifierFactory = RemoveModifierFix.createRemoveModifierFactory()
GETTER_VISIBILITY_DIFFERS_FROM_PROPERTY_VISIBILITY.registerFactory(removeModifierFactory)
SETTER_VISIBILITY_DIFFERS_FROM_LATEINIT_VISIBILITY.registerFactory(removeModifierFactory)
SETTER_VISIBILITY_INCONSISTENT_WITH_PROPERTY_VISIBILITY.registerFactory(removeModifierFactory)
PRIVATE_SETTER_FOR_ABSTRACT_PROPERTY.registerFactory(removeModifierFactory)
PRIVATE_SETTER_FOR_OPEN_PROPERTY.registerFactory(removeModifierFactory)