removing static type assertions work in progress

This commit is contained in:
Dmitry Jemerov
2015-10-07 12:19:37 +02:00
parent 8f87efc0a2
commit 1523d5bcbf
149 changed files with 514 additions and 867 deletions
@@ -11,10 +11,12 @@ class Z : B() {
fun box(): String {
val z = Z()
val b: B = z
val a: A<String> = z
return when {
z.foo("") != "Z" -> "Fail #1"
(z : B).foo("") != "Z" -> "Fail #2"
(z : A<String>).foo("") != "Z" -> "Fail #3"
z.foo("") != "Z" -> "Fail #1"
b.foo("") != "Z" -> "Fail #2"
a.foo("") != "Z" -> "Fail #3"
else -> "OK"
}
}
@@ -10,10 +10,12 @@ class Z : B() {
fun box(): String {
val z = Z()
val b: B = z
val a: A<Int, Number> = z
return when {
z.foo(0, 0) != "Z" -> "Fail #1"
(z : B).foo(0, 0) != "Z" -> "Fail #2"
(z : A<Int, Number>).foo(0, 0) != "Z" -> "Fail #3"
z.foo(0, 0) != "Z" -> "Fail #1"
b.foo(0, 0) != "Z" -> "Fail #2"
a.foo(0, 0) != "Z" -> "Fail #3"
else -> "OK"
}
}
@@ -13,5 +13,6 @@ class D : A<String> by C()
fun box(): String {
val d = D()
if (d.id("") != "") return "Fail"
return (d : A<String>).id("OK")
val a: A<String> = d
return a.id("OK")
}
@@ -12,13 +12,17 @@ enum class Z(val name: String) : B {
fun box(): String {
val z1b: B = Z.Z1
val z2b: B = Z.Z2
val z1a: A<String> = Z.Z1
val z2a: A<String> = Z.Z2
return when {
Z.Z1.foo("") != "Z1" -> "Fail #1"
Z.Z2.foo("") != "Z2" -> "Fail #2"
(Z.Z1 : B).foo("") != "Z1" -> "Fail #3"
(Z.Z2 : B).foo("") != "Z2" -> "Fail #4"
(Z.Z1 : A<String>).foo("") != "Z1" -> "Fail #5"
(Z.Z2 : A<String>).foo("") != "Z2" -> "Fail #6"
Z.Z1.foo("") != "Z1" -> "Fail #1"
Z.Z2.foo("") != "Z2" -> "Fail #2"
z1b.foo("") != "Z1" -> "Fail #3"
z2b.foo("") != "Z2" -> "Fail #4"
z1a.foo("") != "Z1" -> "Fail #5"
z2a.foo("") != "Z2" -> "Fail #6"
else -> "OK"
}
}
@@ -11,10 +11,12 @@ class Z : B() {
fun box(): String {
val z = Z()
val b: B = z
val a: A<String> = z
return when {
z.foo("", 0) != "Z" -> "Fail #1"
(z : B).foo("", 0) != "Z" -> "Fail #2"
(z : A<String>).foo("", 0) != "Z" -> "Fail #3"
z.foo("", 0) != "Z" -> "Fail #1"
b.foo("", 0) != "Z" -> "Fail #2"
a.foo("", 0) != "Z" -> "Fail #3"
else -> "OK"
}
}
@@ -13,13 +13,18 @@ fun box(): String {
val o = object : B() {
override fun foo(t: String) = "o"
}
val zb: B = Z
val ob: B = o
val za: A<String> = Z
val oa: A<String> = o
return when {
Z.foo("") != "Z" -> "Fail #1"
o.foo("") != "o" -> "Fail #2"
(Z : B).foo("") != "Z" -> "Fail #3"
(o : B).foo("") != "o" -> "Fail #4"
(Z : A<String>).foo("") != "Z" -> "Fail #5"
(o : A<String>).foo("") != "o" -> "Fail #6"
Z.foo("") != "Z" -> "Fail #1"
o.foo("") != "o" -> "Fail #2"
zb.foo("") != "Z" -> "Fail #3"
ob.foo("") != "o" -> "Fail #4"
za.foo("") != "Z" -> "Fail #5"
oa.foo("") != "o" -> "Fail #6"
else -> "OK"
}
}
@@ -9,4 +9,7 @@ class Z : B() {
}
fun box() = (Z() : A<String>).foo
fun box(): String {
val a: A<String> = Z()
return a.foo
}
@@ -11,10 +11,12 @@ class Z : B() {
fun box(): String {
val z = Z()
val b: B = z
val a: A<String> = z
return when {
z.foo("") != "Z" -> "Fail #1"
(z : B).foo("") != "Z" -> "Fail #2"
(z : A<String>).foo("") != "Z" -> "Fail #3"
z.foo("") != "Z" -> "Fail #1"
b.foo("") != "Z" -> "Fail #2"
a.foo("") != "Z" -> "Fail #3"
else -> "OK"
}
}
@@ -11,10 +11,12 @@ class Z : B() {
fun box(): String {
val z = Z()
val b: B = z
val a: A<Int> = z
return when {
z.foo(0) != "Z" -> "Fail #1"
(z : B).foo(0) != "Z" -> "Fail #2"
(z : A<Int>).foo(0) != "Z" -> "Fail #3"
z.foo(0) != "Z" -> "Fail #1"
b.foo(0) != "Z" -> "Fail #2"
a.foo(0) != "Z" -> "Fail #3"
else -> "OK"
}
}