0b5ec5535c
This filters it out for use in SAM wrapper generation with invoke-dynamic. The intrinsic is not actually used for code generation so it is added to the list of intrinsics that should have been lowered away before codegen. ^KT-45779 Fixed
27 lines
517 B
Kotlin
Vendored
27 lines
517 B
Kotlin
Vendored
// TARGET_BACKEND: JVM
|
|
// JVM_TARGET: 1.8
|
|
// SAM_CONVERSIONS: INDY
|
|
// WITH_RUNTIME
|
|
|
|
// CHECK_BYTECODE_TEXT
|
|
// JVM_IR_TEMPLATES
|
|
// 0 java/lang/invoke/LambdaMetafactory
|
|
|
|
// FILE: BiFunction.java
|
|
|
|
public interface BiFunction<T1, T2, R> {
|
|
R apply(T1 t1, T2 t2);
|
|
}
|
|
|
|
// FILE: Operators.java
|
|
|
|
public class Operators {
|
|
public static <T1, T2, R> R combine(T1 a, T2 b, BiFunction<T1, T2, R> combiner) {
|
|
return combiner.apply(a, b);
|
|
}
|
|
}
|
|
|
|
// FILE: main.kt
|
|
|
|
fun box() = Operators.combine("O", "K", String::plus)
|