JVM_IR: Fix default argument bit mask for methods made static.

When called by reflection the bit mask will be generated
discounting dispatch/extension receivers. Make sure that the
interpretation of the bit mask is consistent for direct and
reflective calls.

In addition, this also fixes the modifiers on java 8 parameter
metadata for the dispatch and extension receivers for these
inline class methods.
This commit is contained in:
Mads Ager
2020-01-03 11:28:43 +01:00
committed by max-kammerer
parent 137c500e3a
commit 1ed7e33f42
12 changed files with 126 additions and 10 deletions
@@ -18571,6 +18571,16 @@ public class BlackBoxCodegenTestGenerated extends AbstractBlackBoxCodegenTest {
runTest("compiler/testData/codegen/box/parametersMetadata/function.kt");
}
@TestMetadata("inlineClassMethodParameterModifiers.kt")
public void testInlineClassMethodParameterModifiers() throws Exception {
runTest("compiler/testData/codegen/box/parametersMetadata/inlineClassMethodParameterModifiers.kt");
}
@TestMetadata("inlineClassMethodParameterNames.kt")
public void testInlineClassMethodParameterNames() throws Exception {
runTest("compiler/testData/codegen/box/parametersMetadata/inlineClassMethodParameterNames.kt");
}
@TestMetadata("innerClass.kt")
public void testInnerClass() throws Exception {
runTest("compiler/testData/codegen/box/parametersMetadata/innerClass.kt");