JVM_IR: Fix Inline CallableReferences with Varargs
- Added tests to demonstrate broken behaviour: the interaction of inline functions and callable references with varargs and defaults in various combinations. - Refactored InlineCallableReferencesToLambdaPhase to look like and use some of the infrastructure from CallableReferenceLowering. - Lifted some of this infrastructure out to be broadly reusable.
This commit is contained in:
committed by
Mikhael Bogdanov
parent
5360a7a3fe
commit
1074a0ef69
Vendored
+9
@@ -0,0 +1,9 @@
|
||||
// !LANGUAGE: +NewInference +FunctionReferenceWithDefaultValueAsOtherType
|
||||
// IGNORE_BACKEND: JS, JS_IR
|
||||
|
||||
fun foo(vararg l: Long, s: String = "OK"): String =
|
||||
if (l.size == 0) s else "Fail"
|
||||
|
||||
inline fun bar(f: () -> String): String = f()
|
||||
|
||||
fun box(): String = bar(::foo)
|
||||
Reference in New Issue
Block a user