JS: report errors on different external items:
* data classes
* val/var parameters of primary constructors
* enum entry with body
* anonymous `init {}` block in classes
This commit is contained in:
+5
@@ -0,0 +1,5 @@
|
||||
external class A {
|
||||
<!EXTERNAL_ANONYMOUS_INITIALIZER!>init {
|
||||
noImpl
|
||||
}<!>
|
||||
}
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
package
|
||||
|
||||
public external final class A {
|
||||
public constructor A()
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
external enum class E {
|
||||
X,
|
||||
Y <!EXTERNAL_ENUM_ENTRY_WITH_BODY!>{
|
||||
fun foo()
|
||||
}<!>,
|
||||
Z <!EXTERNAL_ENUM_ENTRY_WITH_BODY!>{}<!>
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
package
|
||||
|
||||
public external final enum class E : kotlin.Enum<E> {
|
||||
enum entry X
|
||||
|
||||
enum entry Y
|
||||
|
||||
enum entry Z
|
||||
|
||||
private constructor E()
|
||||
public final override /*1*/ /*fake_override*/ val name: kotlin.String
|
||||
public final override /*1*/ /*fake_override*/ val ordinal: kotlin.Int
|
||||
protected final override /*1*/ /*fake_override*/ fun clone(): kotlin.Any
|
||||
public final override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: E): kotlin.Int
|
||||
public final override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public final override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
|
||||
// Static members
|
||||
public final /*synthesized*/ fun valueOf(/*0*/ value: kotlin.String): E
|
||||
public final /*synthesized*/ fun values(): kotlin.Array<E>
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
external class C(x: Int, <!EXTERNAL_CLASS_CONSTRUCTOR_PROPERTY_PARAMETER!>val y: String<!>)
|
||||
@@ -0,0 +1,9 @@
|
||||
package
|
||||
|
||||
public external final class C {
|
||||
public constructor C(/*0*/ x: kotlin.Int, /*1*/ y: kotlin.String)
|
||||
public final val y: kotlin.String
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
@@ -1,4 +1,4 @@
|
||||
external annotation class <!WRONG_EXTERNAL_DECLARATION!>A<!>
|
||||
external annotation class <!WRONG_EXTERNAL_DECLARATION!>A(val x: Int)<!>
|
||||
|
||||
val x: Int
|
||||
<!WRONG_EXTERNAL_DECLARATION!>external get()<!> = noImpl
|
||||
@@ -16,4 +16,6 @@ class C {
|
||||
external class D {
|
||||
val a: Int
|
||||
<!WRONG_EXTERNAL_DECLARATION!>external get()<!> = noImpl
|
||||
}
|
||||
}
|
||||
|
||||
external data class <!WRONG_EXTERNAL_DECLARATION!>E(val x: Int)<!>
|
||||
@@ -4,7 +4,8 @@ public val x: kotlin.Int
|
||||
public val B.x: kotlin.Int
|
||||
|
||||
public external final annotation class A : kotlin.Annotation {
|
||||
public constructor A()
|
||||
public constructor A(/*0*/ x: kotlin.Int)
|
||||
public final val x: kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
@@ -32,3 +33,13 @@ public external final class D {
|
||||
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
public external final data class E {
|
||||
public constructor E(/*0*/ x: kotlin.Int)
|
||||
public final val x: kotlin.Int
|
||||
public final operator /*synthesized*/ fun component1(): kotlin.Int
|
||||
public final /*synthesized*/ fun copy(/*0*/ x: kotlin.Int = ...): E
|
||||
public open override /*1*/ /*synthesized*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
|
||||
public open override /*1*/ /*synthesized*/ fun hashCode(): kotlin.Int
|
||||
public open override /*1*/ /*synthesized*/ fun toString(): kotlin.String
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user