KT-2752: add diagnostic that reports about applying JsName on overridden declarations

This commit is contained in:
Alexey Andreev
2016-06-03 13:47:25 +03:00
parent 725d13b72e
commit 16c172f053
6 changed files with 56 additions and 4 deletions
@@ -0,0 +1,19 @@
package foo
open class A {
@JsName("foo_") open fun foo() = 23
@JsName("bar_") open val bar = 123
open val baz: Int
@JsName("getBaz_") get() = 55
}
class B : A() {
<!JS_NAME_PROHIBITED_FOR_OVERRIDE!>@JsName("foo__")<!> override fun foo() = 42
<!JS_NAME_PROHIBITED_FOR_OVERRIDE!>@JsName("bar__")<!> override val bar = 142
override val baz: Int
<!JS_NAME_PROHIBITED_FOR_OVERRIDE!>@JsName("getBaz__")<!> get() = 155
}
@@ -0,0 +1,24 @@
package
package foo {
public open class A {
public constructor A()
@kotlin.js.JsName(name = "bar_") public open val bar: kotlin.Int = 123
public open val baz: kotlin.Int
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
@kotlin.js.JsName(name = "foo_") public open fun foo(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
public final class B : foo.A {
public constructor B()
@kotlin.js.JsName(name = "bar__") public open override /*1*/ val bar: kotlin.Int = 142
public open override /*1*/ val baz: kotlin.Int
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
@kotlin.js.JsName(name = "foo__") public open override /*1*/ fun foo(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
}