Method can be hidden if it is annotated with kotlin.internal.PlatformDependent,

or is a Java method from a Kotlin built-in class (transitively).

https://github.com/Kotlin/KEEP/blob/master/proposals/jdk-dependent-built-ins.md#backward-compatibility-of-overrides
This commit is contained in:
Dmitry Petrov
2016-12-21 10:49:57 +03:00
parent d9271b54fb
commit 8d16bd1215
22 changed files with 661 additions and 12 deletions
@@ -7,8 +7,7 @@ class A : java.util.ArrayList<String>() {
}
class A1 : java.util.ArrayList<String>() {
// TODO: should be allowed
<!VIRTUAL_MEMBER_HIDDEN!>fun stream(): java.util.stream.Stream<String><!> = super.<!DEPRECATION_ERROR!>stream<!>()
fun stream(): java.util.stream.Stream<String> = super.<!DEPRECATION_ERROR!>stream<!>()
}
class B : <!DEPRECATION_ERROR!>Throwable<!>("", null, false, false)