[FIR] Make lambda parameters of dynamic function calls dynamic

#KT-57961 Fixed
This commit is contained in:
Kirill Rakhman
2023-04-14 17:05:15 +02:00
committed by Space Team
parent a3bf61c3f7
commit ff7072830f
9 changed files with 42 additions and 5 deletions
@@ -0,0 +1,7 @@
// TARGET_BACKEND: JS
fun box(): String {
val foo = js("{ bar: function(x, y) { return y(x) } }")
val bar = js("{ baz: 'OK' }")
return foo.bar(bar) { x -> x.baz }
}
@@ -1,6 +1,7 @@
public final fun foo(/*0*/ p0: () -> dynamic): dynamic
public final fun foo(/*0*/ p0: () -> dynamic): dynamic
public final fun foo(/*0*/ p0: (dynamic) -> dynamic): dynamic
public final fun bar(): dynamic
public final fun foo(/*0*/ p0: (dynamic) -> dynamic): dynamic
public final fun foo(/*0*/ p0: (dynamic, dynamic) -> dynamic): dynamic
public final fun foo(/*0*/ p0: (dynamic, dynamic) -> dynamic): dynamic
@@ -6,7 +6,7 @@ fun test(d: dynamic) {
d.foo { <!UNRESOLVED_REFERENCE!>it<!> }
d.foo { x -> }
d.foo { x -> x.bar() }
d.foo { x: Int -> "" }
@@ -6,7 +6,7 @@ fun test(d: dynamic) {
d.foo { <!UNRESOLVED_REFERENCE!>it<!> }
d.foo { x -> }
d.foo { x -> x.bar() }
d.foo { x: Int -> "" }