JVM IR: sanitize indy lambda proxy names correctly
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
This commit is contained in:
+5
@@ -21506,6 +21506,11 @@ public class LightAnalysisModeTestGenerated extends AbstractLightAnalysisModeTes
|
||||
runTest("compiler/testData/codegen/box/invokedynamic/sam/kt47510.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("kt52040_severalProxyFunsInInit.kt")
|
||||
public void testKt52040_severalProxyFunsInInit() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/invokedynamic/sam/kt52040_severalProxyFunsInInit.kt");
|
||||
}
|
||||
|
||||
@TestMetadata("nullabilityAssertions.kt")
|
||||
public void testNullabilityAssertions() throws Exception {
|
||||
runTest("compiler/testData/codegen/box/invokedynamic/sam/nullabilityAssertions.kt");
|
||||
|
||||
Reference in New Issue
Block a user