~ubuntu-branches/ubuntu/quantal/vala/quantal

« back to all changes in this revision

Viewing changes to codegen/valaccodebasemodule.c

  • Committer: Bazaar Package Importer
  • Author(s): Didier Roche
  • Date: 2010-09-20 19:57:26 UTC
  • mfrom: (1.5.10 upstream)
  • Revision ID: james.westby@ubuntu.com-20100920195726-cbxb3q400aj1hoqr
Tags: 0.10.0-0ubuntu1
* New upstream release
* debian/patches/90_revert_use_new_gir_version.patch:
  - don't build with new GIR

Show diffs side-by-side

added added

removed removed

Lines of Context:
208
208
        void (*generate_marshaller) (ValaCCodeBaseModule* self, ValaList* params, ValaDataType* return_type, gboolean dbus);
209
209
        char* (*get_marshaller_function) (ValaCCodeBaseModule* self, ValaList* params, ValaDataType* return_type, const char* prefix, gboolean dbus);
210
210
        char* (*get_array_length_cname) (ValaCCodeBaseModule* self, const char* array_cname, gint dim);
 
211
        char* (*get_parameter_array_length_cname) (ValaCCodeBaseModule* self, ValaFormalParameter* param, gint dim);
211
212
        ValaCCodeExpression* (*get_array_length_cexpression) (ValaCCodeBaseModule* self, ValaExpression* array_expr, gint dim);
212
213
        char* (*get_array_size_cname) (ValaCCodeBaseModule* self, const char* array_cname);
213
214
        ValaCCodeExpression* (*get_array_size_cexpression) (ValaCCodeBaseModule* self, ValaExpression* array_expr);
373
374
static void vala_ccode_base_module_capture_parameter (ValaCCodeBaseModule* self, ValaFormalParameter* param, ValaCCodeStruct* data, ValaCCodeBlock* cblock, gint block_id, ValaCCodeBlock* free_block);
374
375
gboolean vala_ccode_base_module_requires_copy (ValaCCodeBaseModule* self, ValaDataType* type);
375
376
ValaCCodeExpression* vala_ccode_base_module_get_ref_cexpression (ValaCCodeBaseModule* self, ValaDataType* expression_type, ValaCCodeExpression* cexpr, ValaExpression* expr, ValaCodeNode* node);
 
377
char* vala_ccode_base_module_get_parameter_array_length_cname (ValaCCodeBaseModule* self, ValaFormalParameter* param, gint dim);
376
378
ValaMethod* vala_ccode_base_module_get_current_method (ValaCCodeBaseModule* self);
377
379
static void vala_ccode_base_module_real_visit_block (ValaCodeVisitor* base, ValaBlock* b);
378
380
void vala_ccode_base_module_emit_context_push_symbol (ValaCCodeBaseModuleEmitContext* self, ValaSymbol* symbol);
524
526
char* vala_ccode_base_module_get_marshaller_function (ValaCCodeBaseModule* self, ValaList* params, ValaDataType* return_type, const char* prefix, gboolean dbus);
525
527
static char* vala_ccode_base_module_real_get_marshaller_function (ValaCCodeBaseModule* self, ValaList* params, ValaDataType* return_type, const char* prefix, gboolean dbus);
526
528
static char* vala_ccode_base_module_real_get_array_length_cname (ValaCCodeBaseModule* self, const char* array_cname, gint dim);
 
529
static char* vala_ccode_base_module_real_get_parameter_array_length_cname (ValaCCodeBaseModule* self, ValaFormalParameter* param, gint dim);
527
530
static ValaCCodeExpression* vala_ccode_base_module_real_get_array_length_cexpression (ValaCCodeBaseModule* self, ValaExpression* array_expr, gint dim);
528
531
static char* vala_ccode_base_module_real_get_array_size_cname (ValaCCodeBaseModule* self, const char* array_cname);
529
532
static ValaCCodeExpression* vala_ccode_base_module_real_get_array_size_cexpression (ValaCCodeBaseModule* self, ValaExpression* array_expr);
3773
3776
        ValaCCodeMemberAccess* _tmp11_;
3774
3777
        ValaCCodeAssignment* _tmp12_;
3775
3778
        ValaCCodeExpressionStatement* _tmp13_;
3776
 
        gboolean _tmp51_ = FALSE;
 
3779
        gboolean _tmp48_ = FALSE;
3777
3780
        g_return_if_fail (self != NULL);
3778
3781
        g_return_if_fail (param != NULL);
3779
3782
        g_return_if_fail (data != NULL);
3838
3841
                                while (TRUE) {
3839
3842
                                        char* _tmp15_;
3840
3843
                                        char* _tmp16_;
3841
 
                                        char* _tmp17_;
3842
 
                                        ValaCCodeExpression* _tmp18_;
3843
 
                                        char* _tmp19_;
 
3844
                                        ValaCCodeExpression* _tmp17_;
 
3845
                                        char* _tmp18_;
 
3846
                                        ValaCCodeMemberAccess* _tmp19_;
3844
3847
                                        char* _tmp20_;
3845
 
                                        ValaCCodeMemberAccess* _tmp21_;
3846
 
                                        char* _tmp22_;
3847
 
                                        char* _tmp23_;
3848
 
                                        ValaCCodeIdentifier* _tmp24_;
3849
 
                                        ValaCCodeAssignment* _tmp25_;
3850
 
                                        ValaCCodeExpressionStatement* _tmp26_;
 
3848
                                        ValaCCodeIdentifier* _tmp21_;
 
3849
                                        ValaCCodeAssignment* _tmp22_;
 
3850
                                        ValaCCodeExpressionStatement* _tmp23_;
3851
3851
                                        if (!_tmp14_) {
3852
3852
                                                dim++;
3853
3853
                                        }
3855
3855
                                        if (!(dim <= vala_array_type_get_rank (array_type))) {
3856
3856
                                                break;
3857
3857
                                        }
3858
 
                                        vala_ccode_struct_add_field (data, "gint", _tmp16_ = vala_ccode_base_module_get_array_length_cname (self, _tmp15_ = vala_ccode_base_module_get_variable_cname (self, vala_symbol_get_name ((ValaSymbol*) param)), dim), NULL);
3859
 
                                        _g_free0 (_tmp16_);
 
3858
                                        vala_ccode_struct_add_field (data, "gint", _tmp15_ = vala_ccode_base_module_get_parameter_array_length_cname (self, param, dim), NULL);
3860
3859
                                        _g_free0 (_tmp15_);
3861
 
                                        vala_ccode_block_add_statement (cblock, (ValaCCodeNode*) (_tmp26_ = vala_ccode_expression_statement_new ((ValaCCodeExpression*) (_tmp25_ = vala_ccode_assignment_new ((ValaCCodeExpression*) (_tmp21_ = vala_ccode_member_access_new_pointer (_tmp18_ = vala_ccode_base_module_get_variable_cexpression (self, _tmp17_ = g_strdup_printf ("_data%d_", block_id)), _tmp20_ = vala_ccode_base_module_get_array_length_cname (self, _tmp19_ = vala_ccode_base_module_get_variable_cname (self, vala_symbol_get_name ((ValaSymbol*) param)), dim))), (ValaCCodeExpression*) (_tmp24_ = vala_ccode_identifier_new (_tmp23_ = vala_ccode_base_module_get_array_length_cname (self, _tmp22_ = vala_ccode_base_module_get_variable_cname (self, vala_symbol_get_name ((ValaSymbol*) param)), dim))), VALA_CCODE_ASSIGNMENT_OPERATOR_SIMPLE)))));
3862
 
                                        _vala_ccode_node_unref0 (_tmp26_);
3863
 
                                        _vala_ccode_node_unref0 (_tmp25_);
3864
 
                                        _vala_ccode_node_unref0 (_tmp24_);
3865
 
                                        _g_free0 (_tmp23_);
3866
 
                                        _g_free0 (_tmp22_);
 
3860
                                        vala_ccode_block_add_statement (cblock, (ValaCCodeNode*) (_tmp23_ = vala_ccode_expression_statement_new ((ValaCCodeExpression*) (_tmp22_ = vala_ccode_assignment_new ((ValaCCodeExpression*) (_tmp19_ = vala_ccode_member_access_new_pointer (_tmp17_ = vala_ccode_base_module_get_variable_cexpression (self, _tmp16_ = g_strdup_printf ("_data%d_", block_id)), _tmp18_ = vala_ccode_base_module_get_parameter_array_length_cname (self, param, dim))), (ValaCCodeExpression*) (_tmp21_ = vala_ccode_identifier_new (_tmp20_ = vala_ccode_base_module_get_parameter_array_length_cname (self, param, dim))), VALA_CCODE_ASSIGNMENT_OPERATOR_SIMPLE)))));
 
3861
                                        _vala_ccode_node_unref0 (_tmp23_);
 
3862
                                        _vala_ccode_node_unref0 (_tmp22_);
3867
3863
                                        _vala_ccode_node_unref0 (_tmp21_);
3868
3864
                                        _g_free0 (_tmp20_);
3869
 
                                        _g_free0 (_tmp19_);
3870
 
                                        _vala_ccode_node_unref0 (_tmp18_);
3871
 
                                        _g_free0 (_tmp17_);
 
3865
                                        _vala_ccode_node_unref0 (_tmp19_);
 
3866
                                        _g_free0 (_tmp18_);
 
3867
                                        _vala_ccode_node_unref0 (_tmp17_);
 
3868
                                        _g_free0 (_tmp16_);
3872
3869
                                }
3873
3870
                        }
3874
3871
                }
3875
3872
                _vala_code_node_unref0 (array_type);
3876
3873
        } else {
3877
3874
                if (VALA_IS_DELEGATE_TYPE (vala_variable_get_variable_type ((ValaVariable*) param))) {
3878
 
                        char* _tmp27_;
 
3875
                        char* _tmp24_;
 
3876
                        char* _tmp25_;
 
3877
                        char* _tmp26_;
 
3878
                        ValaCCodeExpression* _tmp27_;
3879
3879
                        char* _tmp28_;
3880
3880
                        char* _tmp29_;
3881
 
                        ValaCCodeExpression* _tmp30_;
 
3881
                        ValaCCodeMemberAccess* _tmp30_;
3882
3882
                        char* _tmp31_;
3883
3883
                        char* _tmp32_;
3884
 
                        ValaCCodeMemberAccess* _tmp33_;
3885
 
                        char* _tmp34_;
3886
 
                        char* _tmp35_;
3887
 
                        ValaCCodeIdentifier* _tmp36_;
3888
 
                        ValaCCodeAssignment* _tmp37_;
3889
 
                        ValaCCodeExpressionStatement* _tmp38_;
3890
 
                        vala_ccode_struct_add_field (data, "gpointer", _tmp28_ = vala_ccode_base_module_get_delegate_target_cname (self, _tmp27_ = vala_ccode_base_module_get_variable_cname (self, vala_symbol_get_name ((ValaSymbol*) param))), NULL);
 
3884
                        ValaCCodeIdentifier* _tmp33_;
 
3885
                        ValaCCodeAssignment* _tmp34_;
 
3886
                        ValaCCodeExpressionStatement* _tmp35_;
 
3887
                        vala_ccode_struct_add_field (data, "gpointer", _tmp25_ = vala_ccode_base_module_get_delegate_target_cname (self, _tmp24_ = vala_ccode_base_module_get_variable_cname (self, vala_symbol_get_name ((ValaSymbol*) param))), NULL);
 
3888
                        _g_free0 (_tmp25_);
 
3889
                        _g_free0 (_tmp24_);
 
3890
                        vala_ccode_block_add_statement (cblock, (ValaCCodeNode*) (_tmp35_ = vala_ccode_expression_statement_new ((ValaCCodeExpression*) (_tmp34_ = vala_ccode_assignment_new ((ValaCCodeExpression*) (_tmp30_ = vala_ccode_member_access_new_pointer (_tmp27_ = vala_ccode_base_module_get_variable_cexpression (self, _tmp26_ = g_strdup_printf ("_data%d_", block_id)), _tmp29_ = vala_ccode_base_module_get_delegate_target_cname (self, _tmp28_ = vala_ccode_base_module_get_variable_cname (self, vala_symbol_get_name ((ValaSymbol*) param))))), (ValaCCodeExpression*) (_tmp33_ = vala_ccode_identifier_new (_tmp32_ = vala_ccode_base_module_get_delegate_target_cname (self, _tmp31_ = vala_ccode_base_module_get_variable_cname (self, vala_symbol_get_name ((ValaSymbol*) param))))), VALA_CCODE_ASSIGNMENT_OPERATOR_SIMPLE)))));
 
3891
                        _vala_ccode_node_unref0 (_tmp35_);
 
3892
                        _vala_ccode_node_unref0 (_tmp34_);
 
3893
                        _vala_ccode_node_unref0 (_tmp33_);
 
3894
                        _g_free0 (_tmp32_);
 
3895
                        _g_free0 (_tmp31_);
 
3896
                        _vala_ccode_node_unref0 (_tmp30_);
 
3897
                        _g_free0 (_tmp29_);
3891
3898
                        _g_free0 (_tmp28_);
3892
 
                        _g_free0 (_tmp27_);
3893
 
                        vala_ccode_block_add_statement (cblock, (ValaCCodeNode*) (_tmp38_ = vala_ccode_expression_statement_new ((ValaCCodeExpression*) (_tmp37_ = vala_ccode_assignment_new ((ValaCCodeExpression*) (_tmp33_ = vala_ccode_member_access_new_pointer (_tmp30_ = vala_ccode_base_module_get_variable_cexpression (self, _tmp29_ = g_strdup_printf ("_data%d_", block_id)), _tmp32_ = vala_ccode_base_module_get_delegate_target_cname (self, _tmp31_ = vala_ccode_base_module_get_variable_cname (self, vala_symbol_get_name ((ValaSymbol*) param))))), (ValaCCodeExpression*) (_tmp36_ = vala_ccode_identifier_new (_tmp35_ = vala_ccode_base_module_get_delegate_target_cname (self, _tmp34_ = vala_ccode_base_module_get_variable_cname (self, vala_symbol_get_name ((ValaSymbol*) param))))), VALA_CCODE_ASSIGNMENT_OPERATOR_SIMPLE)))));
3894
 
                        _vala_ccode_node_unref0 (_tmp38_);
3895
 
                        _vala_ccode_node_unref0 (_tmp37_);
3896
 
                        _vala_ccode_node_unref0 (_tmp36_);
3897
 
                        _g_free0 (_tmp35_);
3898
 
                        _g_free0 (_tmp34_);
3899
 
                        _vala_ccode_node_unref0 (_tmp33_);
3900
 
                        _g_free0 (_tmp32_);
3901
 
                        _g_free0 (_tmp31_);
3902
 
                        _vala_ccode_node_unref0 (_tmp30_);
3903
 
                        _g_free0 (_tmp29_);
 
3899
                        _vala_ccode_node_unref0 (_tmp27_);
 
3900
                        _g_free0 (_tmp26_);
3904
3901
                        if (vala_data_type_get_value_owned (vala_variable_get_variable_type ((ValaVariable*) param))) {
3905
 
                                char* _tmp39_;
 
3902
                                char* _tmp36_;
 
3903
                                char* _tmp37_;
 
3904
                                char* _tmp38_;
 
3905
                                ValaCCodeExpression* _tmp39_;
3906
3906
                                char* _tmp40_;
3907
3907
                                char* _tmp41_;
3908
 
                                ValaCCodeExpression* _tmp42_;
 
3908
                                ValaCCodeMemberAccess* _tmp42_;
3909
3909
                                char* _tmp43_;
3910
3910
                                char* _tmp44_;
3911
 
                                ValaCCodeMemberAccess* _tmp45_;
3912
 
                                char* _tmp46_;
3913
 
                                char* _tmp47_;
3914
 
                                ValaCCodeIdentifier* _tmp48_;
3915
 
                                ValaCCodeAssignment* _tmp49_;
3916
 
                                ValaCCodeExpressionStatement* _tmp50_;
3917
 
                                vala_ccode_struct_add_field (data, "GDestroyNotify", _tmp40_ = vala_ccode_base_module_get_delegate_target_destroy_notify_cname (self, _tmp39_ = vala_ccode_base_module_get_variable_cname (self, vala_symbol_get_name ((ValaSymbol*) param))), NULL);
 
3911
                                ValaCCodeIdentifier* _tmp45_;
 
3912
                                ValaCCodeAssignment* _tmp46_;
 
3913
                                ValaCCodeExpressionStatement* _tmp47_;
 
3914
                                vala_ccode_struct_add_field (data, "GDestroyNotify", _tmp37_ = vala_ccode_base_module_get_delegate_target_destroy_notify_cname (self, _tmp36_ = vala_ccode_base_module_get_variable_cname (self, vala_symbol_get_name ((ValaSymbol*) param))), NULL);
 
3915
                                _g_free0 (_tmp37_);
 
3916
                                _g_free0 (_tmp36_);
 
3917
                                vala_ccode_block_add_statement (cblock, (ValaCCodeNode*) (_tmp47_ = vala_ccode_expression_statement_new ((ValaCCodeExpression*) (_tmp46_ = vala_ccode_assignment_new ((ValaCCodeExpression*) (_tmp42_ = vala_ccode_member_access_new_pointer (_tmp39_ = vala_ccode_base_module_get_variable_cexpression (self, _tmp38_ = g_strdup_printf ("_data%d_", block_id)), _tmp41_ = vala_ccode_base_module_get_delegate_target_destroy_notify_cname (self, _tmp40_ = vala_ccode_base_module_get_variable_cname (self, vala_symbol_get_name ((ValaSymbol*) param))))), (ValaCCodeExpression*) (_tmp45_ = vala_ccode_identifier_new (_tmp44_ = vala_ccode_base_module_get_delegate_target_destroy_notify_cname (self, _tmp43_ = vala_ccode_base_module_get_variable_cname (self, vala_symbol_get_name ((ValaSymbol*) param))))), VALA_CCODE_ASSIGNMENT_OPERATOR_SIMPLE)))));
 
3918
                                _vala_ccode_node_unref0 (_tmp47_);
 
3919
                                _vala_ccode_node_unref0 (_tmp46_);
 
3920
                                _vala_ccode_node_unref0 (_tmp45_);
 
3921
                                _g_free0 (_tmp44_);
 
3922
                                _g_free0 (_tmp43_);
 
3923
                                _vala_ccode_node_unref0 (_tmp42_);
 
3924
                                _g_free0 (_tmp41_);
3918
3925
                                _g_free0 (_tmp40_);
3919
 
                                _g_free0 (_tmp39_);
3920
 
                                vala_ccode_block_add_statement (cblock, (ValaCCodeNode*) (_tmp50_ = vala_ccode_expression_statement_new ((ValaCCodeExpression*) (_tmp49_ = vala_ccode_assignment_new ((ValaCCodeExpression*) (_tmp45_ = vala_ccode_member_access_new_pointer (_tmp42_ = vala_ccode_base_module_get_variable_cexpression (self, _tmp41_ = g_strdup_printf ("_data%d_", block_id)), _tmp44_ = vala_ccode_base_module_get_delegate_target_destroy_notify_cname (self, _tmp43_ = vala_ccode_base_module_get_variable_cname (self, vala_symbol_get_name ((ValaSymbol*) param))))), (ValaCCodeExpression*) (_tmp48_ = vala_ccode_identifier_new (_tmp47_ = vala_ccode_base_module_get_delegate_target_destroy_notify_cname (self, _tmp46_ = vala_ccode_base_module_get_variable_cname (self, vala_symbol_get_name ((ValaSymbol*) param))))), VALA_CCODE_ASSIGNMENT_OPERATOR_SIMPLE)))));
3921
 
                                _vala_ccode_node_unref0 (_tmp50_);
3922
 
                                _vala_ccode_node_unref0 (_tmp49_);
3923
 
                                _vala_ccode_node_unref0 (_tmp48_);
3924
 
                                _g_free0 (_tmp47_);
3925
 
                                _g_free0 (_tmp46_);
3926
 
                                _vala_ccode_node_unref0 (_tmp45_);
3927
 
                                _g_free0 (_tmp44_);
3928
 
                                _g_free0 (_tmp43_);
3929
 
                                _vala_ccode_node_unref0 (_tmp42_);
3930
 
                                _g_free0 (_tmp41_);
 
3926
                                _vala_ccode_node_unref0 (_tmp39_);
 
3927
                                _g_free0 (_tmp38_);
3931
3928
                        }
3932
3929
                }
3933
3930
        }
3934
3931
        if (vala_ccode_base_module_requires_destroy (self, param_type)) {
3935
 
                _tmp51_ = !is_unowned_delegate;
 
3932
                _tmp48_ = !is_unowned_delegate;
3936
3933
        } else {
3937
 
                _tmp51_ = FALSE;
 
3934
                _tmp48_ = FALSE;
3938
3935
        }
3939
 
        if (_tmp51_) {
 
3936
        if (_tmp48_) {
3940
3937
                gboolean old_coroutine;
3941
3938
                ValaMemberAccess* ma;
3942
 
                ValaDataType* _tmp52_;
3943
 
                char* _tmp53_;
3944
 
                ValaCCodeIdentifier* _tmp54_;
3945
 
                char* _tmp55_;
3946
 
                ValaCCodeMemberAccess* _tmp56_;
3947
 
                ValaCCodeExpression* _tmp57_;
3948
 
                ValaCCodeExpressionStatement* _tmp58_;
 
3939
                ValaDataType* _tmp49_;
 
3940
                char* _tmp50_;
 
3941
                ValaCCodeIdentifier* _tmp51_;
 
3942
                char* _tmp52_;
 
3943
                ValaCCodeMemberAccess* _tmp53_;
 
3944
                ValaCCodeExpression* _tmp54_;
 
3945
                ValaCCodeExpressionStatement* _tmp55_;
3949
3946
                old_coroutine = FALSE;
3950
3947
                if (vala_ccode_base_module_get_current_method (self) != NULL) {
3951
3948
                        old_coroutine = vala_method_get_coroutine (vala_ccode_base_module_get_current_method (self));
3953
3950
                }
3954
3951
                ma = vala_member_access_new_simple (vala_symbol_get_name ((ValaSymbol*) param), NULL);
3955
3952
                vala_expression_set_symbol_reference ((ValaExpression*) ma, (ValaSymbol*) param);
3956
 
                vala_expression_set_value_type ((ValaExpression*) ma, _tmp52_ = vala_data_type_copy (param_type));
3957
 
                _vala_code_node_unref0 (_tmp52_);
3958
 
                vala_ccode_block_add_statement (free_block, (ValaCCodeNode*) (_tmp58_ = vala_ccode_expression_statement_new (_tmp57_ = vala_ccode_base_module_get_unref_expression (self, (ValaCCodeExpression*) (_tmp56_ = vala_ccode_member_access_new_pointer ((ValaCCodeExpression*) (_tmp54_ = vala_ccode_identifier_new (_tmp53_ = g_strdup_printf ("_data%d_", block_id))), _tmp55_ = vala_ccode_base_module_get_variable_cname (self, vala_symbol_get_name ((ValaSymbol*) param)))), vala_variable_get_variable_type ((ValaVariable*) param), (ValaExpression*) ma, FALSE))));
3959
 
                _vala_ccode_node_unref0 (_tmp58_);
3960
 
                _vala_ccode_node_unref0 (_tmp57_);
3961
 
                _vala_ccode_node_unref0 (_tmp56_);
3962
 
                _g_free0 (_tmp55_);
 
3953
                vala_expression_set_value_type ((ValaExpression*) ma, _tmp49_ = vala_data_type_copy (param_type));
 
3954
                _vala_code_node_unref0 (_tmp49_);
 
3955
                vala_ccode_block_add_statement (free_block, (ValaCCodeNode*) (_tmp55_ = vala_ccode_expression_statement_new (_tmp54_ = vala_ccode_base_module_get_unref_expression (self, (ValaCCodeExpression*) (_tmp53_ = vala_ccode_member_access_new_pointer ((ValaCCodeExpression*) (_tmp51_ = vala_ccode_identifier_new (_tmp50_ = g_strdup_printf ("_data%d_", block_id))), _tmp52_ = vala_ccode_base_module_get_variable_cname (self, vala_symbol_get_name ((ValaSymbol*) param)))), vala_variable_get_variable_type ((ValaVariable*) param), (ValaExpression*) ma, FALSE))));
 
3956
                _vala_ccode_node_unref0 (_tmp55_);
3963
3957
                _vala_ccode_node_unref0 (_tmp54_);
3964
 
                _g_free0 (_tmp53_);
 
3958
                _vala_ccode_node_unref0 (_tmp53_);
 
3959
                _g_free0 (_tmp52_);
 
3960
                _vala_ccode_node_unref0 (_tmp51_);
 
3961
                _g_free0 (_tmp50_);
3965
3962
                if (old_coroutine) {
3966
3963
                        vala_method_set_coroutine (vala_ccode_base_module_get_current_method (self), TRUE);
3967
3964
                }
12535
12532
                ValaCCodeExpression* _tmp84_;
12536
12533
                decl = vala_ccode_base_module_get_temp_variable (self, target_type, TRUE, (ValaCodeNode*) target_type, TRUE);
12537
12534
                vala_collection_add ((ValaCollection*) vala_ccode_base_module_get_temp_vars (self), decl);
 
12535
                if (!vala_data_type_get_value_owned (target_type)) {
 
12536
                        vala_list_insert ((ValaList*) vala_ccode_base_module_get_temp_ref_vars (self), 0, decl);
 
12537
                }
12538
12538
                ccomma = vala_ccode_comma_expression_new ();
12539
12539
                if (vala_data_type_get_nullable (target_type)) {
12540
12540
                        ValaCCodeIdentifier* _tmp62_;
14212
14212
}
14213
14213
 
14214
14214
 
 
14215
static char* vala_ccode_base_module_real_get_parameter_array_length_cname (ValaCCodeBaseModule* self, ValaFormalParameter* param, gint dim) {
 
14216
        char* result = NULL;
 
14217
        g_return_val_if_fail (self != NULL, NULL);
 
14218
        g_return_val_if_fail (param != NULL, NULL);
 
14219
        result = g_strdup ("");
 
14220
        return result;
 
14221
}
 
14222
 
 
14223
 
 
14224
char* vala_ccode_base_module_get_parameter_array_length_cname (ValaCCodeBaseModule* self, ValaFormalParameter* param, gint dim) {
 
14225
        return VALA_CCODE_BASE_MODULE_GET_CLASS (self)->get_parameter_array_length_cname (self, param, dim);
 
14226
}
 
14227
 
 
14228
 
14215
14229
static ValaCCodeExpression* vala_ccode_base_module_real_get_array_length_cexpression (ValaCCodeBaseModule* self, ValaExpression* array_expr, gint dim) {
14216
14230
        ValaCCodeExpression* result = NULL;
14217
14231
        g_return_val_if_fail (self != NULL, NULL);
14784
14798
        VALA_CCODE_BASE_MODULE_CLASS (klass)->generate_marshaller = vala_ccode_base_module_real_generate_marshaller;
14785
14799
        VALA_CCODE_BASE_MODULE_CLASS (klass)->get_marshaller_function = vala_ccode_base_module_real_get_marshaller_function;
14786
14800
        VALA_CCODE_BASE_MODULE_CLASS (klass)->get_array_length_cname = vala_ccode_base_module_real_get_array_length_cname;
 
14801
        VALA_CCODE_BASE_MODULE_CLASS (klass)->get_parameter_array_length_cname = vala_ccode_base_module_real_get_parameter_array_length_cname;
14787
14802
        VALA_CCODE_BASE_MODULE_CLASS (klass)->get_array_length_cexpression = vala_ccode_base_module_real_get_array_length_cexpression;
14788
14803
        VALA_CCODE_BASE_MODULE_CLASS (klass)->get_array_size_cname = vala_ccode_base_module_real_get_array_size_cname;
14789
14804
        VALA_CCODE_BASE_MODULE_CLASS (klass)->get_array_size_cexpression = vala_ccode_base_module_real_get_array_size_cexpression;