Files
kotlin/compiler/testData/diagnostics/tests/classObjects/invisibleClassObjects.kt
Svetlana Isakova 132c292d32 Don't check class object visibility when it's in qualifier position
(visibility for member is checked anyway).
It might be better to underline invisible qualifier in a chain (class or class object), not the last one (member) - for later improvement.
2014-09-01 12:32:54 +04:00

52 lines
749 B
Kotlin

//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()
B.<!INVISIBLE_MEMBER!>bar<!>()
C.<!INVISIBLE_MEMBER!>baz<!>()
D.<!INVISIBLE_MEMBER!>quux<!>()
a.A.foo()
a.C.<!INVISIBLE_MEMBER!>baz<!>()
}
fun f(<!UNUSED_PARAMETER!>unused<!>: Any) {}