JVM_IR KT-43877 fix generic signatures for SAM-converted lambdas

This commit is contained in:
Dmitry Petrov
2020-12-11 15:41:02 +03:00
parent dc11c2de77
commit b7330a9e14
56 changed files with 1014 additions and 59 deletions
@@ -0,0 +1,22 @@
// WITH_SIGNATURES
// FILE: t.kt
fun <T> genericSam(f: () -> T): Sam<T> = J.sam({ f() })
fun <T> genericSamGet(f: () -> T): T = J.get({ f() })
// FILE: J.java
public class J {
static <T> T get(Sam<T> s) {
return s.get();
}
static <T> Sam<T> sam(Sam<T> s) {
return s;
}
}
// FILE: Sam.java
public interface Sam<T> {
T get();
}