KT-3308: Support local generic functions in codegen

#KT-3308 Fixed
This commit is contained in:
Mikhael Bogdanov
2013-09-24 12:47:59 +04:00
parent 46fec74797
commit 7520ff1420
5 changed files with 50 additions and 3 deletions
@@ -1624,6 +1624,9 @@ public class ExpressionCodegen extends JetVisitor<StackValue, StackValue> implem
// descriptor = ((VariableAsFunctionDescriptor) descriptor).getVariableDescriptor();
//}
assert descriptor != null : "Couldn't find descriptor for '" + expression.getText() + "'";
descriptor = descriptor.getOriginal();
if (descriptor instanceof CallableMemberDescriptor) {
CallableMemberDescriptor memberDescriptor = (CallableMemberDescriptor) descriptor;
memberDescriptor = unwrapFakeOverride(memberDescriptor);
@@ -1635,9 +1638,6 @@ public class ExpressionCodegen extends JetVisitor<StackValue, StackValue> implem
}
}
assert descriptor != null;
if (descriptor instanceof VariableDescriptorForObject) {
VariableDescriptorForObject variableDescriptor = (VariableDescriptorForObject) descriptor;
ClassDescriptor objectClassDescriptor = variableDescriptor.getObjectClass();