JS: fix translation of delegated constructor call from secondary constructor when argument is a complex expression which translates to multiple statements. See KT-15357

This commit is contained in:
Alexey Andreev
2016-12-21 18:24:31 +03:00
parent 1ab78dffe5
commit 1ecd957981
9 changed files with 162 additions and 2 deletions
@@ -3245,6 +3245,12 @@ public class LightAnalysisModeCodegenTestGenerated extends AbstractLightAnalysis
doTest(fileName);
}
@TestMetadata("superConstructorCallWithComplexArg.kt")
public void testSuperConstructorCallWithComplexArg() throws Exception {
String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/classes/superConstructorCallWithComplexArg.kt");
doTest(fileName);
}
@TestMetadata("typedDelegation.kt")
public void testTypedDelegation() throws Exception {
String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/classes/typedDelegation.kt");
@@ -15464,6 +15470,12 @@ public class LightAnalysisModeCodegenTestGenerated extends AbstractLightAnalysis
doTest(fileName);
}
@TestMetadata("delegateWithComplexExpression.kt")
public void testDelegateWithComplexExpression() throws Exception {
String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/secondaryConstructors/delegateWithComplexExpression.kt");
doTest(fileName);
}
@TestMetadata("delegatedThisWithLambda.kt")
public void testDelegatedThisWithLambda() throws Exception {
String fileName = KotlinTestUtils.navigationMetadata("compiler/testData/codegen/box/secondaryConstructors/delegatedThisWithLambda.kt");