6734f542b3
In case there are several proxy functions for indy lambdas in the same container, its names are "...__proxy", "...__proxy-0", "...__proxy-1", ..., yet before this change, only the first one was sanitized. So if it's happening inside a constructor, `<init>` was left unrenamed which led to ClassFormatError. #KT-52040 Fixed
30 lines
484 B
Kotlin
Vendored
30 lines
484 B
Kotlin
Vendored
// TARGET_BACKEND: JVM
|
|
// FULL_JDK
|
|
// JVM_TARGET: 1.8
|
|
// FILE: J.java
|
|
|
|
import java.util.function.*;
|
|
|
|
public class J {
|
|
public static String f1(Supplier<Object> r) {
|
|
r.get();
|
|
return "O";
|
|
}
|
|
|
|
public static String f2(Supplier<Object> r) {
|
|
r.get();
|
|
return "K";
|
|
}
|
|
}
|
|
|
|
// FILE: test.kt
|
|
|
|
class C private constructor() {
|
|
companion object {
|
|
fun x1() = J.f1(::C)
|
|
fun x2() = J.f2(::C)
|
|
}
|
|
}
|
|
|
|
fun box(): String = C.x1() + C.x2()
|