Fix NoSuchMethodError on private components of data classes

A follow-up to
https://github.com/JetBrains/kotlin/commit/d5681540ec47ee5c9a548ba56df8b4e20097549d
This commit is contained in:
Alexander Udalov
2014-07-26 01:31:11 +04:00
parent c69303fd1d
commit c24c799819
2 changed files with 7 additions and 4 deletions
@@ -833,9 +833,9 @@ public class ImplementationBodyCodegen extends ClassBodyCodegen {
Type componentType = signature.getReturnType();
InstructionAdapter iv = new InstructionAdapter(mv);
if (!componentType.equals(Type.VOID_TYPE)) {
iv.load(0, classAsmType);
String desc = "()" + componentType.getDescriptor();
iv.invokevirtual(classAsmType.getInternalName(), PropertyCodegen.getterName(parameter.getName()), desc, false);
PropertyDescriptor property =
bindingContext.get(BindingContext.PRIMARY_CONSTRUCTOR_PARAMETER, descriptorToDeclaration(parameter));
genPropertyOnStack(iv, context, property, 0);
}
iv.areturn(componentType);
}