Files
kotlin-fork/compiler/testData/diagnostics/tests/exposed/protected.kt
T
Mikhail Glukhikh 0cc861f00b Exposed visibility checking, a set of exposed visibility tests, some test fixes
Effective visibility mechanism introduced.
Local is considered as public, java protected as Kotlin protected, java package private as Kotlin private.
2015-10-07 20:15:16 +03:00

20 lines
502 B
Kotlin
Vendored

open class A {
// protected relative to A
protected open class B {
fun foo() {}
}
public open class C {
// protected relative to C, must be an error
protected open class D : <!EXPOSED_SUPER_CLASS!>B()<!>
}
}
class E : A.C() {
// F has invisible grandparent class B (E does not inherit from A)
class F : <!EXPOSED_SUPER_CLASS!>A.C.D()<!> {
init {
// Invoke function from invisible grandparent
foo()
}
}
}