Incorrect 'inner' usage is diagnosed by parent, not by target
This commit is contained in:
@@ -53,7 +53,8 @@ public object ModifierCheckerCore {
|
||||
OPEN_KEYWORD to EnumSet.of(CLASS_ONLY, LOCAL_CLASS, INNER_CLASS, INTERFACE, MEMBER_PROPERTY, MEMBER_FUNCTION),
|
||||
FINAL_KEYWORD to EnumSet.of(CLASS_ONLY, LOCAL_CLASS, INNER_CLASS, ENUM_CLASS, OBJECT, MEMBER_PROPERTY, MEMBER_FUNCTION),
|
||||
SEALED_KEYWORD to EnumSet.of(CLASS_ONLY, LOCAL_CLASS, INNER_CLASS),
|
||||
INNER_KEYWORD to EnumSet.of(INNER_CLASS),
|
||||
// We should have also CLASS_ONLY here because INNER_CLASS is not always perfectly identified
|
||||
INNER_KEYWORD to EnumSet.of(CLASS_ONLY, INNER_CLASS),
|
||||
OVERRIDE_KEYWORD to EnumSet.of(MEMBER_PROPERTY, MEMBER_FUNCTION),
|
||||
PRIVATE_KEYWORD to EnumSet.of(CLASS, MEMBER_FUNCTION, TOP_LEVEL_FUNCTION, PROPERTY_GETTER, PROPERTY_SETTER,
|
||||
MEMBER_PROPERTY, TOP_LEVEL_PROPERTY, CONSTRUCTOR),
|
||||
|
||||
@@ -1 +1 @@
|
||||
<!WRONG_MODIFIER_TARGET, DEPRECATED_MODIFIER_PAIR!>inner<!> <!DEPRECATED_MODIFIER_PAIR!>data<!> class Outer(val x: Int)
|
||||
<!WRONG_MODIFIER_CONTAINING_DECLARATION, DEPRECATED_MODIFIER_PAIR!>inner<!> <!DEPRECATED_MODIFIER_PAIR!>data<!> class Outer(val x: Int)
|
||||
@@ -1,7 +1,7 @@
|
||||
<!WRONG_MODIFIER_TARGET!>inner<!> fun foo() {}
|
||||
<!WRONG_MODIFIER_TARGET!>inner<!> val prop = 42
|
||||
|
||||
<!WRONG_MODIFIER_TARGET!>inner<!> class A
|
||||
<!WRONG_MODIFIER_CONTAINING_DECLARATION!>inner<!> class A
|
||||
<!WRONG_MODIFIER_TARGET!>inner<!> interface B
|
||||
<!WRONG_MODIFIER_TARGET!>inner<!> object C
|
||||
|
||||
@@ -23,16 +23,16 @@ enum class H {
|
||||
}
|
||||
|
||||
interface K {
|
||||
<!WRONG_MODIFIER_TARGET!>inner<!> class L
|
||||
<!WRONG_MODIFIER_CONTAINING_DECLARATION!>inner<!> class L
|
||||
}
|
||||
|
||||
object N {
|
||||
<!WRONG_MODIFIER_TARGET!>inner<!> class O
|
||||
<!WRONG_MODIFIER_CONTAINING_DECLARATION!>inner<!> class O
|
||||
}
|
||||
|
||||
class P {
|
||||
companion object {
|
||||
<!WRONG_MODIFIER_TARGET!>inner<!> class Q
|
||||
<!WRONG_MODIFIER_CONTAINING_DECLARATION!>inner<!> class Q
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user