var rhs_array_len = head.get_array_length_cexpression (init.initializer, dim);
ccomma.append_expression (new CCodeAssignment (lhs, rhs_array_len));
}
+ } else if (f.field_type is DelegateType) {
+ if (expr.type_reference.data_type is Struct) {
+ lhs = new CCodeMemberAccess (typed_inst, get_delegate_target_cname (f.get_cname ()));
+ } else {
+ lhs = new CCodeMemberAccess.pointer (typed_inst, get_delegate_target_cname (f.get_cname ()));
+ }
+ var rhs_delegate_target = get_delegate_target_cexpression (init.initializer);
+ ccomma.append_expression (new CCodeAssignment (lhs, rhs_delegate_target));
}
} else if (init.symbol_reference is Property) {
var inst_ma = new MemberAccess.simple ("new");