Report INVISIBLE_MEMBER on private class object usage
This commit is contained in:
@@ -3,7 +3,7 @@ package foo
|
||||
fun test() {
|
||||
A.d
|
||||
A.<!INVISIBLE_MEMBER!>f<!>
|
||||
CCC.<!INVISIBLE_MEMBER!>classObjectVar<!>
|
||||
<!INVISIBLE_MEMBER!>CCC<!>.<!INVISIBLE_MEMBER!>classObjectVar<!>
|
||||
}
|
||||
|
||||
class A() {
|
||||
|
||||
@@ -0,0 +1,48 @@
|
||||
//FILE:a.kt
|
||||
package a
|
||||
|
||||
class A {
|
||||
class object {
|
||||
fun foo() {}
|
||||
}
|
||||
}
|
||||
|
||||
private class B {
|
||||
class object {
|
||||
fun bar() {}
|
||||
}
|
||||
}
|
||||
|
||||
class C {
|
||||
private class object {
|
||||
fun baz() {}
|
||||
}
|
||||
}
|
||||
|
||||
private class D {
|
||||
private class object {
|
||||
fun quux() {}
|
||||
}
|
||||
}
|
||||
|
||||
//FILE:b.kt
|
||||
package b
|
||||
|
||||
import a.A
|
||||
import a.<!INVISIBLE_REFERENCE!>B<!>
|
||||
import a.C
|
||||
import a.<!INVISIBLE_REFERENCE!>D<!>
|
||||
|
||||
fun test() {
|
||||
f(A)
|
||||
f(<!INVISIBLE_MEMBER!>B<!>)
|
||||
f(<!INVISIBLE_MEMBER!>C<!>)
|
||||
f(<!INVISIBLE_MEMBER!>D<!>)
|
||||
|
||||
A.foo()
|
||||
<!INVISIBLE_MEMBER!>B<!>.<!INVISIBLE_MEMBER!>bar<!>()
|
||||
<!INVISIBLE_MEMBER!>C<!>.<!INVISIBLE_MEMBER!>baz<!>()
|
||||
<!INVISIBLE_MEMBER!>D<!>.<!INVISIBLE_MEMBER!>quux<!>()
|
||||
}
|
||||
|
||||
fun f(<!UNUSED_PARAMETER!>unused<!>: Any) {}
|
||||
@@ -0,0 +1,15 @@
|
||||
class A {
|
||||
private class object {
|
||||
class B {
|
||||
class C {
|
||||
class object {
|
||||
fun foo() {}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
fun f1() = <!INVISIBLE_MEMBER!>A<!>.B.C
|
||||
|
||||
fun f2() = <!INVISIBLE_MEMBER!>A<!>.B.C.<!INVISIBLE_MEMBER!>foo<!>()
|
||||
Reference in New Issue
Block a user