JVM_IR KT-46839 lower varargs for *arrayOf function references
This commit is contained in:
committed by
teamcityserver
parent
6ca7b39f6a
commit
ba00709e4d
+16
@@ -0,0 +1,16 @@
|
||||
// TARGET_BACKEND: JVM
|
||||
// JVM_TARGET: 1.8
|
||||
// SAM_CONVERSIONS: INDY
|
||||
|
||||
// CHECK_BYTECODE_TEXT
|
||||
// JVM_IR_TEMPLATES
|
||||
// 0 java/lang/invoke/LambdaMetafactory
|
||||
|
||||
// FILE: arrayOf.kt
|
||||
fun box() =
|
||||
Sam(::arrayOf).get(arrayOf("OK"))[0]
|
||||
|
||||
// FILE: Sam.java
|
||||
public interface Sam {
|
||||
String[] get(String[] s);
|
||||
}
|
||||
+19
@@ -0,0 +1,19 @@
|
||||
// TARGET_BACKEND: JVM
|
||||
// JVM_TARGET: 1.8
|
||||
// SAM_CONVERSIONS: INDY
|
||||
|
||||
// CHECK_BYTECODE_TEXT
|
||||
// JVM_IR_TEMPLATES
|
||||
// 0 java/lang/invoke/LambdaMetafactory
|
||||
|
||||
// FILE: charArrayOf.kt
|
||||
fun box(): String {
|
||||
val sam = Sam(::charArrayOf)
|
||||
val arr = sam.get(charArrayOf('O', 'K'))
|
||||
return "${arr[0]}${arr[1]}"
|
||||
}
|
||||
|
||||
// FILE: Sam.java
|
||||
public interface Sam {
|
||||
char[] get(char[] s);
|
||||
}
|
||||
Reference in New Issue
Block a user