[FE JS] Support until operator in WRONG_OPERATION_WITH_DYNAMIC error

This commit is contained in:
Victor Petukhov
2022-05-23 14:58:14 +02:00
committed by teamcity
parent 0b25ce4de9
commit 2378979a99
6 changed files with 39 additions and 3 deletions
@@ -4,7 +4,7 @@ fun foo() {
val a: dynamic = Any()
val b: dynamic = Any()
val c = C()
println(a<!WRONG_OPERATION_WITH_DYNAMIC!>..<!>b)
println(a<!WRONG_OPERATION_WITH_DYNAMIC("`..` operation")!>..<!>b)
println(c..a)
println(a.rangeTo(b))
}
@@ -0,0 +1,2 @@
public final operator fun rangeUntil(/*0*/ p0: dynamic): dynamic
public final fun rangeUntil(/*0*/ p0: dynamic): dynamic
@@ -0,0 +1,15 @@
// !DIAGNOSTICS: -UNUSED_PARAMETER
// !LANGUAGE: +RangeUntilOperator
fun foo() {
val a: dynamic = Any()
val b: dynamic = Any()
val c = C()
println(a<!WRONG_OPERATION_WITH_DYNAMIC("`..<` operation")!>..<<!>b)
println(c..<a)
println(a.rangeUntil(b))
}
class C {
operator fun rangeUntil(other: dynamic): ClosedRange<dynamic> = TODO("not implemented")
}
@@ -0,0 +1,11 @@
package
public fun foo(): kotlin.Unit
public final class C {
public constructor C()
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 final operator fun rangeUntil(/*0*/ other: dynamic): kotlin.ranges.ClosedRange<dynamic>
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}