open + data and inner + data are deprecated, a new test, relevant test fixes

This commit is contained in:
Mikhail Glukhikh
2015-09-22 12:06:52 +03:00
parent 731fdecf06
commit 58110cd0d1
17 changed files with 51 additions and 169 deletions
@@ -1,6 +1,6 @@
// !CHECK_TYPE
open data class A(private val x: Int)
<!DEPRECATED_MODIFIER_PAIR!>open<!> <!DEPRECATED_MODIFIER_PAIR!>data<!> class A(private val x: Int)
class B : A(1) {
fun component1(): String = ""
@@ -1,15 +0,0 @@
open data class A(private val x: Int, protected val y: String, public val z: Any)
fun foo(a: A) {
a.<!INVISIBLE_MEMBER!>component1<!>()
a.<!INVISIBLE_MEMBER!>component2<!>()
a.component3()
}
class B : A(42, "", "") {
fun foo() {
this.<!INVISIBLE_MEMBER!>component1<!>()
this.component2()
this.component3()
}
}
@@ -1,32 +0,0 @@
package
public fun foo(/*0*/ a: A): kotlin.Unit
@kotlin.data() public open class A {
public constructor A(/*0*/ x: kotlin.Int, /*1*/ y: kotlin.String, /*2*/ z: kotlin.Any)
private final val x: kotlin.Int
protected final val y: kotlin.String
public final val z: kotlin.Any
private final /*synthesized*/ fun component1(): kotlin.Int
protected final /*synthesized*/ fun component2(): kotlin.String
public final /*synthesized*/ fun component3(): kotlin.Any
public final /*synthesized*/ fun copy(/*0*/ x: kotlin.Int = ..., /*1*/ y: kotlin.String = ..., /*2*/ z: kotlin.Any = ...): 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
}
public final class B : A {
public constructor B()
invisible_fake final override /*1*/ /*fake_override*/ val x: kotlin.Int
protected final override /*1*/ /*fake_override*/ val y: kotlin.String
public final override /*1*/ /*fake_override*/ val z: kotlin.Any
invisible_fake final override /*1*/ /*fake_override*/ fun component1(): kotlin.Int
protected final override /*1*/ /*fake_override*/ fun component2(): kotlin.String
public final override /*1*/ /*fake_override*/ fun component3(): kotlin.Any
public final override /*1*/ /*fake_override*/ fun copy(/*0*/ x: kotlin.Int = ..., /*1*/ y: kotlin.String = ..., /*2*/ z: kotlin.Any = ...): A
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public final fun foo(): kotlin.Unit
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
@@ -1,11 +0,0 @@
open data class A(val x: Int, val y: String)
class B : A(42, "OK") {
<!OVERRIDING_FINAL_MEMBER!>override<!> fun component1(): Int = 21
<!OVERRIDING_FINAL_MEMBER!>override<!> fun component2(): <!RETURN_TYPE_MISMATCH_ON_OVERRIDE!>Int<!> = 21
}
fun foo(b: B) {
b.component1()
b.component2()
}
@@ -1,27 +0,0 @@
package
public fun foo(/*0*/ b: B): kotlin.Unit
@kotlin.data() public open class A {
public constructor A(/*0*/ x: kotlin.Int, /*1*/ y: kotlin.String)
public final val x: kotlin.Int
public final val y: kotlin.String
public final /*synthesized*/ fun component1(): kotlin.Int
public final /*synthesized*/ fun component2(): kotlin.String
public final /*synthesized*/ fun copy(/*0*/ x: kotlin.Int = ..., /*1*/ y: kotlin.String = ...): 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
}
public final class B : A {
public constructor B()
public final override /*1*/ /*fake_override*/ val x: kotlin.Int
public final override /*1*/ /*fake_override*/ val y: kotlin.String
public open override /*1*/ fun component1(): kotlin.Int
public open override /*1*/ fun component2(): kotlin.Int
public final override /*1*/ /*fake_override*/ fun copy(/*0*/ x: kotlin.Int = ..., /*1*/ y: kotlin.String = ...): 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
}
@@ -1,3 +0,0 @@
open data class A(val x: Int, val y: String)
<!DATA_CLASS_OVERRIDE_CONFLICT!>data<!> class B(val z: String) : A(42, "")
@@ -1,27 +0,0 @@
package
@kotlin.data() public open class A {
public constructor A(/*0*/ x: kotlin.Int, /*1*/ y: kotlin.String)
public final val x: kotlin.Int
public final val y: kotlin.String
public final /*synthesized*/ fun component1(): kotlin.Int
public final /*synthesized*/ fun component2(): kotlin.String
public final /*synthesized*/ fun copy(/*0*/ x: kotlin.Int = ..., /*1*/ y: kotlin.String = ...): 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
}
@kotlin.data() public final class B : A {
public constructor B(/*0*/ z: kotlin.String)
public final override /*1*/ /*fake_override*/ val x: kotlin.Int
public final override /*1*/ /*fake_override*/ val y: kotlin.String
public final val z: kotlin.String
public final override /*1*/ /*synthesized*/ fun component1(): kotlin.String
public final override /*1*/ /*fake_override*/ fun component2(): kotlin.String
public final override /*1*/ /*fake_override*/ fun copy(/*0*/ x: kotlin.Int = ..., /*1*/ y: kotlin.String = ...): A
public final /*synthesized*/ fun copy(/*0*/ z: kotlin.String = ...): B
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,3 @@
class Outer {
<!DEPRECATED_MODIFIER_PAIR!>inner<!> <!DEPRECATED_MODIFIER_PAIR!>data<!> class Inner(val x: Int)
}
@@ -0,0 +1,18 @@
package
public final class Outer {
public constructor Outer()
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
@kotlin.data() public final inner class Inner {
public constructor Inner(/*0*/ x: kotlin.Int)
public final val x: kotlin.Int
public final /*synthesized*/ fun component1(): kotlin.Int
public final /*synthesized*/ fun copy(/*0*/ x: kotlin.Int = ...): Outer.Inner
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,3 +0,0 @@
open data class D(private final val x: Int)
data class E(internal <!CANNOT_OVERRIDE_INVISIBLE_MEMBER!>override<!> val x: Int) : D(42)
@@ -1,21 +0,0 @@
package
@kotlin.data() public open class D {
public constructor D(/*0*/ x: kotlin.Int)
private final val x: kotlin.Int
private final /*synthesized*/ fun component1(): kotlin.Int
public final /*synthesized*/ fun copy(/*0*/ x: kotlin.Int = ...): D
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
}
@kotlin.data() public final class E : D {
public constructor E(/*0*/ x: kotlin.Int)
internal open val x: kotlin.Int
internal final /*synthesized*/ fun component1(): kotlin.Int
public final override /*1*/ /*synthesized*/ fun copy(/*0*/ x: kotlin.Int = ...): E
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
}