Report an error on dynamic types used as supertypes or upper bounds

This commit is contained in:
Andrey Breslav
2014-11-21 16:48:21 +03:00
parent 65164e95b5
commit ea36024893
7 changed files with 48 additions and 5 deletions
@@ -0,0 +1,8 @@
// MODULE[js]: m1
// FILE: k.kt
trait Tr : <!DYNAMIC_SUPERTYPE!>dynamic<!>
fun <T: <!DYNAMIC_UPPER_BOUND!>dynamic<!>> foo() {}
class C<T> where T : <!DYNAMIC_UPPER_BOUND!>dynamic<!>
@@ -0,0 +1,16 @@
package
internal fun </*0*/ T : dynamic> foo(): kotlin.Unit
internal final class C</*0*/ T : dynamic> {
public constructor C</*0*/ T : dynamic>()
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
}
internal trait Tr {
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
}