2110
2118
if (self->priv->_qualified) {
2111
2119
ValaSemanticAnalyzer* _tmp7_ = NULL;
2112
2120
ValaSymbol* _tmp8_;
2114
ValaSemanticAnalyzer* _tmp10_ = NULL;
2115
ValaScope* _tmp11_ = NULL;
2116
ValaSymbol* _tmp12_ = NULL;
2117
ValaSymbol* _tmp13_;
2121
ValaSemanticAnalyzer* _tmp9_ = NULL;
2122
ValaScope* _tmp10_ = NULL;
2123
ValaSymbol* _tmp11_ = NULL;
2124
ValaSymbol* _tmp12_;
2118
2125
_tmp7_ = vala_code_context_get_analyzer (context);
2119
2126
_tmp8_ = _vala_code_node_ref0 (_tmp7_->root_symbol);
2121
2127
_vala_code_node_unref0 (base_symbol);
2122
base_symbol = _tmp9_;
2123
_tmp10_ = vala_code_context_get_analyzer (context);
2124
_tmp11_ = vala_symbol_get_scope (_tmp10_->root_symbol);
2125
_tmp12_ = vala_scope_lookup (_tmp11_, self->priv->_member_name);
2127
vala_expression_set_symbol_reference ((ValaExpression*) self, _tmp13_);
2128
_vala_code_node_unref0 (_tmp13_);
2128
base_symbol = _tmp8_;
2129
_tmp9_ = vala_code_context_get_analyzer (context);
2130
_tmp10_ = vala_symbol_get_scope (_tmp9_->root_symbol);
2131
_tmp11_ = vala_scope_lookup (_tmp10_, self->priv->_member_name);
2133
vala_expression_set_symbol_reference ((ValaExpression*) self, _tmp12_);
2134
_vala_code_node_unref0 (_tmp12_);
2130
ValaExpression* _tmp14_ = NULL;
2131
_tmp14_ = vala_member_access_get_inner (self);
2132
if (_tmp14_ == NULL) {
2133
ValaSemanticAnalyzer* _tmp18_ = NULL;
2134
ValaSymbol* _tmp19_ = NULL;
2135
ValaSymbol* _tmp20_;
2136
ValaSymbol* _tmp21_;
2136
ValaExpression* _tmp13_ = NULL;
2137
_tmp13_ = vala_member_access_get_inner (self);
2138
if (_tmp13_ == NULL) {
2139
ValaSemanticAnalyzer* _tmp17_ = NULL;
2140
ValaSymbol* _tmp18_ = NULL;
2141
ValaSymbol* _tmp19_;
2137
2142
gboolean method_found;
2138
ValaSemanticAnalyzer* _tmp22_ = NULL;
2139
ValaSymbol* _tmp23_ = NULL;
2140
ValaSymbol* _tmp24_;
2143
ValaSemanticAnalyzer* _tmp20_ = NULL;
2144
ValaSymbol* _tmp21_ = NULL;
2145
ValaSymbol* _tmp22_;
2141
2146
ValaSymbol* sym;
2142
gboolean _tmp61_ = FALSE;
2143
ValaSymbol* _tmp62_ = NULL;
2147
gboolean _tmp52_ = FALSE;
2148
ValaSymbol* _tmp53_ = NULL;
2144
2149
if (g_strcmp0 (self->priv->_member_name, "this") == 0) {
2145
ValaSemanticAnalyzer* _tmp15_ = NULL;
2147
_tmp15_ = vala_code_context_get_analyzer (context);
2148
_tmp16_ = vala_semantic_analyzer_is_in_instance_method (_tmp15_);
2150
ValaSourceReference* _tmp17_ = NULL;
2150
ValaSemanticAnalyzer* _tmp14_ = NULL;
2152
_tmp14_ = vala_code_context_get_analyzer (context);
2153
_tmp15_ = vala_semantic_analyzer_is_in_instance_method (_tmp14_);
2155
ValaSourceReference* _tmp16_ = NULL;
2151
2156
vala_code_node_set_error ((ValaCodeNode*) self, TRUE);
2152
_tmp17_ = vala_code_node_get_source_reference ((ValaCodeNode*) self);
2153
vala_report_error (_tmp17_, "This access invalid outside of instance methods");
2157
_tmp16_ = vala_code_node_get_source_reference ((ValaCodeNode*) self);
2158
vala_report_error (_tmp16_, "This access invalid outside of instance methods");
2154
2159
result = FALSE;
2155
2160
_vala_code_node_unref0 (this_parameter);
2156
2161
_vala_code_node_unref0 (base_symbol);
2160
_tmp18_ = vala_code_context_get_analyzer (context);
2161
_tmp19_ = vala_semantic_analyzer_get_current_symbol (_tmp18_);
2162
_tmp20_ = _vala_code_node_ref0 (_tmp19_);
2165
_tmp17_ = vala_code_context_get_analyzer (context);
2166
_tmp18_ = vala_semantic_analyzer_get_current_symbol (_tmp17_);
2167
_tmp19_ = _vala_code_node_ref0 (_tmp18_);
2164
2168
_vala_code_node_unref0 (base_symbol);
2165
base_symbol = _tmp21_;
2169
base_symbol = _tmp19_;
2166
2170
method_found = FALSE;
2167
_tmp22_ = vala_code_context_get_analyzer (context);
2168
_tmp23_ = vala_semantic_analyzer_get_current_symbol (_tmp22_);
2169
_tmp24_ = _vala_code_node_ref0 (_tmp23_);
2171
_tmp20_ = vala_code_context_get_analyzer (context);
2172
_tmp21_ = vala_semantic_analyzer_get_current_symbol (_tmp20_);
2173
_tmp22_ = _vala_code_node_ref0 (_tmp21_);
2172
gboolean _tmp25_ = FALSE;
2173
ValaSemanticAnalyzer* _tmp53_ = NULL;
2174
ValaSymbol* _tmp54_ = NULL;
2175
ValaSymbol* _tmp55_;
2176
ValaSymbol* _tmp56_ = NULL;
2177
ValaSymbol* _tmp58_ = NULL;
2178
ValaSymbol* _tmp59_;
2179
ValaSymbol* _tmp60_;
2176
gboolean _tmp23_ = FALSE;
2177
ValaSemanticAnalyzer* _tmp46_ = NULL;
2178
ValaSymbol* _tmp47_ = NULL;
2179
ValaSymbol* _tmp48_;
2180
ValaSymbol* _tmp49_ = NULL;
2181
ValaSymbol* _tmp50_ = NULL;
2182
ValaSymbol* _tmp51_;
2180
2183
if (sym != NULL) {
2181
ValaSymbol* _tmp26_ = NULL;
2182
_tmp26_ = vala_expression_get_symbol_reference ((ValaExpression*) self);
2183
_tmp25_ = _tmp26_ == NULL;
2184
ValaSymbol* _tmp24_ = NULL;
2185
_tmp24_ = vala_expression_get_symbol_reference ((ValaExpression*) self);
2186
_tmp23_ = _tmp24_ == NULL;
2190
2193
if (!method_found) {
2191
2194
if (VALA_IS_CREATION_METHOD (sym)) {
2192
ValaCreationMethod* _tmp27_;
2195
ValaCreationMethod* _tmp25_;
2193
2196
ValaCreationMethod* cm;
2194
ValaParameter* _tmp28_ = NULL;
2195
ValaParameter* _tmp29_;
2196
ValaParameter* _tmp30_;
2197
_tmp27_ = _vala_code_node_ref0 (VALA_CREATION_METHOD (sym));
2199
_tmp28_ = vala_method_get_this_parameter ((ValaMethod*) cm);
2200
_tmp29_ = _vala_code_node_ref0 (_tmp28_);
2197
ValaParameter* _tmp26_ = NULL;
2198
ValaParameter* _tmp27_;
2199
_tmp25_ = _vala_code_node_ref0 (VALA_CREATION_METHOD (sym));
2201
_tmp26_ = vala_method_get_this_parameter ((ValaMethod*) cm);
2202
_tmp27_ = _vala_code_node_ref0 (_tmp26_);
2202
2203
_vala_code_node_unref0 (this_parameter);
2203
this_parameter = _tmp30_;
2204
this_parameter = _tmp27_;
2204
2205
may_access_instance_members = TRUE;
2205
2206
may_access_klass_members = TRUE;
2206
2207
method_found = TRUE;
2207
2208
_vala_code_node_unref0 (cm);
2209
2210
if (VALA_IS_PROPERTY (sym)) {
2210
ValaProperty* _tmp31_;
2211
ValaProperty* _tmp28_;
2211
2212
ValaProperty* prop;
2212
ValaParameter* _tmp32_ = NULL;
2213
ValaParameter* _tmp33_;
2214
ValaParameter* _tmp34_;
2215
ValaMemberBinding _tmp35_;
2216
ValaMemberBinding _tmp36_;
2217
_tmp31_ = _vala_code_node_ref0 (VALA_PROPERTY (sym));
2219
_tmp32_ = vala_property_get_this_parameter (prop);
2220
_tmp33_ = _vala_code_node_ref0 (_tmp32_);
2213
ValaParameter* _tmp29_ = NULL;
2214
ValaParameter* _tmp30_;
2215
ValaMemberBinding _tmp31_;
2216
ValaMemberBinding _tmp32_;
2217
_tmp28_ = _vala_code_node_ref0 (VALA_PROPERTY (sym));
2219
_tmp29_ = vala_property_get_this_parameter (prop);
2220
_tmp30_ = _vala_code_node_ref0 (_tmp29_);
2222
2221
_vala_code_node_unref0 (this_parameter);
2223
this_parameter = _tmp34_;
2224
_tmp35_ = vala_property_get_binding (prop);
2225
may_access_instance_members = _tmp35_ == VALA_MEMBER_BINDING_INSTANCE;
2226
_tmp36_ = vala_property_get_binding (prop);
2227
may_access_klass_members = _tmp36_ != VALA_MEMBER_BINDING_STATIC;
2222
this_parameter = _tmp30_;
2223
_tmp31_ = vala_property_get_binding (prop);
2224
may_access_instance_members = _tmp31_ == VALA_MEMBER_BINDING_INSTANCE;
2225
_tmp32_ = vala_property_get_binding (prop);
2226
may_access_klass_members = _tmp32_ != VALA_MEMBER_BINDING_STATIC;
2228
2227
method_found = TRUE;
2229
2228
_vala_code_node_unref0 (prop);
2231
2230
if (VALA_IS_CONSTRUCTOR (sym)) {
2232
ValaConstructor* _tmp37_;
2231
ValaConstructor* _tmp33_;
2233
2232
ValaConstructor* c;
2234
ValaParameter* _tmp38_ = NULL;
2235
ValaParameter* _tmp39_;
2236
ValaParameter* _tmp40_;
2237
ValaMemberBinding _tmp41_;
2238
_tmp37_ = _vala_code_node_ref0 (VALA_CONSTRUCTOR (sym));
2240
_tmp38_ = vala_constructor_get_this_parameter (c);
2241
_tmp39_ = _vala_code_node_ref0 (_tmp38_);
2233
ValaParameter* _tmp34_ = NULL;
2234
ValaParameter* _tmp35_;
2235
ValaMemberBinding _tmp36_;
2236
_tmp33_ = _vala_code_node_ref0 (VALA_CONSTRUCTOR (sym));
2238
_tmp34_ = vala_constructor_get_this_parameter (c);
2239
_tmp35_ = _vala_code_node_ref0 (_tmp34_);
2243
2240
_vala_code_node_unref0 (this_parameter);
2244
this_parameter = _tmp40_;
2245
_tmp41_ = vala_constructor_get_binding (c);
2246
may_access_instance_members = _tmp41_ == VALA_MEMBER_BINDING_INSTANCE;
2241
this_parameter = _tmp35_;
2242
_tmp36_ = vala_constructor_get_binding (c);
2243
may_access_instance_members = _tmp36_ == VALA_MEMBER_BINDING_INSTANCE;
2247
2244
may_access_klass_members = TRUE;
2248
2245
method_found = TRUE;
2249
2246
_vala_code_node_unref0 (c);
2251
2248
if (VALA_IS_DESTRUCTOR (sym)) {
2252
ValaDestructor* _tmp42_;
2249
ValaDestructor* _tmp37_;
2253
2250
ValaDestructor* d;
2254
ValaParameter* _tmp43_ = NULL;
2255
ValaParameter* _tmp44_;
2256
ValaParameter* _tmp45_;
2257
ValaMemberBinding _tmp46_;
2258
_tmp42_ = _vala_code_node_ref0 (VALA_DESTRUCTOR (sym));
2260
_tmp43_ = vala_destructor_get_this_parameter (d);
2261
_tmp44_ = _vala_code_node_ref0 (_tmp43_);
2251
ValaParameter* _tmp38_ = NULL;
2252
ValaParameter* _tmp39_;
2253
ValaMemberBinding _tmp40_;
2254
_tmp37_ = _vala_code_node_ref0 (VALA_DESTRUCTOR (sym));
2256
_tmp38_ = vala_destructor_get_this_parameter (d);
2257
_tmp39_ = _vala_code_node_ref0 (_tmp38_);
2263
2258
_vala_code_node_unref0 (this_parameter);
2264
this_parameter = _tmp45_;
2265
_tmp46_ = vala_destructor_get_binding (d);
2266
may_access_instance_members = _tmp46_ == VALA_MEMBER_BINDING_INSTANCE;
2259
this_parameter = _tmp39_;
2260
_tmp40_ = vala_destructor_get_binding (d);
2261
may_access_instance_members = _tmp40_ == VALA_MEMBER_BINDING_INSTANCE;
2267
2262
may_access_klass_members = TRUE;
2268
2263
method_found = TRUE;
2269
2264
_vala_code_node_unref0 (d);
2271
2266
if (VALA_IS_METHOD (sym)) {
2272
ValaMethod* _tmp47_;
2267
ValaMethod* _tmp41_;
2274
ValaParameter* _tmp48_ = NULL;
2275
ValaParameter* _tmp49_;
2276
ValaParameter* _tmp50_;
2277
ValaMemberBinding _tmp51_;
2278
ValaMemberBinding _tmp52_;
2279
_tmp47_ = _vala_code_node_ref0 (VALA_METHOD (sym));
2281
_tmp48_ = vala_method_get_this_parameter (m);
2282
_tmp49_ = _vala_code_node_ref0 (_tmp48_);
2269
ValaParameter* _tmp42_ = NULL;
2270
ValaParameter* _tmp43_;
2271
ValaMemberBinding _tmp44_;
2272
ValaMemberBinding _tmp45_;
2273
_tmp41_ = _vala_code_node_ref0 (VALA_METHOD (sym));
2275
_tmp42_ = vala_method_get_this_parameter (m);
2276
_tmp43_ = _vala_code_node_ref0 (_tmp42_);
2284
2277
_vala_code_node_unref0 (this_parameter);
2285
this_parameter = _tmp50_;
2286
_tmp51_ = vala_method_get_binding (m);
2287
may_access_instance_members = _tmp51_ == VALA_MEMBER_BINDING_INSTANCE;
2288
_tmp52_ = vala_method_get_binding (m);
2289
may_access_klass_members = _tmp52_ != VALA_MEMBER_BINDING_STATIC;
2278
this_parameter = _tmp43_;
2279
_tmp44_ = vala_method_get_binding (m);
2280
may_access_instance_members = _tmp44_ == VALA_MEMBER_BINDING_INSTANCE;
2281
_tmp45_ = vala_method_get_binding (m);
2282
may_access_klass_members = _tmp45_ != VALA_MEMBER_BINDING_STATIC;
2290
2283
method_found = TRUE;
2291
2284
_vala_code_node_unref0 (m);
2298
_tmp53_ = vala_code_context_get_analyzer (context);
2299
_tmp54_ = vala_semantic_analyzer_symbol_lookup_inherited (sym, self->priv->_member_name);
2301
vala_expression_set_symbol_reference ((ValaExpression*) self, _tmp55_);
2302
_vala_code_node_unref0 (_tmp55_);
2303
_tmp56_ = vala_expression_get_symbol_reference ((ValaExpression*) self);
2304
if (_tmp56_ == NULL) {
2291
_tmp46_ = vala_code_context_get_analyzer (context);
2292
_tmp47_ = vala_semantic_analyzer_symbol_lookup_inherited (sym, self->priv->_member_name);
2294
vala_expression_set_symbol_reference ((ValaExpression*) self, _tmp48_);
2295
_vala_code_node_unref0 (_tmp48_);
2296
_tmp49_ = vala_expression_get_symbol_reference ((ValaExpression*) self);
2297
if (_tmp49_ == NULL) {
2305
2298
if (VALA_IS_TYPESYMBOL (sym)) {
2306
ValaParameter* _tmp57_;
2308
2299
_vala_code_node_unref0 (this_parameter);
2309
this_parameter = _tmp57_;
2300
this_parameter = NULL;
2310
2301
may_access_instance_members = FALSE;
2311
2302
may_access_klass_members = FALSE;
2314
_tmp58_ = vala_symbol_get_parent_symbol (sym);
2315
_tmp59_ = _vala_code_node_ref0 (_tmp58_);
2305
_tmp50_ = vala_symbol_get_parent_symbol (sym);
2306
_tmp51_ = _vala_code_node_ref0 (_tmp50_);
2317
2307
_vala_code_node_unref0 (sym);
2320
_tmp62_ = vala_expression_get_symbol_reference ((ValaExpression*) self);
2321
if (_tmp62_ == NULL) {
2322
ValaSourceReference* _tmp63_ = NULL;
2323
_tmp63_ = vala_code_node_get_source_reference ((ValaCodeNode*) self);
2324
_tmp61_ = _tmp63_ != NULL;
2310
_tmp53_ = vala_expression_get_symbol_reference ((ValaExpression*) self);
2311
if (_tmp53_ == NULL) {
2312
ValaSourceReference* _tmp54_ = NULL;
2313
_tmp54_ = vala_code_node_get_source_reference ((ValaCodeNode*) self);
2314
_tmp52_ = _tmp54_ != NULL;
2330
ValaSourceReference* _tmp64_ = NULL;
2331
ValaList* _tmp65_ = NULL;
2320
ValaSourceReference* _tmp55_ = NULL;
2321
ValaList* _tmp56_ = NULL;
2333
2323
ValaList* _ns_list;
2336
2326
gint _ns_index;
2337
_tmp64_ = vala_code_node_get_source_reference ((ValaCodeNode*) self);
2338
_tmp65_ = vala_source_reference_get_using_directives (_tmp64_);
2339
_tmp66_ = _vala_iterable_ref0 (_tmp65_);
2341
_tmp67_ = vala_collection_get_size ((ValaCollection*) _ns_list);
2327
_tmp55_ = vala_code_node_get_source_reference ((ValaCodeNode*) self);
2328
_tmp56_ = vala_source_reference_get_using_directives (_tmp55_);
2329
_tmp57_ = _vala_iterable_ref0 (_tmp56_);
2331
_tmp58_ = vala_collection_get_size ((ValaCollection*) _ns_list);
2343
2333
_ns_index = -1;
2345
gpointer _tmp68_ = NULL;
2335
gpointer _tmp59_ = NULL;
2346
2336
ValaUsingDirective* ns;
2347
ValaSymbol* _tmp69_ = NULL;
2348
ValaScope* _tmp70_ = NULL;
2349
ValaSymbol* _tmp71_ = NULL;
2337
ValaSymbol* _tmp60_ = NULL;
2338
ValaScope* _tmp61_ = NULL;
2339
ValaSymbol* _tmp62_ = NULL;
2350
2340
ValaSymbol* local_sym;
2351
2341
_ns_index = _ns_index + 1;
2352
2342
if (!(_ns_index < _ns_size)) {
2355
_tmp68_ = vala_list_get (_ns_list, _ns_index);
2356
ns = (ValaUsingDirective*) _tmp68_;
2357
_tmp69_ = vala_using_directive_get_namespace_symbol (ns);
2358
_tmp70_ = vala_symbol_get_scope (_tmp69_);
2359
_tmp71_ = vala_scope_lookup (_tmp70_, self->priv->_member_name);
2360
local_sym = _tmp71_;
2345
_tmp59_ = vala_list_get (_ns_list, _ns_index);
2346
ns = (ValaUsingDirective*) _tmp59_;
2347
_tmp60_ = vala_using_directive_get_namespace_symbol (ns);
2348
_tmp61_ = vala_symbol_get_scope (_tmp60_);
2349
_tmp62_ = vala_scope_lookup (_tmp61_, self->priv->_member_name);
2350
local_sym = _tmp62_;
2361
2351
if (local_sym != NULL) {
2362
gboolean _tmp72_ = FALSE;
2363
ValaSymbol* _tmp73_ = NULL;
2364
_tmp73_ = vala_expression_get_symbol_reference ((ValaExpression*) self);
2365
if (_tmp73_ != NULL) {
2366
ValaSymbol* _tmp74_ = NULL;
2367
_tmp74_ = vala_expression_get_symbol_reference ((ValaExpression*) self);
2368
_tmp72_ = _tmp74_ != local_sym;
2352
gboolean _tmp63_ = FALSE;
2353
ValaSymbol* _tmp64_ = NULL;
2354
_tmp64_ = vala_expression_get_symbol_reference ((ValaExpression*) self);
2355
if (_tmp64_ != NULL) {
2356
ValaSymbol* _tmp65_ = NULL;
2357
_tmp65_ = vala_expression_get_symbol_reference ((ValaExpression*) self);
2358
_tmp63_ = _tmp65_ != local_sym;
2373
ValaSourceReference* _tmp75_ = NULL;
2374
ValaSymbol* _tmp76_ = NULL;
2375
gchar* _tmp77_ = NULL;
2377
gchar* _tmp79_ = NULL;
2379
gchar* _tmp81_ = NULL;
2363
ValaSourceReference* _tmp66_ = NULL;
2364
ValaSymbol* _tmp67_ = NULL;
2365
gchar* _tmp68_ = NULL;
2367
gchar* _tmp70_ = NULL;
2369
gchar* _tmp72_ = NULL;
2381
2371
vala_code_node_set_error ((ValaCodeNode*) self, TRUE);
2382
_tmp75_ = vala_code_node_get_source_reference ((ValaCodeNode*) self);
2383
_tmp76_ = vala_expression_get_symbol_reference ((ValaExpression*) self);
2384
_tmp77_ = vala_symbol_get_full_name (_tmp76_);
2386
_tmp79_ = vala_symbol_get_full_name (local_sym);
2388
_tmp81_ = g_strdup_printf ("`%s' is an ambiguous reference between `%s' and `%s'", self->priv->_member_name, _tmp78_, _tmp80_);
2390
vala_report_error (_tmp75_, _tmp82_);
2372
_tmp66_ = vala_code_node_get_source_reference ((ValaCodeNode*) self);
2373
_tmp67_ = vala_expression_get_symbol_reference ((ValaExpression*) self);
2374
_tmp68_ = vala_symbol_get_full_name (_tmp67_);
2376
_tmp70_ = vala_symbol_get_full_name (local_sym);
2378
_tmp72_ = g_strdup_printf ("`%s' is an ambiguous reference between `%s' and `%s'", self->priv->_member_name, _tmp69_, _tmp71_);
2380
vala_report_error (_tmp66_, _tmp73_);
2394
2384
result = FALSE;
2395
2385
_vala_code_node_unref0 (local_sym);
2396
2386
_vala_code_node_unref0 (ns);
2411
2401
_vala_code_node_unref0 (sym);
2413
ValaExpression* _tmp83_ = NULL;
2415
ValaExpression* _tmp85_ = NULL;
2416
ValaDataType* _tmp86_ = NULL;
2417
ValaExpression* _tmp98_ = NULL;
2418
gboolean _tmp108_ = FALSE;
2419
ValaExpression* _tmp109_ = NULL;
2420
gboolean _tmp122_ = FALSE;
2421
ValaSymbol* _tmp123_ = NULL;
2422
gboolean _tmp143_ = FALSE;
2423
gboolean _tmp144_ = FALSE;
2424
ValaSymbol* _tmp145_ = NULL;
2425
_tmp83_ = vala_member_access_get_inner (self);
2426
_tmp84_ = vala_code_node_get_error ((ValaCodeNode*) _tmp83_);
2403
ValaExpression* _tmp74_ = NULL;
2405
ValaExpression* _tmp76_ = NULL;
2406
ValaDataType* _tmp77_ = NULL;
2407
ValaExpression* _tmp89_ = NULL;
2408
gboolean _tmp99_ = FALSE;
2409
ValaExpression* _tmp100_ = NULL;
2410
gboolean _tmp112_ = FALSE;
2411
ValaSymbol* _tmp113_ = NULL;
2412
gboolean _tmp132_ = FALSE;
2413
gboolean _tmp133_ = FALSE;
2414
ValaSymbol* _tmp134_ = NULL;
2415
_tmp74_ = vala_member_access_get_inner (self);
2416
_tmp75_ = vala_code_node_get_error ((ValaCodeNode*) _tmp74_);
2428
2418
vala_code_node_set_error ((ValaCodeNode*) self, TRUE);
2429
2419
result = FALSE;
2430
2420
_vala_code_node_unref0 (this_parameter);
2431
2421
_vala_code_node_unref0 (base_symbol);
2434
_tmp85_ = vala_member_access_get_inner (self);
2435
_tmp86_ = vala_expression_get_value_type (_tmp85_);
2436
if (VALA_IS_POINTER_TYPE (_tmp86_)) {
2437
ValaExpression* _tmp87_ = NULL;
2438
ValaDataType* _tmp88_ = NULL;
2439
ValaDataType* _tmp89_;
2440
ValaPointerType* _tmp90_;
2424
_tmp76_ = vala_member_access_get_inner (self);
2425
_tmp77_ = vala_expression_get_value_type (_tmp76_);
2426
if (VALA_IS_POINTER_TYPE (_tmp77_)) {
2427
ValaExpression* _tmp78_ = NULL;
2428
ValaDataType* _tmp79_ = NULL;
2429
ValaDataType* _tmp80_;
2430
ValaPointerType* _tmp81_;
2441
2431
ValaPointerType* pointer_type;
2442
gboolean _tmp91_ = FALSE;
2443
_tmp87_ = vala_member_access_get_inner (self);
2444
_tmp88_ = vala_expression_get_value_type (_tmp87_);
2445
_tmp90_ = _vala_code_node_ref0 ((_tmp89_ = _tmp88_, VALA_IS_POINTER_TYPE (_tmp89_) ? ((ValaPointerType*) _tmp89_) : NULL));
2446
pointer_type = _tmp90_;
2432
gboolean _tmp82_ = FALSE;
2433
_tmp78_ = vala_member_access_get_inner (self);
2434
_tmp79_ = vala_expression_get_value_type (_tmp78_);
2436
_tmp81_ = _vala_code_node_ref0 (VALA_IS_POINTER_TYPE (_tmp80_) ? ((ValaPointerType*) _tmp80_) : NULL);
2437
pointer_type = _tmp81_;
2447
2438
if (pointer_type != NULL) {
2448
ValaDataType* _tmp92_ = NULL;
2449
_tmp92_ = vala_pointer_type_get_base_type (pointer_type);
2450
_tmp91_ = VALA_IS_VALUE_TYPE (_tmp92_);
2439
ValaDataType* _tmp83_ = NULL;
2440
_tmp83_ = vala_pointer_type_get_base_type (pointer_type);
2441
_tmp82_ = VALA_IS_VALUE_TYPE (_tmp83_);
2455
ValaExpression* _tmp93_ = NULL;
2456
ValaSourceReference* _tmp94_ = NULL;
2457
ValaPointerIndirection* _tmp95_ = NULL;
2458
ValaPointerIndirection* _tmp96_;
2459
ValaExpression* _tmp97_ = NULL;
2460
_tmp93_ = vala_member_access_get_inner (self);
2461
_tmp94_ = vala_code_node_get_source_reference ((ValaCodeNode*) self);
2462
_tmp95_ = vala_pointer_indirection_new (_tmp93_, _tmp94_);
2464
vala_member_access_set_inner (self, (ValaExpression*) _tmp96_);
2465
_vala_code_node_unref0 (_tmp96_);
2466
_tmp97_ = vala_member_access_get_inner (self);
2467
vala_code_node_check ((ValaCodeNode*) _tmp97_, context);
2446
ValaExpression* _tmp84_ = NULL;
2447
ValaSourceReference* _tmp85_ = NULL;
2448
ValaPointerIndirection* _tmp86_ = NULL;
2449
ValaPointerIndirection* _tmp87_;
2450
ValaExpression* _tmp88_ = NULL;
2451
_tmp84_ = vala_member_access_get_inner (self);
2452
_tmp85_ = vala_code_node_get_source_reference ((ValaCodeNode*) self);
2453
_tmp86_ = vala_pointer_indirection_new (_tmp84_, _tmp85_);
2455
vala_member_access_set_inner (self, (ValaExpression*) _tmp87_);
2456
_vala_code_node_unref0 (_tmp87_);
2457
_tmp88_ = vala_member_access_get_inner (self);
2458
vala_code_node_check ((ValaCodeNode*) _tmp88_, context);
2468
2459
vala_member_access_set_pointer_member_access (self, FALSE);
2470
2461
_vala_code_node_unref0 (pointer_type);
2472
_tmp98_ = vala_member_access_get_inner (self);
2473
if (VALA_IS_MEMBER_ACCESS (_tmp98_)) {
2474
ValaExpression* _tmp99_ = NULL;
2475
ValaMemberAccess* _tmp100_;
2463
_tmp89_ = vala_member_access_get_inner (self);
2464
if (VALA_IS_MEMBER_ACCESS (_tmp89_)) {
2465
ValaExpression* _tmp90_ = NULL;
2466
ValaMemberAccess* _tmp91_;
2476
2467
ValaMemberAccess* ma;
2477
_tmp99_ = vala_member_access_get_inner (self);
2478
_tmp100_ = _vala_code_node_ref0 (VALA_MEMBER_ACCESS (_tmp99_));
2468
_tmp90_ = vala_member_access_get_inner (self);
2469
_tmp91_ = _vala_code_node_ref0 (VALA_MEMBER_ACCESS (_tmp90_));
2480
2471
if (ma->priv->_prototype_access) {
2481
ValaSourceReference* _tmp101_ = NULL;
2482
ValaExpression* _tmp102_ = NULL;
2483
ValaSymbol* _tmp103_ = NULL;
2484
gchar* _tmp104_ = NULL;
2486
gchar* _tmp106_ = NULL;
2472
ValaSourceReference* _tmp92_ = NULL;
2473
ValaExpression* _tmp93_ = NULL;
2474
ValaSymbol* _tmp94_ = NULL;
2475
gchar* _tmp95_ = NULL;
2477
gchar* _tmp97_ = NULL;
2488
2479
vala_code_node_set_error ((ValaCodeNode*) self, TRUE);
2489
_tmp101_ = vala_code_node_get_source_reference ((ValaCodeNode*) self);
2490
_tmp102_ = vala_member_access_get_inner (self);
2491
_tmp103_ = vala_expression_get_symbol_reference (_tmp102_);
2492
_tmp104_ = vala_symbol_get_full_name (_tmp103_);
2493
_tmp105_ = _tmp104_;
2494
_tmp106_ = g_strdup_printf ("Access to instance member `%s' denied", _tmp105_);
2495
_tmp107_ = _tmp106_;
2496
vala_report_error (_tmp101_, _tmp107_);
2497
_g_free0 (_tmp107_);
2498
_g_free0 (_tmp105_);
2480
_tmp92_ = vala_code_node_get_source_reference ((ValaCodeNode*) self);
2481
_tmp93_ = vala_member_access_get_inner (self);
2482
_tmp94_ = vala_expression_get_symbol_reference (_tmp93_);
2483
_tmp95_ = vala_symbol_get_full_name (_tmp94_);
2485
_tmp97_ = g_strdup_printf ("Access to instance member `%s' denied", _tmp96_);
2487
vala_report_error (_tmp92_, _tmp98_);
2499
2490
result = FALSE;
2500
2491
_vala_code_node_unref0 (ma);
2501
2492
_vala_code_node_unref0 (this_parameter);
2505
2496
_vala_code_node_unref0 (ma);
2507
_tmp109_ = vala_member_access_get_inner (self);
2508
if (VALA_IS_MEMBER_ACCESS (_tmp109_)) {
2498
_tmp100_ = vala_member_access_get_inner (self);
2499
if (VALA_IS_MEMBER_ACCESS (_tmp100_)) {
2511
ValaExpression* _tmp110_ = NULL;
2512
_tmp110_ = vala_member_access_get_inner (self);
2513
_tmp108_ = VALA_IS_BASE_ACCESS (_tmp110_);
2502
ValaExpression* _tmp101_ = NULL;
2503
_tmp101_ = vala_member_access_get_inner (self);
2504
_tmp99_ = VALA_IS_BASE_ACCESS (_tmp101_);
2516
ValaExpression* _tmp111_ = NULL;
2517
ValaSymbol* _tmp112_ = NULL;
2518
ValaSymbol* _tmp113_;
2519
ValaSymbol* _tmp114_;
2520
gboolean _tmp115_ = FALSE;
2521
ValaSymbol* _tmp116_ = NULL;
2522
_tmp111_ = vala_member_access_get_inner (self);
2523
_tmp112_ = vala_expression_get_symbol_reference (_tmp111_);
2524
_tmp113_ = _vala_code_node_ref0 (_tmp112_);
2525
_tmp114_ = _tmp113_;
2507
ValaExpression* _tmp102_ = NULL;
2508
ValaSymbol* _tmp103_ = NULL;
2509
ValaSymbol* _tmp104_;
2510
gboolean _tmp105_ = FALSE;
2511
ValaSymbol* _tmp106_ = NULL;
2512
_tmp102_ = vala_member_access_get_inner (self);
2513
_tmp103_ = vala_expression_get_symbol_reference (_tmp102_);
2514
_tmp104_ = _vala_code_node_ref0 (_tmp103_);
2526
2515
_vala_code_node_unref0 (base_symbol);
2527
base_symbol = _tmp114_;
2528
_tmp116_ = vala_expression_get_symbol_reference ((ValaExpression*) self);
2529
if (_tmp116_ == NULL) {
2530
gboolean _tmp117_ = FALSE;
2516
base_symbol = _tmp104_;
2517
_tmp106_ = vala_expression_get_symbol_reference ((ValaExpression*) self);
2518
if (_tmp106_ == NULL) {
2519
gboolean _tmp107_ = FALSE;
2531
2520
if (VALA_IS_NAMESPACE (base_symbol)) {
2534
_tmp117_ = VALA_IS_TYPESYMBOL (base_symbol);
2523
_tmp107_ = VALA_IS_TYPESYMBOL (base_symbol);
2536
_tmp115_ = _tmp117_;
2525
_tmp105_ = _tmp107_;
2541
ValaScope* _tmp118_ = NULL;
2542
ValaSymbol* _tmp119_ = NULL;
2543
ValaSymbol* _tmp120_;
2544
ValaExpression* _tmp121_ = NULL;
2545
_tmp118_ = vala_symbol_get_scope (base_symbol);
2546
_tmp119_ = vala_scope_lookup (_tmp118_, self->priv->_member_name);
2547
_tmp120_ = _tmp119_;
2548
vala_expression_set_symbol_reference ((ValaExpression*) self, _tmp120_);
2549
_vala_code_node_unref0 (_tmp120_);
2550
_tmp121_ = vala_member_access_get_inner (self);
2551
if (VALA_IS_BASE_ACCESS (_tmp121_)) {
2530
ValaScope* _tmp108_ = NULL;
2531
ValaSymbol* _tmp109_ = NULL;
2532
ValaSymbol* _tmp110_;
2533
ValaExpression* _tmp111_ = NULL;
2534
_tmp108_ = vala_symbol_get_scope (base_symbol);
2535
_tmp109_ = vala_scope_lookup (_tmp108_, self->priv->_member_name);
2536
_tmp110_ = _tmp109_;
2537
vala_expression_set_symbol_reference ((ValaExpression*) self, _tmp110_);
2538
_vala_code_node_unref0 (_tmp110_);
2539
_tmp111_ = vala_member_access_get_inner (self);
2540
if (VALA_IS_BASE_ACCESS (_tmp111_)) {
2552
2541
may_access_instance_members = TRUE;
2553
2542
may_access_klass_members = TRUE;
2557
_tmp123_ = vala_expression_get_symbol_reference ((ValaExpression*) self);
2558
if (_tmp123_ == NULL) {
2559
ValaExpression* _tmp124_ = NULL;
2560
ValaDataType* _tmp125_ = NULL;
2561
_tmp124_ = vala_member_access_get_inner (self);
2562
_tmp125_ = vala_expression_get_value_type (_tmp124_);
2563
_tmp122_ = _tmp125_ != NULL;
2546
_tmp113_ = vala_expression_get_symbol_reference ((ValaExpression*) self);
2547
if (_tmp113_ == NULL) {
2548
ValaExpression* _tmp114_ = NULL;
2549
ValaDataType* _tmp115_ = NULL;
2550
_tmp114_ = vala_member_access_get_inner (self);
2551
_tmp115_ = vala_expression_get_value_type (_tmp114_);
2552
_tmp112_ = _tmp115_ != NULL;
2568
ValaSymbol* _tmp142_ = NULL;
2557
ValaSymbol* _tmp131_ = NULL;
2569
2558
if (self->priv->_pointer_member_access) {
2570
ValaExpression* _tmp126_ = NULL;
2571
ValaDataType* _tmp127_ = NULL;
2572
ValaSymbol* _tmp128_ = NULL;
2573
ValaSymbol* _tmp129_;
2574
_tmp126_ = vala_member_access_get_inner (self);
2575
_tmp127_ = vala_expression_get_value_type (_tmp126_);
2576
_tmp128_ = vala_data_type_get_pointer_member (_tmp127_, self->priv->_member_name);
2577
_tmp129_ = _tmp128_;
2578
vala_expression_set_symbol_reference ((ValaExpression*) self, _tmp129_);
2579
_vala_code_node_unref0 (_tmp129_);
2559
ValaExpression* _tmp116_ = NULL;
2560
ValaDataType* _tmp117_ = NULL;
2561
ValaSymbol* _tmp118_ = NULL;
2562
ValaSymbol* _tmp119_;
2563
_tmp116_ = vala_member_access_get_inner (self);
2564
_tmp117_ = vala_expression_get_value_type (_tmp116_);
2565
_tmp118_ = vala_data_type_get_pointer_member (_tmp117_, self->priv->_member_name);
2566
_tmp119_ = _tmp118_;
2567
vala_expression_set_symbol_reference ((ValaExpression*) self, _tmp119_);
2568
_vala_code_node_unref0 (_tmp119_);
2581
ValaExpression* _tmp130_ = NULL;
2582
ValaDataType* _tmp131_ = NULL;
2583
ValaTypeSymbol* _tmp132_ = NULL;
2584
ValaExpression* _tmp138_ = NULL;
2585
ValaDataType* _tmp139_ = NULL;
2586
ValaSymbol* _tmp140_ = NULL;
2587
ValaSymbol* _tmp141_;
2588
_tmp130_ = vala_member_access_get_inner (self);
2589
_tmp131_ = vala_expression_get_value_type (_tmp130_);
2590
_tmp132_ = vala_data_type_get_data_type (_tmp131_);
2591
if (_tmp132_ != NULL) {
2592
ValaExpression* _tmp133_ = NULL;
2593
ValaDataType* _tmp134_ = NULL;
2594
ValaTypeSymbol* _tmp135_ = NULL;
2595
ValaSymbol* _tmp136_;
2596
ValaSymbol* _tmp137_;
2597
_tmp133_ = vala_member_access_get_inner (self);
2598
_tmp134_ = vala_expression_get_value_type (_tmp133_);
2599
_tmp135_ = vala_data_type_get_data_type (_tmp134_);
2600
_tmp136_ = _vala_code_node_ref0 ((ValaSymbol*) _tmp135_);
2601
_tmp137_ = _tmp136_;
2570
ValaExpression* _tmp120_ = NULL;
2571
ValaDataType* _tmp121_ = NULL;
2572
ValaTypeSymbol* _tmp122_ = NULL;
2573
ValaExpression* _tmp127_ = NULL;
2574
ValaDataType* _tmp128_ = NULL;
2575
ValaSymbol* _tmp129_ = NULL;
2576
ValaSymbol* _tmp130_;
2577
_tmp120_ = vala_member_access_get_inner (self);
2578
_tmp121_ = vala_expression_get_value_type (_tmp120_);
2579
_tmp122_ = vala_data_type_get_data_type (_tmp121_);
2580
if (_tmp122_ != NULL) {
2581
ValaExpression* _tmp123_ = NULL;
2582
ValaDataType* _tmp124_ = NULL;
2583
ValaTypeSymbol* _tmp125_ = NULL;
2584
ValaSymbol* _tmp126_;
2585
_tmp123_ = vala_member_access_get_inner (self);
2586
_tmp124_ = vala_expression_get_value_type (_tmp123_);
2587
_tmp125_ = vala_data_type_get_data_type (_tmp124_);
2588
_tmp126_ = _vala_code_node_ref0 ((ValaSymbol*) _tmp125_);
2602
2589
_vala_code_node_unref0 (base_symbol);
2603
base_symbol = _tmp137_;
2590
base_symbol = _tmp126_;
2605
_tmp138_ = vala_member_access_get_inner (self);
2606
_tmp139_ = vala_expression_get_value_type (_tmp138_);
2607
_tmp140_ = vala_data_type_get_member (_tmp139_, self->priv->_member_name);
2608
_tmp141_ = _tmp140_;
2609
vala_expression_set_symbol_reference ((ValaExpression*) self, _tmp141_);
2610
_vala_code_node_unref0 (_tmp141_);
2592
_tmp127_ = vala_member_access_get_inner (self);
2593
_tmp128_ = vala_expression_get_value_type (_tmp127_);
2594
_tmp129_ = vala_data_type_get_member (_tmp128_, self->priv->_member_name);
2595
_tmp130_ = _tmp129_;
2596
vala_expression_set_symbol_reference ((ValaExpression*) self, _tmp130_);
2597
_vala_code_node_unref0 (_tmp130_);
2612
_tmp142_ = vala_expression_get_symbol_reference ((ValaExpression*) self);
2613
if (_tmp142_ != NULL) {
2599
_tmp131_ = vala_expression_get_symbol_reference ((ValaExpression*) self);
2600
if (_tmp131_ != NULL) {
2614
2601
may_access_instance_members = TRUE;
2615
2602
may_access_klass_members = TRUE;
2618
_tmp145_ = vala_expression_get_symbol_reference ((ValaExpression*) self);
2619
if (_tmp145_ == NULL) {
2620
ValaExpression* _tmp146_ = NULL;
2621
ValaDataType* _tmp147_ = NULL;
2622
_tmp146_ = vala_member_access_get_inner (self);
2623
_tmp147_ = vala_expression_get_value_type (_tmp146_);
2624
_tmp144_ = _tmp147_ != NULL;
2629
ValaExpression* _tmp148_ = NULL;
2630
ValaDataType* _tmp149_ = NULL;
2632
_tmp148_ = vala_member_access_get_inner (self);
2633
_tmp149_ = vala_expression_get_value_type (_tmp148_);
2634
_tmp150_ = vala_data_type_get_is_dynamic (_tmp149_);
2635
_tmp143_ = _tmp150_;
2640
ValaExpression* _tmp151_ = NULL;
2641
ValaDataType* _tmp152_ = NULL;
2642
ValaObjectType* _tmp153_;
2605
_tmp134_ = vala_expression_get_symbol_reference ((ValaExpression*) self);
2606
if (_tmp134_ == NULL) {
2607
ValaExpression* _tmp135_ = NULL;
2608
ValaDataType* _tmp136_ = NULL;
2609
_tmp135_ = vala_member_access_get_inner (self);
2610
_tmp136_ = vala_expression_get_value_type (_tmp135_);
2611
_tmp133_ = _tmp136_ != NULL;
2616
ValaExpression* _tmp137_ = NULL;
2617
ValaDataType* _tmp138_ = NULL;
2619
_tmp137_ = vala_member_access_get_inner (self);
2620
_tmp138_ = vala_expression_get_value_type (_tmp137_);
2621
_tmp139_ = vala_data_type_get_is_dynamic (_tmp138_);
2622
_tmp132_ = _tmp139_;
2627
ValaExpression* _tmp140_ = NULL;
2628
ValaDataType* _tmp141_ = NULL;
2629
ValaObjectType* _tmp142_;
2643
2630
ValaObjectType* dynamic_object_type;
2644
ValaCodeNode* _tmp154_ = NULL;
2645
ValaSymbol* _tmp239_ = NULL;
2646
ValaSymbol* _tmp262_ = NULL;
2647
_tmp151_ = vala_member_access_get_inner (self);
2648
_tmp152_ = vala_expression_get_value_type (_tmp151_);
2649
_tmp153_ = _vala_code_node_ref0 (VALA_OBJECT_TYPE (_tmp152_));
2650
dynamic_object_type = _tmp153_;
2651
_tmp154_ = vala_code_node_get_parent_node ((ValaCodeNode*) self);
2652
if (VALA_IS_METHOD_CALL (_tmp154_)) {
2653
ValaCodeNode* _tmp155_ = NULL;
2654
ValaMethodCall* _tmp156_;
2631
ValaCodeNode* _tmp143_ = NULL;
2632
ValaSymbol* _tmp225_ = NULL;
2633
ValaSymbol* _tmp248_ = NULL;
2634
_tmp140_ = vala_member_access_get_inner (self);
2635
_tmp141_ = vala_expression_get_value_type (_tmp140_);
2636
_tmp142_ = _vala_code_node_ref0 (VALA_OBJECT_TYPE (_tmp141_));
2637
dynamic_object_type = _tmp142_;
2638
_tmp143_ = vala_code_node_get_parent_node ((ValaCodeNode*) self);
2639
if (VALA_IS_METHOD_CALL (_tmp143_)) {
2640
ValaCodeNode* _tmp144_ = NULL;
2641
ValaMethodCall* _tmp145_;
2655
2642
ValaMethodCall* invoc;
2656
ValaExpression* _tmp157_ = NULL;
2657
_tmp155_ = vala_code_node_get_parent_node ((ValaCodeNode*) self);
2658
_tmp156_ = _vala_code_node_ref0 (VALA_METHOD_CALL (_tmp155_));
2660
_tmp157_ = vala_method_call_get_call (invoc);
2661
if (_tmp157_ == VALA_EXPRESSION (self)) {
2643
ValaExpression* _tmp146_ = NULL;
2644
_tmp144_ = vala_code_node_get_parent_node ((ValaCodeNode*) self);
2645
_tmp145_ = _vala_code_node_ref0 (VALA_METHOD_CALL (_tmp144_));
2647
_tmp146_ = vala_method_call_get_call (invoc);
2648
if (_tmp146_ == VALA_EXPRESSION (self)) {
2662
2649
ValaDataType* ret_type = NULL;
2663
ValaDataType* _tmp158_ = NULL;
2664
ValaExpression* _tmp169_ = NULL;
2665
ValaDataType* _tmp170_ = NULL;
2666
ValaSourceReference* _tmp171_ = NULL;
2667
ValaDynamicMethod* _tmp172_ = NULL;
2650
ValaDataType* _tmp147_ = NULL;
2651
ValaExpression* _tmp155_ = NULL;
2652
ValaDataType* _tmp156_ = NULL;
2653
ValaSourceReference* _tmp157_ = NULL;
2654
ValaDynamicMethod* _tmp158_ = NULL;
2668
2655
ValaDynamicMethod* m;
2669
ValaErrorType* _tmp173_ = NULL;
2656
ValaErrorType* _tmp159_ = NULL;
2670
2657
ValaErrorType* err;
2671
ValaParameter* _tmp174_ = NULL;
2672
ValaParameter* _tmp175_;
2673
ValaObjectTypeSymbol* _tmp176_ = NULL;
2674
ValaScope* _tmp177_ = NULL;
2675
_tmp158_ = vala_expression_get_target_type ((ValaExpression*) invoc);
2676
if (_tmp158_ != NULL) {
2677
ValaDataType* _tmp159_ = NULL;
2678
ValaDataType* _tmp160_ = NULL;
2679
ValaDataType* _tmp161_;
2680
_tmp159_ = vala_expression_get_target_type ((ValaExpression*) invoc);
2681
_tmp160_ = vala_data_type_copy (_tmp159_);
2682
_tmp161_ = _tmp160_;
2658
ValaParameter* _tmp160_ = NULL;
2659
ValaParameter* _tmp161_;
2660
ValaObjectTypeSymbol* _tmp162_ = NULL;
2661
ValaScope* _tmp163_ = NULL;
2662
_tmp147_ = vala_expression_get_target_type ((ValaExpression*) invoc);
2663
if (_tmp147_ != NULL) {
2664
ValaDataType* _tmp148_ = NULL;
2665
ValaDataType* _tmp149_ = NULL;
2666
_tmp148_ = vala_expression_get_target_type ((ValaExpression*) invoc);
2667
_tmp149_ = vala_data_type_copy (_tmp148_);
2683
2668
_vala_code_node_unref0 (ret_type);
2684
ret_type = _tmp161_;
2669
ret_type = _tmp149_;
2685
2670
vala_data_type_set_value_owned (ret_type, TRUE);
2687
ValaCodeNode* _tmp162_ = NULL;
2688
_tmp162_ = vala_code_node_get_parent_node ((ValaCodeNode*) invoc);
2689
if (VALA_IS_EXPRESSION_STATEMENT (_tmp162_)) {
2690
ValaVoidType* _tmp163_ = NULL;
2691
ValaDataType* _tmp164_;
2692
_tmp163_ = vala_void_type_new (NULL);
2693
_tmp164_ = (ValaDataType*) _tmp163_;
2672
ValaCodeNode* _tmp150_ = NULL;
2673
_tmp150_ = vala_code_node_get_parent_node ((ValaCodeNode*) invoc);
2674
if (VALA_IS_EXPRESSION_STATEMENT (_tmp150_)) {
2675
ValaVoidType* _tmp151_ = NULL;
2676
_tmp151_ = vala_void_type_new (NULL);
2694
2677
_vala_code_node_unref0 (ret_type);
2695
ret_type = _tmp164_;
2678
ret_type = (ValaDataType*) _tmp151_;
2697
ValaExpression* _tmp165_ = NULL;
2698
ValaDataType* _tmp166_ = NULL;
2699
ValaDataType* _tmp167_ = NULL;
2700
ValaDataType* _tmp168_;
2701
_tmp165_ = vala_member_access_get_inner (self);
2702
_tmp166_ = vala_expression_get_value_type (_tmp165_);
2703
_tmp167_ = vala_data_type_copy (_tmp166_);
2704
_tmp168_ = _tmp167_;
2680
ValaExpression* _tmp152_ = NULL;
2681
ValaDataType* _tmp153_ = NULL;
2682
ValaDataType* _tmp154_ = NULL;
2683
_tmp152_ = vala_member_access_get_inner (self);
2684
_tmp153_ = vala_expression_get_value_type (_tmp152_);
2685
_tmp154_ = vala_data_type_copy (_tmp153_);
2705
2686
_vala_code_node_unref0 (ret_type);
2706
ret_type = _tmp168_;
2687
ret_type = _tmp154_;
2709
_tmp169_ = vala_member_access_get_inner (self);
2710
_tmp170_ = vala_expression_get_value_type (_tmp169_);
2711
_tmp171_ = vala_code_node_get_source_reference ((ValaCodeNode*) self);
2712
_tmp172_ = vala_dynamic_method_new (_tmp170_, self->priv->_member_name, ret_type, _tmp171_, NULL);
2690
_tmp155_ = vala_member_access_get_inner (self);
2691
_tmp156_ = vala_expression_get_value_type (_tmp155_);
2692
_tmp157_ = vala_code_node_get_source_reference ((ValaCodeNode*) self);
2693
_tmp158_ = vala_dynamic_method_new (_tmp156_, self->priv->_member_name, ret_type, _tmp157_, NULL);
2714
2695
vala_dynamic_method_set_invocation (m, invoc);
2715
_tmp173_ = vala_error_type_new (NULL, NULL, NULL);
2696
_tmp159_ = vala_error_type_new (NULL, NULL, NULL);
2717
2698
vala_error_type_set_dynamic_error (err, TRUE);
2718
2699
vala_code_node_add_error_type ((ValaCodeNode*) m, (ValaDataType*) err);
2719
2700
vala_symbol_set_access ((ValaSymbol*) m, VALA_SYMBOL_ACCESSIBILITY_PUBLIC);
2720
_tmp174_ = vala_parameter_new_with_ellipsis (NULL);
2721
_tmp175_ = _tmp174_;
2722
vala_method_add_parameter ((ValaMethod*) m, _tmp175_);
2723
_vala_code_node_unref0 (_tmp175_);
2724
_tmp176_ = vala_object_type_get_type_symbol (dynamic_object_type);
2725
_tmp177_ = vala_symbol_get_scope ((ValaSymbol*) _tmp176_);
2726
vala_scope_add (_tmp177_, NULL, (ValaSymbol*) m);
2701
_tmp160_ = vala_parameter_new_with_ellipsis (NULL);
2702
_tmp161_ = _tmp160_;
2703
vala_method_add_parameter ((ValaMethod*) m, _tmp161_);
2704
_vala_code_node_unref0 (_tmp161_);
2705
_tmp162_ = vala_object_type_get_type_symbol (dynamic_object_type);
2706
_tmp163_ = vala_symbol_get_scope ((ValaSymbol*) _tmp162_);
2707
vala_scope_add (_tmp163_, NULL, (ValaSymbol*) m);
2727
2708
vala_expression_set_symbol_reference ((ValaExpression*) self, (ValaSymbol*) m);
2728
2709
_vala_code_node_unref0 (err);
2729
2710
_vala_code_node_unref0 (m);
2732
2713
_vala_code_node_unref0 (invoc);
2734
ValaCodeNode* _tmp178_ = NULL;
2735
_tmp178_ = vala_code_node_get_parent_node ((ValaCodeNode*) self);
2736
if (VALA_IS_ASSIGNMENT (_tmp178_)) {
2737
ValaCodeNode* _tmp179_ = NULL;
2738
ValaAssignment* _tmp180_;
2715
ValaCodeNode* _tmp164_ = NULL;
2716
_tmp164_ = vala_code_node_get_parent_node ((ValaCodeNode*) self);
2717
if (VALA_IS_ASSIGNMENT (_tmp164_)) {
2718
ValaCodeNode* _tmp165_ = NULL;
2719
ValaAssignment* _tmp166_;
2739
2720
ValaAssignment* a;
2740
gboolean _tmp181_ = FALSE;
2741
ValaExpression* _tmp182_ = NULL;
2742
_tmp179_ = vala_code_node_get_parent_node ((ValaCodeNode*) self);
2743
_tmp180_ = _vala_code_node_ref0 (VALA_ASSIGNMENT (_tmp179_));
2745
_tmp182_ = vala_assignment_get_left (a);
2746
if (_tmp182_ == VALA_EXPRESSION (self)) {
2747
gboolean _tmp183_ = FALSE;
2748
ValaAssignmentOperator _tmp184_;
2749
_tmp184_ = vala_assignment_get_operator (a);
2750
if (_tmp184_ == VALA_ASSIGNMENT_OPERATOR_ADD) {
2721
gboolean _tmp167_ = FALSE;
2722
ValaExpression* _tmp168_ = NULL;
2723
_tmp165_ = vala_code_node_get_parent_node ((ValaCodeNode*) self);
2724
_tmp166_ = _vala_code_node_ref0 (VALA_ASSIGNMENT (_tmp165_));
2726
_tmp168_ = vala_assignment_get_left (a);
2727
if (_tmp168_ == VALA_EXPRESSION (self)) {
2728
gboolean _tmp169_ = FALSE;
2729
ValaAssignmentOperator _tmp170_;
2730
_tmp170_ = vala_assignment_get_operator (a);
2731
if (_tmp170_ == VALA_ASSIGNMENT_OPERATOR_ADD) {
2753
ValaAssignmentOperator _tmp185_;
2754
_tmp185_ = vala_assignment_get_operator (a);
2755
_tmp183_ = _tmp185_ == VALA_ASSIGNMENT_OPERATOR_SUB;
2734
ValaAssignmentOperator _tmp171_;
2735
_tmp171_ = vala_assignment_get_operator (a);
2736
_tmp169_ = _tmp171_ == VALA_ASSIGNMENT_OPERATOR_SUB;
2757
_tmp181_ = _tmp183_;
2738
_tmp167_ = _tmp169_;
2762
ValaExpression* _tmp186_ = NULL;
2763
ValaDataType* _tmp187_ = NULL;
2764
ValaVoidType* _tmp188_ = NULL;
2765
ValaVoidType* _tmp189_;
2766
ValaSourceReference* _tmp190_ = NULL;
2767
ValaDynamicSignal* _tmp191_ = NULL;
2768
ValaDynamicSignal* _tmp192_;
2743
ValaExpression* _tmp172_ = NULL;
2744
ValaDataType* _tmp173_ = NULL;
2745
ValaVoidType* _tmp174_ = NULL;
2746
ValaVoidType* _tmp175_;
2747
ValaSourceReference* _tmp176_ = NULL;
2748
ValaDynamicSignal* _tmp177_ = NULL;
2749
ValaDynamicSignal* _tmp178_;
2769
2750
ValaDynamicSignal* s;
2770
ValaExpression* _tmp193_ = NULL;
2771
ValaObjectTypeSymbol* _tmp194_ = NULL;
2772
ValaScope* _tmp195_ = NULL;
2773
_tmp186_ = vala_member_access_get_inner (self);
2774
_tmp187_ = vala_expression_get_value_type (_tmp186_);
2775
_tmp188_ = vala_void_type_new (NULL);
2776
_tmp189_ = _tmp188_;
2777
_tmp190_ = vala_code_node_get_source_reference ((ValaCodeNode*) self);
2778
_tmp191_ = vala_dynamic_signal_new (_tmp187_, self->priv->_member_name, (ValaDataType*) _tmp189_, _tmp190_, NULL);
2779
s = (_tmp192_ = _tmp191_, _vala_code_node_unref0 (_tmp189_), _tmp192_);
2780
_tmp193_ = vala_assignment_get_right (a);
2781
vala_dynamic_signal_set_handler (s, _tmp193_);
2751
ValaExpression* _tmp179_ = NULL;
2752
ValaObjectTypeSymbol* _tmp180_ = NULL;
2753
ValaScope* _tmp181_ = NULL;
2754
_tmp172_ = vala_member_access_get_inner (self);
2755
_tmp173_ = vala_expression_get_value_type (_tmp172_);
2756
_tmp174_ = vala_void_type_new (NULL);
2757
_tmp175_ = _tmp174_;
2758
_tmp176_ = vala_code_node_get_source_reference ((ValaCodeNode*) self);
2759
_tmp177_ = vala_dynamic_signal_new (_tmp173_, self->priv->_member_name, (ValaDataType*) _tmp175_, _tmp176_, NULL);
2760
_tmp178_ = _tmp177_;
2761
_vala_code_node_unref0 (_tmp175_);
2763
_tmp179_ = vala_assignment_get_right (a);
2764
vala_dynamic_signal_set_handler (s, _tmp179_);
2782
2765
vala_symbol_set_access ((ValaSymbol*) s, VALA_SYMBOL_ACCESSIBILITY_PUBLIC);
2783
_tmp194_ = vala_object_type_get_type_symbol (dynamic_object_type);
2784
_tmp195_ = vala_symbol_get_scope ((ValaSymbol*) _tmp194_);
2785
vala_scope_add (_tmp195_, NULL, (ValaSymbol*) s);
2766
_tmp180_ = vala_object_type_get_type_symbol (dynamic_object_type);
2767
_tmp181_ = vala_symbol_get_scope ((ValaSymbol*) _tmp180_);
2768
vala_scope_add (_tmp181_, NULL, (ValaSymbol*) s);
2786
2769
vala_expression_set_symbol_reference ((ValaExpression*) self, (ValaSymbol*) s);
2787
2770
_vala_code_node_unref0 (s);
2789
ValaExpression* _tmp196_ = NULL;
2790
_tmp196_ = vala_assignment_get_left (a);
2791
if (_tmp196_ == VALA_EXPRESSION (self)) {
2792
ValaExpression* _tmp197_ = NULL;
2793
ValaDataType* _tmp198_ = NULL;
2794
ValaSourceReference* _tmp199_ = NULL;
2795
ValaDynamicProperty* _tmp200_ = NULL;
2772
ValaExpression* _tmp182_ = NULL;
2773
_tmp182_ = vala_assignment_get_left (a);
2774
if (_tmp182_ == VALA_EXPRESSION (self)) {
2775
ValaExpression* _tmp183_ = NULL;
2776
ValaDataType* _tmp184_ = NULL;
2777
ValaSourceReference* _tmp185_ = NULL;
2778
ValaDynamicProperty* _tmp186_ = NULL;
2796
2779
ValaDynamicProperty* prop;
2797
ValaSourceReference* _tmp201_ = NULL;
2798
ValaPropertyAccessor* _tmp202_ = NULL;
2799
ValaPropertyAccessor* _tmp203_;
2800
ValaExpression* _tmp204_ = NULL;
2801
ValaDataType* _tmp205_ = NULL;
2802
ValaTypeSymbol* _tmp206_ = NULL;
2803
ValaScope* _tmp207_ = NULL;
2804
ValaObjectTypeSymbol* _tmp208_ = NULL;
2805
ValaScope* _tmp209_ = NULL;
2806
_tmp197_ = vala_member_access_get_inner (self);
2807
_tmp198_ = vala_expression_get_value_type (_tmp197_);
2808
_tmp199_ = vala_code_node_get_source_reference ((ValaCodeNode*) self);
2809
_tmp200_ = vala_dynamic_property_new (_tmp198_, self->priv->_member_name, _tmp199_, NULL);
2780
ValaSourceReference* _tmp187_ = NULL;
2781
ValaPropertyAccessor* _tmp188_ = NULL;
2782
ValaPropertyAccessor* _tmp189_;
2783
ValaExpression* _tmp190_ = NULL;
2784
ValaDataType* _tmp191_ = NULL;
2785
ValaTypeSymbol* _tmp192_ = NULL;
2786
ValaScope* _tmp193_ = NULL;
2787
ValaObjectTypeSymbol* _tmp194_ = NULL;
2788
ValaScope* _tmp195_ = NULL;
2789
_tmp183_ = vala_member_access_get_inner (self);
2790
_tmp184_ = vala_expression_get_value_type (_tmp183_);
2791
_tmp185_ = vala_code_node_get_source_reference ((ValaCodeNode*) self);
2792
_tmp186_ = vala_dynamic_property_new (_tmp184_, self->priv->_member_name, _tmp185_, NULL);
2811
2794
vala_symbol_set_access ((ValaSymbol*) prop, VALA_SYMBOL_ACCESSIBILITY_PUBLIC);
2812
_tmp201_ = vala_code_node_get_source_reference ((ValaCodeNode*) prop);
2813
_tmp202_ = vala_property_accessor_new (FALSE, TRUE, FALSE, NULL, NULL, _tmp201_, NULL);
2814
_tmp203_ = _tmp202_;
2815
vala_property_set_set_accessor ((ValaProperty*) prop, _tmp203_);
2816
_vala_code_node_unref0 (_tmp203_);
2817
_tmp204_ = vala_member_access_get_inner (self);
2818
_tmp205_ = vala_expression_get_value_type (_tmp204_);
2819
_tmp206_ = vala_data_type_get_data_type (_tmp205_);
2820
_tmp207_ = vala_symbol_get_scope ((ValaSymbol*) _tmp206_);
2821
vala_symbol_set_owner ((ValaSymbol*) prop, _tmp207_);
2822
_tmp208_ = vala_object_type_get_type_symbol (dynamic_object_type);
2823
_tmp209_ = vala_symbol_get_scope ((ValaSymbol*) _tmp208_);
2824
vala_scope_add (_tmp209_, NULL, (ValaSymbol*) prop);
2795
_tmp187_ = vala_code_node_get_source_reference ((ValaCodeNode*) prop);
2796
_tmp188_ = vala_property_accessor_new (FALSE, TRUE, FALSE, NULL, NULL, _tmp187_, NULL);
2797
_tmp189_ = _tmp188_;
2798
vala_property_set_set_accessor ((ValaProperty*) prop, _tmp189_);
2799
_vala_code_node_unref0 (_tmp189_);
2800
_tmp190_ = vala_member_access_get_inner (self);
2801
_tmp191_ = vala_expression_get_value_type (_tmp190_);
2802
_tmp192_ = vala_data_type_get_data_type (_tmp191_);
2803
_tmp193_ = vala_symbol_get_scope ((ValaSymbol*) _tmp192_);
2804
vala_symbol_set_owner ((ValaSymbol*) prop, _tmp193_);
2805
_tmp194_ = vala_object_type_get_type_symbol (dynamic_object_type);
2806
_tmp195_ = vala_symbol_get_scope ((ValaSymbol*) _tmp194_);
2807
vala_scope_add (_tmp195_, NULL, (ValaSymbol*) prop);
2825
2808
vala_expression_set_symbol_reference ((ValaExpression*) self, (ValaSymbol*) prop);
2826
2809
_vala_code_node_unref0 (prop);
2829
2812
_vala_code_node_unref0 (a);
2831
gboolean _tmp210_ = FALSE;
2832
gboolean _tmp211_ = FALSE;
2833
ValaCodeNode* _tmp212_ = NULL;
2834
_tmp212_ = vala_code_node_get_parent_node ((ValaCodeNode*) self);
2835
if (VALA_IS_MEMBER_ACCESS (_tmp212_)) {
2836
ValaExpression* _tmp213_ = NULL;
2837
_tmp213_ = vala_member_access_get_inner (self);
2838
_tmp211_ = VALA_IS_MEMBER_ACCESS (_tmp213_);
2843
ValaCodeNode* _tmp214_ = NULL;
2844
ValaCodeNode* _tmp215_ = NULL;
2845
_tmp214_ = vala_code_node_get_parent_node ((ValaCodeNode*) self);
2846
_tmp215_ = vala_code_node_get_parent_node (_tmp214_);
2847
_tmp210_ = VALA_IS_METHOD_CALL (_tmp215_);
2852
ValaCodeNode* _tmp216_ = NULL;
2853
ValaMemberAccess* _tmp217_;
2814
gboolean _tmp196_ = FALSE;
2815
gboolean _tmp197_ = FALSE;
2816
ValaCodeNode* _tmp198_ = NULL;
2817
_tmp198_ = vala_code_node_get_parent_node ((ValaCodeNode*) self);
2818
if (VALA_IS_MEMBER_ACCESS (_tmp198_)) {
2819
ValaExpression* _tmp199_ = NULL;
2820
_tmp199_ = vala_member_access_get_inner (self);
2821
_tmp197_ = VALA_IS_MEMBER_ACCESS (_tmp199_);
2826
ValaCodeNode* _tmp200_ = NULL;
2827
ValaCodeNode* _tmp201_ = NULL;
2828
_tmp200_ = vala_code_node_get_parent_node ((ValaCodeNode*) self);
2829
_tmp201_ = vala_code_node_get_parent_node (_tmp200_);
2830
_tmp196_ = VALA_IS_METHOD_CALL (_tmp201_);
2835
ValaCodeNode* _tmp202_ = NULL;
2836
ValaMemberAccess* _tmp203_;
2854
2837
ValaMemberAccess* ma;
2855
gboolean _tmp218_ = FALSE;
2856
_tmp216_ = vala_code_node_get_parent_node ((ValaCodeNode*) self);
2857
_tmp217_ = _vala_code_node_ref0 (VALA_MEMBER_ACCESS (_tmp216_));
2838
gboolean _tmp204_ = FALSE;
2839
_tmp202_ = vala_code_node_get_parent_node ((ValaCodeNode*) self);
2840
_tmp203_ = _vala_code_node_ref0 (VALA_MEMBER_ACCESS (_tmp202_));
2859
2842
if (g_strcmp0 (ma->priv->_member_name, "connect") == 0) {
2862
_tmp218_ = g_strcmp0 (ma->priv->_member_name, "connect_after") == 0;
2845
_tmp204_ = g_strcmp0 (ma->priv->_member_name, "connect_after") == 0;
2865
ValaExpression* _tmp219_ = NULL;
2866
ValaDataType* _tmp220_ = NULL;
2867
ValaVoidType* _tmp221_ = NULL;
2868
ValaVoidType* _tmp222_;
2869
ValaSourceReference* _tmp223_ = NULL;
2870
ValaDynamicSignal* _tmp224_ = NULL;
2871
ValaDynamicSignal* _tmp225_;
2848
ValaExpression* _tmp205_ = NULL;
2849
ValaDataType* _tmp206_ = NULL;
2850
ValaVoidType* _tmp207_ = NULL;
2851
ValaVoidType* _tmp208_;
2852
ValaSourceReference* _tmp209_ = NULL;
2853
ValaDynamicSignal* _tmp210_ = NULL;
2854
ValaDynamicSignal* _tmp211_;
2872
2855
ValaDynamicSignal* s;
2873
ValaCodeNode* _tmp226_ = NULL;
2874
ValaCodeNode* _tmp227_ = NULL;
2875
ValaMethodCall* _tmp228_;
2856
ValaCodeNode* _tmp212_ = NULL;
2857
ValaCodeNode* _tmp213_ = NULL;
2858
ValaMethodCall* _tmp214_;
2876
2859
ValaMethodCall* mcall;
2877
ValaList* _tmp229_ = NULL;
2881
ValaObjectTypeSymbol* _tmp237_ = NULL;
2882
ValaScope* _tmp238_ = NULL;
2883
_tmp219_ = vala_member_access_get_inner (self);
2884
_tmp220_ = vala_expression_get_value_type (_tmp219_);
2885
_tmp221_ = vala_void_type_new (NULL);
2886
_tmp222_ = _tmp221_;
2887
_tmp223_ = vala_code_node_get_source_reference ((ValaCodeNode*) self);
2888
_tmp224_ = vala_dynamic_signal_new (_tmp220_, self->priv->_member_name, (ValaDataType*) _tmp222_, _tmp223_, NULL);
2889
s = (_tmp225_ = _tmp224_, _vala_code_node_unref0 (_tmp222_), _tmp225_);
2890
_tmp226_ = vala_code_node_get_parent_node ((ValaCodeNode*) self);
2891
_tmp227_ = vala_code_node_get_parent_node (_tmp226_);
2892
_tmp228_ = _vala_code_node_ref0 (VALA_METHOD_CALL (_tmp227_));
2894
_tmp229_ = vala_method_call_get_argument_list (mcall);
2895
_tmp230_ = _tmp229_;
2896
_tmp231_ = vala_collection_get_size ((ValaCollection*) _tmp230_);
2897
if ((_tmp232_ = _tmp231_ > 0, _vala_iterable_unref0 (_tmp230_), _tmp232_)) {
2898
ValaList* _tmp233_ = NULL;
2900
gpointer _tmp235_ = NULL;
2901
ValaExpression* _tmp236_;
2902
_tmp233_ = vala_method_call_get_argument_list (mcall);
2903
_tmp234_ = _tmp233_;
2904
_tmp235_ = vala_list_get (_tmp234_, 0);
2905
_tmp236_ = (ValaExpression*) _tmp235_;
2906
vala_dynamic_signal_set_handler (s, _tmp236_);
2907
_vala_code_node_unref0 (_tmp236_);
2908
_vala_iterable_unref0 (_tmp234_);
2860
ValaList* _tmp215_ = NULL;
2864
ValaObjectTypeSymbol* _tmp223_ = NULL;
2865
ValaScope* _tmp224_ = NULL;
2866
_tmp205_ = vala_member_access_get_inner (self);
2867
_tmp206_ = vala_expression_get_value_type (_tmp205_);
2868
_tmp207_ = vala_void_type_new (NULL);
2869
_tmp208_ = _tmp207_;
2870
_tmp209_ = vala_code_node_get_source_reference ((ValaCodeNode*) self);
2871
_tmp210_ = vala_dynamic_signal_new (_tmp206_, self->priv->_member_name, (ValaDataType*) _tmp208_, _tmp209_, NULL);
2872
_tmp211_ = _tmp210_;
2873
_vala_code_node_unref0 (_tmp208_);
2875
_tmp212_ = vala_code_node_get_parent_node ((ValaCodeNode*) self);
2876
_tmp213_ = vala_code_node_get_parent_node (_tmp212_);
2877
_tmp214_ = _vala_code_node_ref0 (VALA_METHOD_CALL (_tmp213_));
2879
_tmp215_ = vala_method_call_get_argument_list (mcall);
2880
_tmp216_ = _tmp215_;
2881
_tmp217_ = vala_collection_get_size ((ValaCollection*) _tmp216_);
2882
_tmp218_ = _tmp217_ > 0;
2883
_vala_iterable_unref0 (_tmp216_);
2885
ValaList* _tmp219_ = NULL;
2887
gpointer _tmp221_ = NULL;
2888
ValaExpression* _tmp222_;
2889
_tmp219_ = vala_method_call_get_argument_list (mcall);
2890
_tmp220_ = _tmp219_;
2891
_tmp221_ = vala_list_get (_tmp220_, 0);
2892
_tmp222_ = (ValaExpression*) _tmp221_;
2893
vala_dynamic_signal_set_handler (s, _tmp222_);
2894
_vala_code_node_unref0 (_tmp222_);
2895
_vala_iterable_unref0 (_tmp220_);
2910
2897
vala_symbol_set_access ((ValaSymbol*) s, VALA_SYMBOL_ACCESSIBILITY_PUBLIC);
2911
_tmp237_ = vala_object_type_get_type_symbol (dynamic_object_type);
2912
_tmp238_ = vala_symbol_get_scope ((ValaSymbol*) _tmp237_);
2913
vala_scope_add (_tmp238_, NULL, (ValaSymbol*) s);
2898
_tmp223_ = vala_object_type_get_type_symbol (dynamic_object_type);
2899
_tmp224_ = vala_symbol_get_scope ((ValaSymbol*) _tmp223_);
2900
vala_scope_add (_tmp224_, NULL, (ValaSymbol*) s);
2914
2901
vala_expression_set_symbol_reference ((ValaExpression*) self, (ValaSymbol*) s);
2915
2902
_vala_code_node_unref0 (mcall);
2916
2903
_vala_code_node_unref0 (s);
2922
_tmp239_ = vala_expression_get_symbol_reference ((ValaExpression*) self);
2923
if (_tmp239_ == NULL) {
2924
ValaExpression* _tmp240_ = NULL;
2925
ValaDataType* _tmp241_ = NULL;
2926
ValaSourceReference* _tmp242_ = NULL;
2927
ValaDynamicProperty* _tmp243_ = NULL;
2909
_tmp225_ = vala_expression_get_symbol_reference ((ValaExpression*) self);
2910
if (_tmp225_ == NULL) {
2911
ValaExpression* _tmp226_ = NULL;
2912
ValaDataType* _tmp227_ = NULL;
2913
ValaSourceReference* _tmp228_ = NULL;
2914
ValaDynamicProperty* _tmp229_ = NULL;
2928
2915
ValaDynamicProperty* prop;
2929
ValaDataType* _tmp244_ = NULL;
2930
ValaDataType* _tmp250_ = NULL;
2931
ValaDataType* _tmp251_ = NULL;
2932
ValaDataType* _tmp252_;
2933
ValaSourceReference* _tmp253_ = NULL;
2934
ValaPropertyAccessor* _tmp254_ = NULL;
2935
ValaPropertyAccessor* _tmp255_;
2936
ValaExpression* _tmp256_ = NULL;
2937
ValaDataType* _tmp257_ = NULL;
2938
ValaTypeSymbol* _tmp258_ = NULL;
2939
ValaScope* _tmp259_ = NULL;
2940
ValaObjectTypeSymbol* _tmp260_ = NULL;
2941
ValaScope* _tmp261_ = NULL;
2942
_tmp240_ = vala_member_access_get_inner (self);
2943
_tmp241_ = vala_expression_get_value_type (_tmp240_);
2944
_tmp242_ = vala_code_node_get_source_reference ((ValaCodeNode*) self);
2945
_tmp243_ = vala_dynamic_property_new (_tmp241_, self->priv->_member_name, _tmp242_, NULL);
2947
_tmp244_ = vala_expression_get_target_type ((ValaExpression*) self);
2948
if (_tmp244_ != NULL) {
2949
ValaDataType* _tmp245_ = NULL;
2950
_tmp245_ = vala_expression_get_target_type ((ValaExpression*) self);
2951
vala_property_set_property_type ((ValaProperty*) prop, _tmp245_);
2916
ValaDataType* _tmp230_ = NULL;
2917
ValaDataType* _tmp236_ = NULL;
2918
ValaDataType* _tmp237_ = NULL;
2919
ValaDataType* _tmp238_;
2920
ValaSourceReference* _tmp239_ = NULL;
2921
ValaPropertyAccessor* _tmp240_ = NULL;
2922
ValaPropertyAccessor* _tmp241_;
2923
ValaExpression* _tmp242_ = NULL;
2924
ValaDataType* _tmp243_ = NULL;
2925
ValaTypeSymbol* _tmp244_ = NULL;
2926
ValaScope* _tmp245_ = NULL;
2927
ValaObjectTypeSymbol* _tmp246_ = NULL;
2928
ValaScope* _tmp247_ = NULL;
2929
_tmp226_ = vala_member_access_get_inner (self);
2930
_tmp227_ = vala_expression_get_value_type (_tmp226_);
2931
_tmp228_ = vala_code_node_get_source_reference ((ValaCodeNode*) self);
2932
_tmp229_ = vala_dynamic_property_new (_tmp227_, self->priv->_member_name, _tmp228_, NULL);
2934
_tmp230_ = vala_expression_get_target_type ((ValaExpression*) self);
2935
if (_tmp230_ != NULL) {
2936
ValaDataType* _tmp231_ = NULL;
2937
_tmp231_ = vala_expression_get_target_type ((ValaExpression*) self);
2938
vala_property_set_property_type ((ValaProperty*) prop, _tmp231_);
2953
ValaExpression* _tmp246_ = NULL;
2954
ValaDataType* _tmp247_ = NULL;
2955
ValaDataType* _tmp248_ = NULL;
2956
ValaDataType* _tmp249_;
2957
_tmp246_ = vala_member_access_get_inner (self);
2958
_tmp247_ = vala_expression_get_value_type (_tmp246_);
2959
_tmp248_ = vala_data_type_copy (_tmp247_);
2960
_tmp249_ = _tmp248_;
2961
vala_property_set_property_type ((ValaProperty*) prop, _tmp249_);
2962
_vala_code_node_unref0 (_tmp249_);
2940
ValaExpression* _tmp232_ = NULL;
2941
ValaDataType* _tmp233_ = NULL;
2942
ValaDataType* _tmp234_ = NULL;
2943
ValaDataType* _tmp235_;
2944
_tmp232_ = vala_member_access_get_inner (self);
2945
_tmp233_ = vala_expression_get_value_type (_tmp232_);
2946
_tmp234_ = vala_data_type_copy (_tmp233_);
2947
_tmp235_ = _tmp234_;
2948
vala_property_set_property_type ((ValaProperty*) prop, _tmp235_);
2949
_vala_code_node_unref0 (_tmp235_);
2964
2951
vala_symbol_set_access ((ValaSymbol*) prop, VALA_SYMBOL_ACCESSIBILITY_PUBLIC);
2965
_tmp250_ = vala_property_get_property_type ((ValaProperty*) prop);
2966
_tmp251_ = vala_data_type_copy (_tmp250_);
2967
_tmp252_ = _tmp251_;
2968
_tmp253_ = vala_code_node_get_source_reference ((ValaCodeNode*) prop);
2969
_tmp254_ = vala_property_accessor_new (TRUE, FALSE, FALSE, _tmp252_, NULL, _tmp253_, NULL);
2970
_tmp255_ = _tmp254_;
2971
vala_property_set_get_accessor ((ValaProperty*) prop, _tmp255_);
2972
_vala_code_node_unref0 (_tmp255_);
2973
_vala_code_node_unref0 (_tmp252_);
2974
_tmp256_ = vala_member_access_get_inner (self);
2975
_tmp257_ = vala_expression_get_value_type (_tmp256_);
2976
_tmp258_ = vala_data_type_get_data_type (_tmp257_);
2977
_tmp259_ = vala_symbol_get_scope ((ValaSymbol*) _tmp258_);
2978
vala_symbol_set_owner ((ValaSymbol*) prop, _tmp259_);
2979
_tmp260_ = vala_object_type_get_type_symbol (dynamic_object_type);
2980
_tmp261_ = vala_symbol_get_scope ((ValaSymbol*) _tmp260_);
2981
vala_scope_add (_tmp261_, NULL, (ValaSymbol*) prop);
2952
_tmp236_ = vala_property_get_property_type ((ValaProperty*) prop);
2953
_tmp237_ = vala_data_type_copy (_tmp236_);
2954
_tmp238_ = _tmp237_;
2955
_tmp239_ = vala_code_node_get_source_reference ((ValaCodeNode*) prop);
2956
_tmp240_ = vala_property_accessor_new (TRUE, FALSE, FALSE, _tmp238_, NULL, _tmp239_, NULL);
2957
_tmp241_ = _tmp240_;
2958
vala_property_set_get_accessor ((ValaProperty*) prop, _tmp241_);
2959
_vala_code_node_unref0 (_tmp241_);
2960
_vala_code_node_unref0 (_tmp238_);
2961
_tmp242_ = vala_member_access_get_inner (self);
2962
_tmp243_ = vala_expression_get_value_type (_tmp242_);
2963
_tmp244_ = vala_data_type_get_data_type (_tmp243_);
2964
_tmp245_ = vala_symbol_get_scope ((ValaSymbol*) _tmp244_);
2965
vala_symbol_set_owner ((ValaSymbol*) prop, _tmp245_);
2966
_tmp246_ = vala_object_type_get_type_symbol (dynamic_object_type);
2967
_tmp247_ = vala_symbol_get_scope ((ValaSymbol*) _tmp246_);
2968
vala_scope_add (_tmp247_, NULL, (ValaSymbol*) prop);
2982
2969
vala_expression_set_symbol_reference ((ValaExpression*) self, (ValaSymbol*) prop);
2983
2970
_vala_code_node_unref0 (prop);
2985
_tmp262_ = vala_expression_get_symbol_reference ((ValaExpression*) self);
2986
if (_tmp262_ != NULL) {
2972
_tmp248_ = vala_expression_get_symbol_reference ((ValaExpression*) self);
2973
if (_tmp248_ != NULL) {
2987
2974
may_access_instance_members = TRUE;
2988
2975
may_access_klass_members = TRUE;
3129
3112
_vala_code_node_unref0 (local);
3131
3114
if (VALA_IS_PARAMETER (member)) {
3132
ValaParameter* _tmp299_;
3115
ValaParameter* _tmp282_;
3133
3116
ValaParameter* param;
3134
ValaSymbol* _tmp300_ = NULL;
3135
ValaSymbol* _tmp301_;
3136
ValaMethod* _tmp302_;
3117
ValaSymbol* _tmp283_ = NULL;
3118
ValaSymbol* _tmp284_;
3119
ValaMethod* _tmp285_;
3138
gboolean _tmp303_ = FALSE;
3139
gboolean _tmp304_ = FALSE;
3140
_tmp299_ = _vala_code_node_ref0 (VALA_PARAMETER (member));
3142
_tmp300_ = vala_symbol_get_parent_symbol ((ValaSymbol*) param);
3143
_tmp302_ = _vala_code_node_ref0 ((_tmp301_ = _tmp300_, VALA_IS_METHOD (_tmp301_) ? ((ValaMethod*) _tmp301_) : NULL));
3121
gboolean _tmp286_ = FALSE;
3122
gboolean _tmp287_ = FALSE;
3123
_tmp282_ = _vala_code_node_ref0 (VALA_PARAMETER (member));
3125
_tmp283_ = vala_symbol_get_parent_symbol ((ValaSymbol*) param);
3126
_tmp284_ = _tmp283_;
3127
_tmp285_ = _vala_code_node_ref0 (VALA_IS_METHOD (_tmp284_) ? ((ValaMethod*) _tmp284_) : NULL);
3145
3129
if (m != NULL) {
3146
ValaSemanticAnalyzer* _tmp305_ = NULL;
3147
ValaSymbol* _tmp306_ = NULL;
3148
_tmp305_ = vala_code_context_get_analyzer (context);
3149
_tmp306_ = vala_semantic_analyzer_get_current_method_or_property_accessor (_tmp305_);
3150
_tmp304_ = VALA_SYMBOL (m) != _tmp306_;
3155
ValaParameter* _tmp307_ = NULL;
3156
_tmp307_ = vala_method_get_this_parameter (m);
3157
_tmp303_ = param != _tmp307_;
3162
ValaSemanticAnalyzer* _tmp308_ = NULL;
3163
ValaSymbol* _tmp309_ = NULL;
3164
ValaSymbol* _tmp310_;
3130
ValaSemanticAnalyzer* _tmp288_ = NULL;
3131
ValaSymbol* _tmp289_ = NULL;
3132
_tmp288_ = vala_code_context_get_analyzer (context);
3133
_tmp289_ = vala_semantic_analyzer_get_current_method_or_property_accessor (_tmp288_);
3134
_tmp287_ = VALA_SYMBOL (m) != _tmp289_;
3139
ValaParameter* _tmp290_ = NULL;
3140
_tmp290_ = vala_method_get_this_parameter (m);
3141
_tmp286_ = param != _tmp290_;
3146
ValaSemanticAnalyzer* _tmp291_ = NULL;
3147
ValaSymbol* _tmp292_ = NULL;
3148
ValaSymbol* _tmp293_;
3165
3149
ValaSymbol* sym;
3166
ValaBlock* _tmp316_ = NULL;
3167
ValaParameterDirection _tmp317_;
3168
_tmp308_ = vala_code_context_get_analyzer (context);
3169
_tmp309_ = vala_semantic_analyzer_get_current_method_or_property_accessor (_tmp308_);
3170
_tmp310_ = _vala_code_node_ref0 (_tmp309_);
3150
ValaBlock* _tmp298_ = NULL;
3151
ValaParameterDirection _tmp299_;
3152
_tmp291_ = vala_code_context_get_analyzer (context);
3153
_tmp292_ = vala_semantic_analyzer_get_current_method_or_property_accessor (_tmp291_);
3154
_tmp293_ = _vala_code_node_ref0 (_tmp292_);
3173
ValaSymbol* _tmp311_;
3174
ValaMethod* _tmp312_;
3157
ValaSymbol* _tmp294_;
3158
ValaMethod* _tmp295_;
3175
3159
ValaMethod* method;
3176
ValaSymbol* _tmp313_ = NULL;
3177
ValaSymbol* _tmp314_;
3178
ValaSymbol* _tmp315_;
3160
ValaSymbol* _tmp296_ = NULL;
3161
ValaSymbol* _tmp297_;
3179
3162
if (!(sym != VALA_SYMBOL (m))) {
3182
_tmp312_ = _vala_code_node_ref0 ((_tmp311_ = sym, VALA_IS_METHOD (_tmp311_) ? ((ValaMethod*) _tmp311_) : NULL));
3166
_tmp295_ = _vala_code_node_ref0 (VALA_IS_METHOD (_tmp294_) ? ((ValaMethod*) _tmp294_) : NULL);
3184
3168
if (method != NULL) {
3185
3169
vala_method_set_closure (method, TRUE);
3187
_tmp313_ = vala_symbol_get_parent_symbol (sym);
3188
_tmp314_ = _vala_code_node_ref0 (_tmp313_);
3189
_tmp315_ = _tmp314_;
3171
_tmp296_ = vala_symbol_get_parent_symbol (sym);
3172
_tmp297_ = _vala_code_node_ref0 (_tmp296_);
3190
3173
_vala_code_node_unref0 (sym);
3192
3175
_vala_code_node_unref0 (method);
3194
3177
vala_parameter_set_captured (param, TRUE);
3195
_tmp316_ = vala_subroutine_get_body ((ValaSubroutine*) m);
3196
vala_block_set_captured (_tmp316_, TRUE);
3197
_tmp317_ = vala_parameter_get_direction (param);
3198
if (_tmp317_ != VALA_PARAMETER_DIRECTION_IN) {
3199
ValaSourceReference* _tmp318_ = NULL;
3200
gchar* _tmp319_ = NULL;
3202
gchar* _tmp321_ = NULL;
3178
_tmp298_ = vala_subroutine_get_body ((ValaSubroutine*) m);
3179
vala_block_set_captured (_tmp298_, TRUE);
3180
_tmp299_ = vala_parameter_get_direction (param);
3181
if (_tmp299_ != VALA_PARAMETER_DIRECTION_IN) {
3182
ValaSourceReference* _tmp300_ = NULL;
3183
gchar* _tmp301_ = NULL;
3185
gchar* _tmp303_ = NULL;
3204
3187
vala_code_node_set_error ((ValaCodeNode*) self, TRUE);
3205
_tmp318_ = vala_code_node_get_source_reference ((ValaCodeNode*) self);
3206
_tmp319_ = vala_symbol_get_full_name ((ValaSymbol*) param);
3207
_tmp320_ = _tmp319_;
3208
_tmp321_ = g_strdup_printf ("Cannot capture reference or output parameter `%s'", _tmp320_);
3209
_tmp322_ = _tmp321_;
3210
vala_report_error (_tmp318_, _tmp322_);
3211
_g_free0 (_tmp322_);
3212
_g_free0 (_tmp320_);
3188
_tmp300_ = vala_code_node_get_source_reference ((ValaCodeNode*) self);
3189
_tmp301_ = vala_symbol_get_full_name ((ValaSymbol*) param);
3190
_tmp302_ = _tmp301_;
3191
_tmp303_ = g_strdup_printf ("Cannot capture reference or output parameter `%s'", _tmp302_);
3192
_tmp304_ = _tmp303_;
3193
vala_report_error (_tmp300_, _tmp304_);
3194
_g_free0 (_tmp304_);
3195
_g_free0 (_tmp302_);
3214
3197
_vala_code_node_unref0 (sym);
3216
ValaSymbol* _tmp323_ = NULL;
3217
ValaSymbol* _tmp324_ = NULL;
3218
ValaSymbol* _tmp325_;
3219
ValaPropertyAccessor* _tmp326_;
3199
ValaSymbol* _tmp305_ = NULL;
3200
ValaSymbol* _tmp306_ = NULL;
3201
ValaSymbol* _tmp307_;
3202
ValaPropertyAccessor* _tmp308_;
3220
3203
ValaPropertyAccessor* acc;
3221
gboolean _tmp327_ = FALSE;
3222
gboolean _tmp328_ = FALSE;
3223
_tmp323_ = vala_symbol_get_parent_symbol ((ValaSymbol*) param);
3224
_tmp324_ = vala_symbol_get_parent_symbol (_tmp323_);
3225
_tmp326_ = _vala_code_node_ref0 ((_tmp325_ = _tmp324_, VALA_IS_PROPERTY_ACCESSOR (_tmp325_) ? ((ValaPropertyAccessor*) _tmp325_) : NULL));
3204
gboolean _tmp309_ = FALSE;
3205
gboolean _tmp310_ = FALSE;
3206
_tmp305_ = vala_symbol_get_parent_symbol ((ValaSymbol*) param);
3207
_tmp306_ = vala_symbol_get_parent_symbol (_tmp305_);
3208
_tmp307_ = _tmp306_;
3209
_tmp308_ = _vala_code_node_ref0 (VALA_IS_PROPERTY_ACCESSOR (_tmp307_) ? ((ValaPropertyAccessor*) _tmp307_) : NULL);
3227
3211
if (acc != NULL) {
3228
ValaSemanticAnalyzer* _tmp329_ = NULL;
3229
ValaSymbol* _tmp330_ = NULL;
3230
_tmp329_ = vala_code_context_get_analyzer (context);
3231
_tmp330_ = vala_semantic_analyzer_get_current_method_or_property_accessor (_tmp329_);
3232
_tmp328_ = VALA_SYMBOL (acc) != _tmp330_;
3237
ValaProperty* _tmp331_ = NULL;
3238
ValaParameter* _tmp332_ = NULL;
3239
_tmp331_ = vala_property_accessor_get_prop (acc);
3240
_tmp332_ = vala_property_get_this_parameter (_tmp331_);
3241
_tmp327_ = param != _tmp332_;
3246
ValaSemanticAnalyzer* _tmp333_ = NULL;
3247
ValaSymbol* _tmp334_ = NULL;
3248
ValaSymbol* _tmp335_;
3212
ValaSemanticAnalyzer* _tmp311_ = NULL;
3213
ValaSymbol* _tmp312_ = NULL;
3214
_tmp311_ = vala_code_context_get_analyzer (context);
3215
_tmp312_ = vala_semantic_analyzer_get_current_method_or_property_accessor (_tmp311_);
3216
_tmp310_ = VALA_SYMBOL (acc) != _tmp312_;
3221
ValaProperty* _tmp313_ = NULL;
3222
ValaParameter* _tmp314_ = NULL;
3223
_tmp313_ = vala_property_accessor_get_prop (acc);
3224
_tmp314_ = vala_property_get_this_parameter (_tmp313_);
3225
_tmp309_ = param != _tmp314_;
3230
ValaSemanticAnalyzer* _tmp315_ = NULL;
3231
ValaSymbol* _tmp316_ = NULL;
3232
ValaSymbol* _tmp317_;
3249
3233
ValaSymbol* sym;
3250
ValaBlock* _tmp341_ = NULL;
3251
_tmp333_ = vala_code_context_get_analyzer (context);
3252
_tmp334_ = vala_semantic_analyzer_get_current_method_or_property_accessor (_tmp333_);
3253
_tmp335_ = _vala_code_node_ref0 (_tmp334_);
3234
ValaBlock* _tmp322_ = NULL;
3235
_tmp315_ = vala_code_context_get_analyzer (context);
3236
_tmp316_ = vala_semantic_analyzer_get_current_method_or_property_accessor (_tmp315_);
3237
_tmp317_ = _vala_code_node_ref0 (_tmp316_);
3256
ValaSymbol* _tmp336_;
3257
ValaMethod* _tmp337_;
3240
ValaSymbol* _tmp318_;
3241
ValaMethod* _tmp319_;
3258
3242
ValaMethod* method;
3259
ValaSymbol* _tmp338_ = NULL;
3260
ValaSymbol* _tmp339_;
3261
ValaSymbol* _tmp340_;
3243
ValaSymbol* _tmp320_ = NULL;
3244
ValaSymbol* _tmp321_;
3262
3245
if (!(sym != VALA_SYMBOL (m))) {
3265
_tmp337_ = _vala_code_node_ref0 ((_tmp336_ = sym, VALA_IS_METHOD (_tmp336_) ? ((ValaMethod*) _tmp336_) : NULL));
3249
_tmp319_ = _vala_code_node_ref0 (VALA_IS_METHOD (_tmp318_) ? ((ValaMethod*) _tmp318_) : NULL);
3267
3251
if (method != NULL) {
3268
3252
vala_method_set_closure (method, TRUE);
3270
_tmp338_ = vala_symbol_get_parent_symbol (sym);
3271
_tmp339_ = _vala_code_node_ref0 (_tmp338_);
3272
_tmp340_ = _tmp339_;
3254
_tmp320_ = vala_symbol_get_parent_symbol (sym);
3255
_tmp321_ = _vala_code_node_ref0 (_tmp320_);
3273
3256
_vala_code_node_unref0 (sym);
3275
3258
_vala_code_node_unref0 (method);
3277
3260
vala_parameter_set_captured (param, TRUE);
3278
_tmp341_ = vala_subroutine_get_body ((ValaSubroutine*) acc);
3279
vala_block_set_captured (_tmp341_, TRUE);
3261
_tmp322_ = vala_subroutine_get_body ((ValaSubroutine*) acc);
3262
vala_block_set_captured (_tmp322_, TRUE);
3280
3263
_vala_code_node_unref0 (sym);
3282
3265
_vala_code_node_unref0 (acc);
3285
3268
_vala_code_node_unref0 (param);
3287
3270
if (VALA_IS_FIELD (member)) {
3288
ValaField* _tmp342_;
3271
ValaField* _tmp323_;
3290
ValaSymbolAccessibility _tmp343_;
3291
ValaMemberBinding _tmp344_;
3292
ValaMemberBinding _tmp345_;
3293
ValaDataType* _tmp346_ = NULL;
3294
_tmp342_ = _vala_code_node_ref0 (VALA_FIELD (member));
3296
_tmp343_ = vala_symbol_get_access ((ValaSymbol*) f);
3298
_tmp344_ = vala_field_get_binding (f);
3299
instance = _tmp344_ == VALA_MEMBER_BINDING_INSTANCE;
3300
_tmp345_ = vala_field_get_binding (f);
3301
klass = _tmp345_ == VALA_MEMBER_BINDING_CLASS;
3302
_tmp346_ = vala_variable_get_variable_type ((ValaVariable*) f);
3303
if (VALA_IS_GENERIC_TYPE (_tmp346_)) {
3273
ValaSymbolAccessibility _tmp324_;
3274
ValaMemberBinding _tmp325_;
3275
ValaMemberBinding _tmp326_;
3276
ValaDataType* _tmp327_ = NULL;
3277
_tmp323_ = _vala_code_node_ref0 (VALA_FIELD (member));
3279
_tmp324_ = vala_symbol_get_access ((ValaSymbol*) f);
3281
_tmp325_ = vala_field_get_binding (f);
3282
instance = _tmp325_ == VALA_MEMBER_BINDING_INSTANCE;
3283
_tmp326_ = vala_field_get_binding (f);
3284
klass = _tmp326_ == VALA_MEMBER_BINDING_CLASS;
3285
_tmp327_ = vala_variable_get_variable_type ((ValaVariable*) f);
3286
if (VALA_IS_GENERIC_TYPE (_tmp327_)) {
3304
3287
generics = TRUE;
3306
3289
_vala_code_node_unref0 (f);
3308
3291
if (VALA_IS_CONSTANT (member)) {
3309
ValaConstant* _tmp347_;
3292
ValaConstant* _tmp328_;
3310
3293
ValaConstant* c;
3311
ValaSymbolAccessibility _tmp348_;
3312
_tmp347_ = _vala_code_node_ref0 (VALA_CONSTANT (member));
3314
_tmp348_ = vala_symbol_get_access ((ValaSymbol*) c);
3294
ValaSymbolAccessibility _tmp329_;
3295
_tmp328_ = _vala_code_node_ref0 (VALA_CONSTANT (member));
3297
_tmp329_ = vala_symbol_get_access ((ValaSymbol*) c);
3316
3299
_vala_code_node_unref0 (c);
3318
3301
if (VALA_IS_METHOD (member)) {
3319
ValaMethod* _tmp349_;
3302
ValaMethod* _tmp330_;
3322
ValaSymbolAccessibility _tmp386_;
3323
ValaMemberBinding _tmp388_;
3324
ValaDataType* _tmp398_ = NULL;
3325
ValaDataType* _tmp399_;
3326
ValaGenericType* _tmp400_;
3305
ValaSymbolAccessibility _tmp360_;
3306
ValaMemberBinding _tmp362_;
3307
ValaDataType* _tmp372_ = NULL;
3308
ValaDataType* _tmp373_;
3309
ValaGenericType* _tmp374_;
3327
3310
ValaGenericType* generic_type;
3328
gboolean _tmp401_ = FALSE;
3329
_tmp349_ = _vala_code_node_ref0 (VALA_METHOD (member));
3331
_tmp350_ = vala_method_get_is_async_callback (m);
3333
ValaSemanticAnalyzer* _tmp351_ = NULL;
3334
ValaMethod* _tmp352_ = NULL;
3335
ValaMethod* _tmp353_;
3311
gboolean _tmp375_ = FALSE;
3312
_tmp330_ = _vala_code_node_ref0 (VALA_METHOD (member));
3314
_tmp331_ = vala_method_get_is_async_callback (m);
3316
ValaSemanticAnalyzer* _tmp332_ = NULL;
3317
ValaMethod* _tmp333_ = NULL;
3318
ValaMethod* _tmp334_;
3336
3319
ValaMethod* async_method;
3337
ValaSemanticAnalyzer* _tmp354_ = NULL;
3338
ValaMethod* _tmp355_ = NULL;
3339
ValaMethod* _tmp365_ = NULL;
3340
ValaMethod* _tmp366_;
3341
ValaSymbol* _tmp367_ = NULL;
3342
ValaSymbol* _tmp368_;
3343
ValaSymbol* _tmp369_;
3344
_tmp351_ = vala_code_context_get_analyzer (context);
3345
_tmp352_ = vala_semantic_analyzer_get_current_async_method (_tmp351_);
3346
_tmp353_ = _vala_code_node_ref0 (_tmp352_);
3347
async_method = _tmp353_;
3348
_tmp354_ = vala_code_context_get_analyzer (context);
3349
_tmp355_ = vala_semantic_analyzer_get_current_method (_tmp354_);
3350
if (async_method != _tmp355_) {
3351
ValaSemanticAnalyzer* _tmp356_ = NULL;
3352
ValaMethod* _tmp357_ = NULL;
3353
ValaSymbol* _tmp358_;
3320
ValaSemanticAnalyzer* _tmp335_ = NULL;
3321
ValaMethod* _tmp336_ = NULL;
3322
ValaMethod* _tmp345_ = NULL;
3323
ValaSymbol* _tmp346_ = NULL;
3324
ValaSymbol* _tmp347_;
3325
_tmp332_ = vala_code_context_get_analyzer (context);
3326
_tmp333_ = vala_semantic_analyzer_get_current_async_method (_tmp332_);
3327
_tmp334_ = _vala_code_node_ref0 (_tmp333_);
3328
async_method = _tmp334_;
3329
_tmp335_ = vala_code_context_get_analyzer (context);
3330
_tmp336_ = vala_semantic_analyzer_get_current_method (_tmp335_);
3331
if (async_method != _tmp336_) {
3332
ValaSemanticAnalyzer* _tmp337_ = NULL;
3333
ValaMethod* _tmp338_ = NULL;
3334
ValaSymbol* _tmp339_;
3354
3335
ValaSymbol* sym;
3355
ValaBlock* _tmp364_ = NULL;
3356
_tmp356_ = vala_code_context_get_analyzer (context);
3357
_tmp357_ = vala_semantic_analyzer_get_current_method (_tmp356_);
3358
_tmp358_ = _vala_code_node_ref0 ((ValaSymbol*) _tmp357_);
3336
ValaBlock* _tmp344_ = NULL;
3337
_tmp337_ = vala_code_context_get_analyzer (context);
3338
_tmp338_ = vala_semantic_analyzer_get_current_method (_tmp337_);
3339
_tmp339_ = _vala_code_node_ref0 ((ValaSymbol*) _tmp338_);
3361
ValaSymbol* _tmp359_;
3362
ValaMethod* _tmp360_;
3342
ValaSymbol* _tmp340_;
3343
ValaMethod* _tmp341_;
3363
3344
ValaMethod* method;
3364
ValaSymbol* _tmp361_ = NULL;
3365
ValaSymbol* _tmp362_;
3366
ValaSymbol* _tmp363_;
3345
ValaSymbol* _tmp342_ = NULL;
3346
ValaSymbol* _tmp343_;
3367
3347
if (!(sym != VALA_SYMBOL (async_method))) {
3370
_tmp360_ = _vala_code_node_ref0 ((_tmp359_ = sym, VALA_IS_METHOD (_tmp359_) ? ((ValaMethod*) _tmp359_) : NULL));
3351
_tmp341_ = _vala_code_node_ref0 (VALA_IS_METHOD (_tmp340_) ? ((ValaMethod*) _tmp340_) : NULL);
3372
3353
if (method != NULL) {
3373
3354
vala_method_set_closure (method, TRUE);
3375
_tmp361_ = vala_symbol_get_parent_symbol (sym);
3376
_tmp362_ = _vala_code_node_ref0 (_tmp361_);
3377
_tmp363_ = _tmp362_;
3356
_tmp342_ = vala_symbol_get_parent_symbol (sym);
3357
_tmp343_ = _vala_code_node_ref0 (_tmp342_);
3378
3358
_vala_code_node_unref0 (sym);
3380
3360
_vala_code_node_unref0 (method);
3382
_tmp364_ = vala_subroutine_get_body ((ValaSubroutine*) async_method);
3383
vala_block_set_captured (_tmp364_, TRUE);
3362
_tmp344_ = vala_subroutine_get_body ((ValaSubroutine*) async_method);
3363
vala_block_set_captured (_tmp344_, TRUE);
3384
3364
_vala_code_node_unref0 (sym);
3386
_tmp365_ = vala_method_get_callback_method (async_method);
3387
_tmp366_ = _tmp365_;
3366
_tmp345_ = vala_method_get_callback_method (async_method);
3388
3367
_vala_code_node_unref0 (m);
3390
3369
vala_expression_set_symbol_reference ((ValaExpression*) self, (ValaSymbol*) m);
3391
_tmp367_ = vala_expression_get_symbol_reference ((ValaExpression*) self);
3392
_tmp368_ = _vala_code_node_ref0 (_tmp367_);
3393
_tmp369_ = _tmp368_;
3370
_tmp346_ = vala_expression_get_symbol_reference ((ValaExpression*) self);
3371
_tmp347_ = _vala_code_node_ref0 (_tmp346_);
3394
3372
_vala_code_node_unref0 (member);
3396
3374
_vala_code_node_unref0 (async_method);
3398
ValaMethod* _tmp370_ = NULL;
3399
_tmp370_ = vala_method_get_base_method (m);
3400
if (_tmp370_ != NULL) {
3401
ValaMethod* _tmp371_ = NULL;
3402
ValaMethod* _tmp372_;
3403
ValaMethod* _tmp373_;
3404
ValaSignal* _tmp374_ = NULL;
3405
ValaSymbol* _tmp376_ = NULL;
3406
ValaSymbol* _tmp377_;
3407
ValaSymbol* _tmp378_;
3408
_tmp371_ = vala_method_get_base_method (m);
3409
_tmp372_ = _vala_code_node_ref0 (_tmp371_);
3410
_tmp373_ = _tmp372_;
3376
ValaMethod* _tmp348_ = NULL;
3377
_tmp348_ = vala_method_get_base_method (m);
3378
if (_tmp348_ != NULL) {
3379
ValaMethod* _tmp349_ = NULL;
3380
ValaMethod* _tmp350_;
3381
ValaSignal* _tmp351_ = NULL;
3382
ValaSymbol* _tmp353_ = NULL;
3383
ValaSymbol* _tmp354_;
3384
_tmp349_ = vala_method_get_base_method (m);
3385
_tmp350_ = _vala_code_node_ref0 (_tmp349_);
3411
3386
_vala_code_node_unref0 (m);
3413
_tmp374_ = vala_method_get_signal_reference (m);
3414
if (_tmp374_ != NULL) {
3415
ValaSignal* _tmp375_ = NULL;
3416
_tmp375_ = vala_method_get_signal_reference (m);
3417
vala_expression_set_symbol_reference ((ValaExpression*) self, (ValaSymbol*) _tmp375_);
3388
_tmp351_ = vala_method_get_signal_reference (m);
3389
if (_tmp351_ != NULL) {
3390
ValaSignal* _tmp352_ = NULL;
3391
_tmp352_ = vala_method_get_signal_reference (m);
3392
vala_expression_set_symbol_reference ((ValaExpression*) self, (ValaSymbol*) _tmp352_);
3419
3394
vala_expression_set_symbol_reference ((ValaExpression*) self, (ValaSymbol*) m);
3421
_tmp376_ = vala_expression_get_symbol_reference ((ValaExpression*) self);
3422
_tmp377_ = _vala_code_node_ref0 (_tmp376_);
3423
_tmp378_ = _tmp377_;
3396
_tmp353_ = vala_expression_get_symbol_reference ((ValaExpression*) self);
3397
_tmp354_ = _vala_code_node_ref0 (_tmp353_);
3424
3398
_vala_code_node_unref0 (member);
3427
ValaMethod* _tmp379_ = NULL;
3428
_tmp379_ = vala_method_get_base_interface_method (m);
3429
if (_tmp379_ != NULL) {
3430
ValaMethod* _tmp380_ = NULL;
3431
ValaMethod* _tmp381_;
3432
ValaMethod* _tmp382_;
3433
ValaSymbol* _tmp383_ = NULL;
3434
ValaSymbol* _tmp384_;
3435
ValaSymbol* _tmp385_;
3436
_tmp380_ = vala_method_get_base_interface_method (m);
3437
_tmp381_ = _vala_code_node_ref0 (_tmp380_);
3438
_tmp382_ = _tmp381_;
3401
ValaMethod* _tmp355_ = NULL;
3402
_tmp355_ = vala_method_get_base_interface_method (m);
3403
if (_tmp355_ != NULL) {
3404
ValaMethod* _tmp356_ = NULL;
3405
ValaMethod* _tmp357_;
3406
ValaSymbol* _tmp358_ = NULL;
3407
ValaSymbol* _tmp359_;
3408
_tmp356_ = vala_method_get_base_interface_method (m);
3409
_tmp357_ = _vala_code_node_ref0 (_tmp356_);
3439
3410
_vala_code_node_unref0 (m);
3441
3412
vala_expression_set_symbol_reference ((ValaExpression*) self, (ValaSymbol*) m);
3442
_tmp383_ = vala_expression_get_symbol_reference ((ValaExpression*) self);
3443
_tmp384_ = _vala_code_node_ref0 (_tmp383_);
3444
_tmp385_ = _tmp384_;
3413
_tmp358_ = vala_expression_get_symbol_reference ((ValaExpression*) self);
3414
_tmp359_ = _vala_code_node_ref0 (_tmp358_);
3445
3415
_vala_code_node_unref0 (member);
3450
_tmp386_ = vala_symbol_get_access ((ValaSymbol*) m);
3420
_tmp360_ = vala_symbol_get_access ((ValaSymbol*) m);
3452
3422
if (!VALA_IS_CREATION_METHOD (m)) {
3453
ValaMemberBinding _tmp387_;
3454
_tmp387_ = vala_method_get_binding (m);
3455
instance = _tmp387_ == VALA_MEMBER_BINDING_INSTANCE;
3423
ValaMemberBinding _tmp361_;
3424
_tmp361_ = vala_method_get_binding (m);
3425
instance = _tmp361_ == VALA_MEMBER_BINDING_INSTANCE;
3457
_tmp388_ = vala_method_get_binding (m);
3458
klass = _tmp388_ == VALA_MEMBER_BINDING_CLASS;
3427
_tmp362_ = vala_method_get_binding (m);
3428
klass = _tmp362_ == VALA_MEMBER_BINDING_CLASS;
3460
ValaList* _tmp389_ = NULL;
3430
ValaList* _tmp363_ = NULL;
3461
3431
ValaList* _param_list;
3463
3433
gint _param_size;
3464
3434
gint _param_index;
3465
_tmp389_ = vala_method_get_parameters (m);
3466
_param_list = _tmp389_;
3467
_tmp390_ = vala_collection_get_size ((ValaCollection*) _param_list);
3468
_param_size = _tmp390_;
3435
_tmp363_ = vala_method_get_parameters (m);
3436
_param_list = _tmp363_;
3437
_tmp364_ = vala_collection_get_size ((ValaCollection*) _param_list);
3438
_param_size = _tmp364_;
3469
3439
_param_index = -1;
3471
gpointer _tmp391_ = NULL;
3441
gpointer _tmp365_ = NULL;
3472
3442
ValaParameter* param;
3473
ValaDataType* _tmp392_ = NULL;
3474
ValaDataType* _tmp393_;
3475
ValaGenericType* _tmp394_;
3443
ValaDataType* _tmp366_ = NULL;
3444
ValaDataType* _tmp367_;
3445
ValaGenericType* _tmp368_;
3476
3446
ValaGenericType* generic_type;
3477
gboolean _tmp395_ = FALSE;
3447
gboolean _tmp369_ = FALSE;
3478
3448
_param_index = _param_index + 1;
3479
3449
if (!(_param_index < _param_size)) {
3482
_tmp391_ = vala_list_get (_param_list, _param_index);
3483
param = (ValaParameter*) _tmp391_;
3484
_tmp392_ = vala_variable_get_variable_type ((ValaVariable*) param);
3485
_tmp394_ = _vala_code_node_ref0 ((_tmp393_ = _tmp392_, VALA_IS_GENERIC_TYPE (_tmp393_) ? ((ValaGenericType*) _tmp393_) : NULL));
3486
generic_type = _tmp394_;
3452
_tmp365_ = vala_list_get (_param_list, _param_index);
3453
param = (ValaParameter*) _tmp365_;
3454
_tmp366_ = vala_variable_get_variable_type ((ValaVariable*) param);
3455
_tmp367_ = _tmp366_;
3456
_tmp368_ = _vala_code_node_ref0 (VALA_IS_GENERIC_TYPE (_tmp367_) ? ((ValaGenericType*) _tmp367_) : NULL);
3457
generic_type = _tmp368_;
3487
3458
if (generic_type != NULL) {
3488
ValaTypeParameter* _tmp396_ = NULL;
3489
ValaSymbol* _tmp397_ = NULL;
3490
_tmp396_ = vala_data_type_get_type_parameter ((ValaDataType*) generic_type);
3491
_tmp397_ = vala_symbol_get_parent_symbol ((ValaSymbol*) _tmp396_);
3492
_tmp395_ = VALA_IS_TYPESYMBOL (_tmp397_);
3459
ValaTypeParameter* _tmp370_ = NULL;
3460
ValaSymbol* _tmp371_ = NULL;
3461
_tmp370_ = vala_data_type_get_type_parameter ((ValaDataType*) generic_type);
3462
_tmp371_ = vala_symbol_get_parent_symbol ((ValaSymbol*) _tmp370_);
3463
_tmp369_ = VALA_IS_TYPESYMBOL (_tmp371_);
3497
3468
generics = TRUE;
3498
3469
_vala_code_node_unref0 (generic_type);
3499
3470
_vala_code_node_unref0 (param);
3879
3842
if (generics) {
3880
ValaExpression* _tmp489_ = NULL;
3881
_tmp489_ = vala_member_access_get_inner (self);
3882
_tmp488_ = _tmp489_ != NULL;
3843
ValaExpression* _tmp458_ = NULL;
3844
_tmp458_ = vala_member_access_get_inner (self);
3845
_tmp457_ = _tmp458_ != NULL;
3887
ValaExpression* _tmp490_ = NULL;
3888
ValaDataType* _tmp491_ = NULL;
3889
ValaDataType* _tmp492_;
3850
ValaExpression* _tmp459_ = NULL;
3851
ValaDataType* _tmp460_ = NULL;
3852
ValaDataType* _tmp461_;
3890
3853
ValaDataType* instance_type;
3891
ValaExpression* _tmp493_ = NULL;
3892
ValaDataType* _tmp494_ = NULL;
3893
ValaDataType* _tmp495_;
3894
ValaPointerType* _tmp496_;
3854
ValaExpression* _tmp462_ = NULL;
3855
ValaDataType* _tmp463_ = NULL;
3856
ValaDataType* _tmp464_;
3857
ValaPointerType* _tmp465_;
3895
3858
ValaPointerType* pointer_type;
3896
ValaDataType* _tmp500_;
3897
ValaObjectType* _tmp501_;
3859
ValaDataType* _tmp468_;
3860
ValaObjectType* _tmp469_;
3898
3861
ValaObjectType* object_type;
3899
gboolean _tmp502_ = FALSE;
3900
gboolean _tmp503_ = FALSE;
3901
_tmp490_ = vala_member_access_get_inner (self);
3902
_tmp491_ = vala_expression_get_value_type (_tmp490_);
3903
_tmp492_ = _vala_code_node_ref0 (_tmp491_);
3904
instance_type = _tmp492_;
3905
_tmp493_ = vala_member_access_get_inner (self);
3906
_tmp494_ = vala_expression_get_value_type (_tmp493_);
3907
_tmp496_ = _vala_code_node_ref0 ((_tmp495_ = _tmp494_, VALA_IS_POINTER_TYPE (_tmp495_) ? ((ValaPointerType*) _tmp495_) : NULL));
3908
pointer_type = _tmp496_;
3862
gboolean _tmp470_ = FALSE;
3863
gboolean _tmp471_ = FALSE;
3864
_tmp459_ = vala_member_access_get_inner (self);
3865
_tmp460_ = vala_expression_get_value_type (_tmp459_);
3866
_tmp461_ = _vala_code_node_ref0 (_tmp460_);
3867
instance_type = _tmp461_;
3868
_tmp462_ = vala_member_access_get_inner (self);
3869
_tmp463_ = vala_expression_get_value_type (_tmp462_);
3870
_tmp464_ = _tmp463_;
3871
_tmp465_ = _vala_code_node_ref0 (VALA_IS_POINTER_TYPE (_tmp464_) ? ((ValaPointerType*) _tmp464_) : NULL);
3872
pointer_type = _tmp465_;
3909
3873
if (pointer_type != NULL) {
3910
ValaDataType* _tmp497_ = NULL;
3911
ValaDataType* _tmp498_;
3912
ValaDataType* _tmp499_;
3913
_tmp497_ = vala_pointer_type_get_base_type (pointer_type);
3914
_tmp498_ = _vala_code_node_ref0 (_tmp497_);
3915
_tmp499_ = _tmp498_;
3874
ValaDataType* _tmp466_ = NULL;
3875
ValaDataType* _tmp467_;
3876
_tmp466_ = vala_pointer_type_get_base_type (pointer_type);
3877
_tmp467_ = _vala_code_node_ref0 (_tmp466_);
3916
3878
_vala_code_node_unref0 (instance_type);
3917
instance_type = _tmp499_;
3879
instance_type = _tmp467_;
3919
_tmp501_ = _vala_code_node_ref0 ((_tmp500_ = instance_type, VALA_IS_OBJECT_TYPE (_tmp500_) ? ((ValaObjectType*) _tmp500_) : NULL));
3920
object_type = _tmp501_;
3881
_tmp468_ = instance_type;
3882
_tmp469_ = _vala_code_node_ref0 (VALA_IS_OBJECT_TYPE (_tmp468_) ? ((ValaObjectType*) _tmp468_) : NULL);
3883
object_type = _tmp469_;
3921
3884
if (object_type != NULL) {
3922
ValaObjectTypeSymbol* _tmp504_ = NULL;
3923
ValaList* _tmp505_ = NULL;
3926
_tmp504_ = vala_object_type_get_type_symbol (object_type);
3927
_tmp505_ = vala_object_type_symbol_get_type_parameters (_tmp504_);
3928
_tmp506_ = _tmp505_;
3929
_tmp507_ = vala_collection_get_size ((ValaCollection*) _tmp506_);
3930
_tmp503_ = _tmp507_ > 0;
3931
_vala_iterable_unref0 (_tmp506_);
3936
ValaList* _tmp508_ = NULL;
3939
_tmp508_ = vala_data_type_get_type_arguments (instance_type);
3940
_tmp509_ = _tmp508_;
3941
_tmp510_ = vala_collection_get_size ((ValaCollection*) _tmp509_);
3942
_tmp502_ = _tmp510_ == 0;
3943
_vala_iterable_unref0 (_tmp509_);
3948
ValaExpression* _tmp511_ = NULL;
3949
ValaSourceReference* _tmp512_ = NULL;
3885
ValaObjectTypeSymbol* _tmp472_ = NULL;
3886
ValaList* _tmp473_ = NULL;
3889
_tmp472_ = vala_object_type_get_type_symbol (object_type);
3890
_tmp473_ = vala_object_type_symbol_get_type_parameters (_tmp472_);
3891
_tmp474_ = _tmp473_;
3892
_tmp475_ = vala_collection_get_size ((ValaCollection*) _tmp474_);
3893
_tmp471_ = _tmp475_ > 0;
3894
_vala_iterable_unref0 (_tmp474_);
3899
ValaList* _tmp476_ = NULL;
3902
_tmp476_ = vala_data_type_get_type_arguments (instance_type);
3903
_tmp477_ = _tmp476_;
3904
_tmp478_ = vala_collection_get_size ((ValaCollection*) _tmp477_);
3905
_tmp470_ = _tmp478_ == 0;
3906
_vala_iterable_unref0 (_tmp477_);
3911
ValaExpression* _tmp479_ = NULL;
3912
ValaSourceReference* _tmp480_ = NULL;
3950
3913
vala_code_node_set_error ((ValaCodeNode*) self, TRUE);
3951
_tmp511_ = vala_member_access_get_inner (self);
3952
_tmp512_ = vala_code_node_get_source_reference ((ValaCodeNode*) _tmp511_);
3953
vala_report_error (_tmp512_, "missing generic type arguments");
3914
_tmp479_ = vala_member_access_get_inner (self);
3915
_tmp480_ = vala_code_node_get_source_reference ((ValaCodeNode*) _tmp479_);
3916
vala_report_error (_tmp480_, "missing generic type arguments");
3954
3917
result = FALSE;
3955
3918
_vala_code_node_unref0 (object_type);
3956
3919
_vala_code_node_unref0 (pointer_type);
3965
3928
_vala_code_node_unref0 (instance_type);
3967
3930
if (instance) {
3968
_tmp514_ = !may_access_instance_members;
3931
_tmp482_ = !may_access_instance_members;
3975
gboolean _tmp515_ = FALSE;
3938
gboolean _tmp483_ = FALSE;
3977
_tmp515_ = !may_access_klass_members;
3940
_tmp483_ = !may_access_klass_members;
3981
_tmp513_ = _tmp515_;
3944
_tmp481_ = _tmp483_;
3984
ValaSymbol* _tmp516_ = NULL;
3985
ValaDataType* _tmp528_ = NULL;
3947
ValaSymbol* _tmp484_ = NULL;
3948
ValaDataType* _tmp496_ = NULL;
3986
3949
vala_member_access_set_prototype_access (self, TRUE);
3987
_tmp516_ = vala_expression_get_symbol_reference ((ValaExpression*) self);
3988
if (VALA_IS_METHOD (_tmp516_)) {
3989
ValaSemanticAnalyzer* _tmp517_ = NULL;
3990
ValaSymbol* _tmp518_ = NULL;
3992
ValaDataType* _tmp520_ = NULL;
3993
ValaDataType* _tmp521_;
3994
_tmp517_ = vala_code_context_get_analyzer (context);
3995
_tmp518_ = vala_expression_get_symbol_reference ((ValaExpression*) self);
3996
_tmp519_ = vala_expression_get_lvalue ((ValaExpression*) self);
3997
_tmp520_ = vala_semantic_analyzer_get_value_type_for_symbol (_tmp517_, _tmp518_, _tmp519_);
3998
_tmp521_ = _tmp520_;
3999
vala_expression_set_value_type ((ValaExpression*) self, _tmp521_);
4000
_vala_code_node_unref0 (_tmp521_);
3950
_tmp484_ = vala_expression_get_symbol_reference ((ValaExpression*) self);
3951
if (VALA_IS_METHOD (_tmp484_)) {
3952
ValaSemanticAnalyzer* _tmp485_ = NULL;
3953
ValaSymbol* _tmp486_ = NULL;
3955
ValaDataType* _tmp488_ = NULL;
3956
ValaDataType* _tmp489_;
3957
_tmp485_ = vala_code_context_get_analyzer (context);
3958
_tmp486_ = vala_expression_get_symbol_reference ((ValaExpression*) self);
3959
_tmp487_ = vala_expression_get_lvalue ((ValaExpression*) self);
3960
_tmp488_ = vala_semantic_analyzer_get_value_type_for_symbol (_tmp485_, _tmp486_, _tmp487_);
3961
_tmp489_ = _tmp488_;
3962
vala_expression_set_value_type ((ValaExpression*) self, _tmp489_);
3963
_vala_code_node_unref0 (_tmp489_);
4002
ValaSymbol* _tmp522_ = NULL;
4003
_tmp522_ = vala_expression_get_symbol_reference ((ValaExpression*) self);
4004
if (VALA_IS_FIELD (_tmp522_)) {
4005
ValaSymbol* _tmp523_ = NULL;
4006
ValaFieldPrototype* _tmp524_ = NULL;
4007
ValaFieldPrototype* _tmp525_;
4008
_tmp523_ = vala_expression_get_symbol_reference ((ValaExpression*) self);
4009
_tmp524_ = vala_field_prototype_new (VALA_FIELD (_tmp523_));
4010
_tmp525_ = _tmp524_;
4011
vala_expression_set_value_type ((ValaExpression*) self, (ValaDataType*) _tmp525_);
4012
_vala_code_node_unref0 (_tmp525_);
3965
ValaSymbol* _tmp490_ = NULL;
3966
_tmp490_ = vala_expression_get_symbol_reference ((ValaExpression*) self);
3967
if (VALA_IS_FIELD (_tmp490_)) {
3968
ValaSymbol* _tmp491_ = NULL;
3969
ValaFieldPrototype* _tmp492_ = NULL;
3970
ValaFieldPrototype* _tmp493_;
3971
_tmp491_ = vala_expression_get_symbol_reference ((ValaExpression*) self);
3972
_tmp492_ = vala_field_prototype_new (VALA_FIELD (_tmp491_));
3973
_tmp493_ = _tmp492_;
3974
vala_expression_set_value_type ((ValaExpression*) self, (ValaDataType*) _tmp493_);
3975
_vala_code_node_unref0 (_tmp493_);
4014
ValaInvalidType* _tmp526_ = NULL;
4015
ValaInvalidType* _tmp527_;
4016
_tmp526_ = vala_invalid_type_new ();
4017
_tmp527_ = _tmp526_;
4018
vala_expression_set_value_type ((ValaExpression*) self, (ValaDataType*) _tmp527_);
4019
_vala_code_node_unref0 (_tmp527_);
3977
ValaInvalidType* _tmp494_ = NULL;
3978
ValaInvalidType* _tmp495_;
3979
_tmp494_ = vala_invalid_type_new ();
3980
_tmp495_ = _tmp494_;
3981
vala_expression_set_value_type ((ValaExpression*) self, (ValaDataType*) _tmp495_);
3982
_vala_code_node_unref0 (_tmp495_);
4022
_tmp528_ = vala_expression_get_target_type ((ValaExpression*) self);
4023
if (_tmp528_ != NULL) {
4024
ValaDataType* _tmp529_ = NULL;
4025
ValaDataType* _tmp530_ = NULL;
4027
_tmp529_ = vala_expression_get_value_type ((ValaExpression*) self);
4028
_tmp530_ = vala_expression_get_target_type ((ValaExpression*) self);
4029
_tmp531_ = vala_data_type_get_value_owned (_tmp530_);
4030
vala_data_type_set_value_owned (_tmp529_, _tmp531_);
3985
_tmp496_ = vala_expression_get_target_type ((ValaExpression*) self);
3986
if (_tmp496_ != NULL) {
3987
ValaDataType* _tmp497_ = NULL;
3988
ValaDataType* _tmp498_ = NULL;
3990
_tmp497_ = vala_expression_get_value_type ((ValaExpression*) self);
3991
_tmp498_ = vala_expression_get_target_type ((ValaExpression*) self);
3992
_tmp499_ = vala_data_type_get_value_owned (_tmp498_);
3993
vala_data_type_set_value_owned (_tmp497_, _tmp499_);
4033
gboolean _tmp532_ = FALSE;
4034
gboolean _tmp542_ = FALSE;
4035
gboolean _tmp543_ = FALSE;
4036
gboolean _tmp544_ = FALSE;
4037
gboolean _tmp545_ = FALSE;
4039
ValaSemanticAnalyzer* _tmp560_ = NULL;
4040
ValaSymbol* _tmp561_ = NULL;
4042
ValaDataType* _tmp563_ = NULL;
4043
ValaDataType* _tmp564_;
4044
gboolean _tmp565_ = FALSE;
4045
ValaExpression* _tmp566_ = NULL;
4046
ValaSymbol* _tmp574_ = NULL;
3996
gboolean _tmp500_ = FALSE;
3997
gboolean _tmp510_ = FALSE;
3998
gboolean _tmp511_ = FALSE;
3999
gboolean _tmp512_ = FALSE;
4000
gboolean _tmp513_ = FALSE;
4002
ValaSemanticAnalyzer* _tmp528_ = NULL;
4003
ValaSymbol* _tmp529_ = NULL;
4005
ValaDataType* _tmp531_ = NULL;
4006
ValaDataType* _tmp532_;
4007
gboolean _tmp533_ = FALSE;
4008
ValaExpression* _tmp534_ = NULL;
4009
ValaSymbol* _tmp542_ = NULL;
4047
4010
if (instance) {
4048
ValaExpression* _tmp533_ = NULL;
4049
_tmp533_ = vala_member_access_get_inner (self);
4050
_tmp532_ = _tmp533_ == NULL;
4055
ValaSourceReference* _tmp534_ = NULL;
4056
ValaMemberAccess* _tmp535_ = NULL;
4057
ValaMemberAccess* _tmp536_;
4011
ValaExpression* _tmp501_ = NULL;
4012
_tmp501_ = vala_member_access_get_inner (self);
4013
_tmp500_ = _tmp501_ == NULL;
4018
ValaSourceReference* _tmp502_ = NULL;
4019
ValaMemberAccess* _tmp503_ = NULL;
4020
ValaMemberAccess* _tmp504_;
4021
ValaExpression* _tmp505_ = NULL;
4022
ValaDataType* _tmp506_ = NULL;
4023
ValaDataType* _tmp507_ = NULL;
4024
ValaDataType* _tmp508_;
4025
ValaExpression* _tmp509_ = NULL;
4026
_tmp502_ = vala_code_node_get_source_reference ((ValaCodeNode*) self);
4027
_tmp503_ = vala_member_access_new (NULL, "this", _tmp502_);
4028
_tmp504_ = _tmp503_;
4029
vala_member_access_set_inner (self, (ValaExpression*) _tmp504_);
4030
_vala_code_node_unref0 (_tmp504_);
4031
_tmp505_ = vala_member_access_get_inner (self);
4032
_tmp506_ = vala_variable_get_variable_type ((ValaVariable*) this_parameter);
4033
_tmp507_ = vala_data_type_copy (_tmp506_);
4034
_tmp508_ = _tmp507_;
4035
vala_expression_set_value_type (_tmp505_, _tmp508_);
4036
_vala_code_node_unref0 (_tmp508_);
4037
_tmp509_ = vala_member_access_get_inner (self);
4038
vala_expression_set_symbol_reference (_tmp509_, (ValaSymbol*) this_parameter);
4040
_tmp514_ = vala_code_context_get_experimental_non_null (context);
4042
_tmp513_ = instance;
4047
ValaExpression* _tmp515_ = NULL;
4048
ValaDataType* _tmp516_ = NULL;
4050
_tmp515_ = vala_member_access_get_inner (self);
4051
_tmp516_ = vala_expression_get_value_type (_tmp515_);
4052
_tmp517_ = vala_data_type_get_nullable (_tmp516_);
4053
_tmp512_ = _tmp517_;
4058
ValaExpression* _tmp518_ = NULL;
4059
ValaDataType* _tmp519_ = NULL;
4060
_tmp518_ = vala_member_access_get_inner (self);
4061
_tmp519_ = vala_expression_get_value_type (_tmp518_);
4062
_tmp511_ = !VALA_IS_POINTER_TYPE (_tmp519_);
4067
ValaExpression* _tmp520_ = NULL;
4068
ValaDataType* _tmp521_ = NULL;
4069
_tmp520_ = vala_member_access_get_inner (self);
4070
_tmp521_ = vala_expression_get_value_type (_tmp520_);
4071
_tmp510_ = !VALA_IS_GENERIC_TYPE (_tmp521_);
4076
ValaSourceReference* _tmp522_ = NULL;
4077
ValaSymbol* _tmp523_ = NULL;
4078
gchar* _tmp524_ = NULL;
4080
gchar* _tmp526_ = NULL;
4082
_tmp522_ = vala_code_node_get_source_reference ((ValaCodeNode*) self);
4083
_tmp523_ = vala_expression_get_symbol_reference ((ValaExpression*) self);
4084
_tmp524_ = vala_symbol_get_full_name (_tmp523_);
4085
_tmp525_ = _tmp524_;
4086
_tmp526_ = g_strdup_printf ("Access to instance member `%s' from nullable reference denied", _tmp525_);
4087
_tmp527_ = _tmp526_;
4088
vala_report_error (_tmp522_, _tmp527_);
4089
_g_free0 (_tmp527_);
4090
_g_free0 (_tmp525_);
4092
_tmp528_ = vala_code_context_get_analyzer (context);
4093
_tmp529_ = vala_expression_get_symbol_reference ((ValaExpression*) self);
4094
_tmp530_ = vala_expression_get_lvalue ((ValaExpression*) self);
4095
_tmp531_ = vala_semantic_analyzer_get_value_type_for_symbol (_tmp528_, _tmp529_, _tmp530_);
4096
_tmp532_ = _tmp531_;
4097
vala_expression_set_formal_value_type ((ValaExpression*) self, _tmp532_);
4098
_vala_code_node_unref0 (_tmp532_);
4099
_tmp534_ = vala_member_access_get_inner (self);
4100
if (_tmp534_ != NULL) {
4101
ValaDataType* _tmp535_ = NULL;
4102
_tmp535_ = vala_expression_get_formal_value_type ((ValaExpression*) self);
4103
_tmp533_ = _tmp535_ != NULL;
4108
ValaDataType* _tmp536_ = NULL;
4058
4109
ValaExpression* _tmp537_ = NULL;
4059
4110
ValaDataType* _tmp538_ = NULL;
4060
4111
ValaDataType* _tmp539_ = NULL;
4061
4112
ValaDataType* _tmp540_;
4062
ValaExpression* _tmp541_ = NULL;
4063
_tmp534_ = vala_code_node_get_source_reference ((ValaCodeNode*) self);
4064
_tmp535_ = vala_member_access_new (NULL, "this", _tmp534_);
4065
_tmp536_ = _tmp535_;
4066
vala_member_access_set_inner (self, (ValaExpression*) _tmp536_);
4067
_vala_code_node_unref0 (_tmp536_);
4113
_tmp536_ = vala_expression_get_formal_value_type ((ValaExpression*) self);
4068
4114
_tmp537_ = vala_member_access_get_inner (self);
4069
_tmp538_ = vala_variable_get_variable_type ((ValaVariable*) this_parameter);
4070
_tmp539_ = vala_data_type_copy (_tmp538_);
4115
_tmp538_ = vala_expression_get_value_type (_tmp537_);
4116
_tmp539_ = vala_data_type_get_actual_type (_tmp536_, _tmp538_, NULL, (ValaCodeNode*) self);
4071
4117
_tmp540_ = _tmp539_;
4072
vala_expression_set_value_type (_tmp537_, _tmp540_);
4118
vala_expression_set_value_type ((ValaExpression*) self, _tmp540_);
4073
4119
_vala_code_node_unref0 (_tmp540_);
4074
_tmp541_ = vala_member_access_get_inner (self);
4075
vala_expression_set_symbol_reference (_tmp541_, (ValaSymbol*) this_parameter);
4077
_tmp546_ = vala_code_context_get_experimental_non_null (context);
4079
_tmp545_ = instance;
4084
ValaExpression* _tmp547_ = NULL;
4085
ValaDataType* _tmp548_ = NULL;
4087
_tmp547_ = vala_member_access_get_inner (self);
4088
_tmp548_ = vala_expression_get_value_type (_tmp547_);
4089
_tmp549_ = vala_data_type_get_nullable (_tmp548_);
4090
_tmp544_ = _tmp549_;
4095
ValaExpression* _tmp550_ = NULL;
4096
ValaDataType* _tmp551_ = NULL;
4097
_tmp550_ = vala_member_access_get_inner (self);
4098
_tmp551_ = vala_expression_get_value_type (_tmp550_);
4099
_tmp543_ = !VALA_IS_POINTER_TYPE (_tmp551_);
4104
ValaExpression* _tmp552_ = NULL;
4105
ValaDataType* _tmp553_ = NULL;
4106
_tmp552_ = vala_member_access_get_inner (self);
4107
_tmp553_ = vala_expression_get_value_type (_tmp552_);
4108
_tmp542_ = !VALA_IS_GENERIC_TYPE (_tmp553_);
4113
ValaSourceReference* _tmp554_ = NULL;
4114
ValaSymbol* _tmp555_ = NULL;
4115
gchar* _tmp556_ = NULL;
4117
gchar* _tmp558_ = NULL;
4119
_tmp554_ = vala_code_node_get_source_reference ((ValaCodeNode*) self);
4120
_tmp555_ = vala_expression_get_symbol_reference ((ValaExpression*) self);
4121
_tmp556_ = vala_symbol_get_full_name (_tmp555_);
4122
_tmp557_ = _tmp556_;
4123
_tmp558_ = g_strdup_printf ("Access to instance member `%s' from nullable reference denied", _tmp557_);
4124
_tmp559_ = _tmp558_;
4125
vala_report_error (_tmp554_, _tmp559_);
4126
_g_free0 (_tmp559_);
4127
_g_free0 (_tmp557_);
4129
_tmp560_ = vala_code_context_get_analyzer (context);
4130
_tmp561_ = vala_expression_get_symbol_reference ((ValaExpression*) self);
4131
_tmp562_ = vala_expression_get_lvalue ((ValaExpression*) self);
4132
_tmp563_ = vala_semantic_analyzer_get_value_type_for_symbol (_tmp560_, _tmp561_, _tmp562_);
4133
_tmp564_ = _tmp563_;
4134
vala_expression_set_formal_value_type ((ValaExpression*) self, _tmp564_);
4135
_vala_code_node_unref0 (_tmp564_);
4136
_tmp566_ = vala_member_access_get_inner (self);
4137
if (_tmp566_ != NULL) {
4138
ValaDataType* _tmp567_ = NULL;
4139
_tmp567_ = vala_expression_get_formal_value_type ((ValaExpression*) self);
4140
_tmp565_ = _tmp567_ != NULL;
4145
ValaDataType* _tmp568_ = NULL;
4146
ValaExpression* _tmp569_ = NULL;
4147
ValaDataType* _tmp570_ = NULL;
4148
ValaDataType* _tmp571_ = NULL;
4149
ValaDataType* _tmp572_;
4150
_tmp568_ = vala_expression_get_formal_value_type ((ValaExpression*) self);
4151
_tmp569_ = vala_member_access_get_inner (self);
4152
_tmp570_ = vala_expression_get_value_type (_tmp569_);
4153
_tmp571_ = vala_data_type_get_actual_type (_tmp568_, _tmp570_, NULL, (ValaCodeNode*) self);
4154
_tmp572_ = _tmp571_;
4155
vala_expression_set_value_type ((ValaExpression*) self, _tmp572_);
4156
_vala_code_node_unref0 (_tmp572_);
4158
ValaDataType* _tmp573_ = NULL;
4159
_tmp573_ = vala_expression_get_formal_value_type ((ValaExpression*) self);
4160
vala_expression_set_value_type ((ValaExpression*) self, _tmp573_);
4162
_tmp574_ = vala_expression_get_symbol_reference ((ValaExpression*) self);
4163
if (VALA_IS_METHOD (_tmp574_)) {
4164
ValaSymbol* _tmp575_ = NULL;
4165
ValaMethod* _tmp576_;
4121
ValaDataType* _tmp541_ = NULL;
4122
_tmp541_ = vala_expression_get_formal_value_type ((ValaExpression*) self);
4123
vala_expression_set_value_type ((ValaExpression*) self, _tmp541_);
4125
_tmp542_ = vala_expression_get_symbol_reference ((ValaExpression*) self);
4126
if (VALA_IS_METHOD (_tmp542_)) {
4127
ValaSymbol* _tmp543_ = NULL;
4128
ValaMethod* _tmp544_;
4167
ValaDataType* _tmp577_ = NULL;
4130
ValaDataType* _tmp545_ = NULL;
4168
4131
ValaMethod* base_method = NULL;
4169
ValaMethod* _tmp581_ = NULL;
4170
gboolean _tmp591_ = FALSE;
4171
_tmp575_ = vala_expression_get_symbol_reference ((ValaExpression*) self);
4172
_tmp576_ = _vala_code_node_ref0 (VALA_METHOD (_tmp575_));
4174
_tmp577_ = vala_expression_get_target_type ((ValaExpression*) self);
4175
if (_tmp577_ != NULL) {
4176
ValaDataType* _tmp578_ = NULL;
4177
ValaDataType* _tmp579_ = NULL;
4179
_tmp578_ = vala_expression_get_value_type ((ValaExpression*) self);
4180
_tmp579_ = vala_expression_get_target_type ((ValaExpression*) self);
4181
_tmp580_ = vala_data_type_get_value_owned (_tmp579_);
4182
vala_data_type_set_value_owned (_tmp578_, _tmp580_);
4132
ValaMethod* _tmp549_ = NULL;
4133
gboolean _tmp556_ = FALSE;
4134
_tmp543_ = vala_expression_get_symbol_reference ((ValaExpression*) self);
4135
_tmp544_ = _vala_code_node_ref0 (VALA_METHOD (_tmp543_));
4137
_tmp545_ = vala_expression_get_target_type ((ValaExpression*) self);
4138
if (_tmp545_ != NULL) {
4139
ValaDataType* _tmp546_ = NULL;
4140
ValaDataType* _tmp547_ = NULL;
4142
_tmp546_ = vala_expression_get_value_type ((ValaExpression*) self);
4143
_tmp547_ = vala_expression_get_target_type ((ValaExpression*) self);
4144
_tmp548_ = vala_data_type_get_value_owned (_tmp547_);
4145
vala_data_type_set_value_owned (_tmp546_, _tmp548_);
4184
_tmp581_ = vala_method_get_base_method (m);
4185
if (_tmp581_ != NULL) {
4186
ValaMethod* _tmp582_ = NULL;
4187
ValaMethod* _tmp583_;
4188
ValaMethod* _tmp584_;
4189
_tmp582_ = vala_method_get_base_method (m);
4190
_tmp583_ = _vala_code_node_ref0 (_tmp582_);
4191
_tmp584_ = _tmp583_;
4147
_tmp549_ = vala_method_get_base_method (m);
4148
if (_tmp549_ != NULL) {
4149
ValaMethod* _tmp550_ = NULL;
4150
ValaMethod* _tmp551_;
4151
_tmp550_ = vala_method_get_base_method (m);
4152
_tmp551_ = _vala_code_node_ref0 (_tmp550_);
4192
4153
_vala_code_node_unref0 (base_method);
4193
base_method = _tmp584_;
4154
base_method = _tmp551_;
4195
ValaMethod* _tmp585_ = NULL;
4196
_tmp585_ = vala_method_get_base_interface_method (m);
4197
if (_tmp585_ != NULL) {
4198
ValaMethod* _tmp586_ = NULL;
4199
ValaMethod* _tmp587_;
4200
ValaMethod* _tmp588_;
4201
_tmp586_ = vala_method_get_base_interface_method (m);
4202
_tmp587_ = _vala_code_node_ref0 (_tmp586_);
4203
_tmp588_ = _tmp587_;
4156
ValaMethod* _tmp552_ = NULL;
4157
_tmp552_ = vala_method_get_base_interface_method (m);
4158
if (_tmp552_ != NULL) {
4159
ValaMethod* _tmp553_ = NULL;
4160
ValaMethod* _tmp554_;
4161
_tmp553_ = vala_method_get_base_interface_method (m);
4162
_tmp554_ = _vala_code_node_ref0 (_tmp553_);
4204
4163
_vala_code_node_unref0 (base_method);
4205
base_method = _tmp588_;
4164
base_method = _tmp554_;
4207
ValaMethod* _tmp589_;
4208
ValaMethod* _tmp590_;
4209
_tmp589_ = _vala_code_node_ref0 (m);
4210
_tmp590_ = _tmp589_;
4166
ValaMethod* _tmp555_;
4167
_tmp555_ = _vala_code_node_ref0 (m);
4211
4168
_vala_code_node_unref0 (base_method);
4212
base_method = _tmp590_;
4169
base_method = _tmp555_;
4215
4172
if (instance) {
4216
ValaSymbol* _tmp592_ = NULL;
4217
_tmp592_ = vala_symbol_get_parent_symbol ((ValaSymbol*) base_method);
4218
_tmp591_ = VALA_IS_TYPESYMBOL (_tmp592_);
4173
ValaSymbol* _tmp557_ = NULL;
4174
_tmp557_ = vala_symbol_get_parent_symbol ((ValaSymbol*) base_method);
4175
_tmp556_ = VALA_IS_TYPESYMBOL (_tmp557_);
4223
ValaExpression* _tmp593_ = NULL;
4224
ValaSemanticAnalyzer* _tmp594_ = NULL;
4225
ValaSymbol* _tmp595_ = NULL;
4226
ValaDataType* _tmp596_ = NULL;
4227
ValaDataType* _tmp597_;
4228
_tmp593_ = vala_member_access_get_inner (self);
4229
_tmp594_ = vala_code_context_get_analyzer (context);
4230
_tmp595_ = vala_symbol_get_parent_symbol ((ValaSymbol*) base_method);
4231
_tmp596_ = vala_semantic_analyzer_get_data_type_for_symbol (VALA_TYPESYMBOL (_tmp595_));
4232
_tmp597_ = _tmp596_;
4233
vala_expression_set_target_type (_tmp593_, _tmp597_);
4234
_vala_code_node_unref0 (_tmp597_);
4180
ValaExpression* _tmp558_ = NULL;
4181
ValaSemanticAnalyzer* _tmp559_ = NULL;
4182
ValaSymbol* _tmp560_ = NULL;
4183
ValaDataType* _tmp561_ = NULL;
4184
ValaDataType* _tmp562_;
4185
_tmp558_ = vala_member_access_get_inner (self);
4186
_tmp559_ = vala_code_context_get_analyzer (context);
4187
_tmp560_ = vala_symbol_get_parent_symbol ((ValaSymbol*) base_method);
4188
_tmp561_ = vala_semantic_analyzer_get_data_type_for_symbol (VALA_TYPESYMBOL (_tmp560_));
4189
_tmp562_ = _tmp561_;
4190
vala_expression_set_target_type (_tmp558_, _tmp562_);
4191
_vala_code_node_unref0 (_tmp562_);
4236
4193
_vala_code_node_unref0 (base_method);
4237
4194
_vala_code_node_unref0 (m);
4239
ValaSymbol* _tmp598_ = NULL;
4240
_tmp598_ = vala_expression_get_symbol_reference ((ValaExpression*) self);
4241
if (VALA_IS_PROPERTY (_tmp598_)) {
4242
ValaSymbol* _tmp599_ = NULL;
4243
ValaProperty* _tmp600_;
4196
ValaSymbol* _tmp563_ = NULL;
4197
_tmp563_ = vala_expression_get_symbol_reference ((ValaExpression*) self);
4198
if (VALA_IS_PROPERTY (_tmp563_)) {
4199
ValaSymbol* _tmp564_ = NULL;
4200
ValaProperty* _tmp565_;
4244
4201
ValaProperty* prop;
4245
4202
ValaProperty* base_property = NULL;
4246
ValaProperty* _tmp601_ = NULL;
4247
gboolean _tmp611_ = FALSE;
4248
_tmp599_ = vala_expression_get_symbol_reference ((ValaExpression*) self);
4249
_tmp600_ = _vala_code_node_ref0 (VALA_PROPERTY (_tmp599_));
4251
_tmp601_ = vala_property_get_base_property (prop);
4252
if (_tmp601_ != NULL) {
4253
ValaProperty* _tmp602_ = NULL;
4254
ValaProperty* _tmp603_;
4255
ValaProperty* _tmp604_;
4256
_tmp602_ = vala_property_get_base_property (prop);
4257
_tmp603_ = _vala_code_node_ref0 (_tmp602_);
4258
_tmp604_ = _tmp603_;
4203
ValaProperty* _tmp566_ = NULL;
4204
gboolean _tmp573_ = FALSE;
4205
_tmp564_ = vala_expression_get_symbol_reference ((ValaExpression*) self);
4206
_tmp565_ = _vala_code_node_ref0 (VALA_PROPERTY (_tmp564_));
4208
_tmp566_ = vala_property_get_base_property (prop);
4209
if (_tmp566_ != NULL) {
4210
ValaProperty* _tmp567_ = NULL;
4211
ValaProperty* _tmp568_;
4212
_tmp567_ = vala_property_get_base_property (prop);
4213
_tmp568_ = _vala_code_node_ref0 (_tmp567_);
4259
4214
_vala_code_node_unref0 (base_property);
4260
base_property = _tmp604_;
4215
base_property = _tmp568_;
4262
ValaProperty* _tmp605_ = NULL;
4263
_tmp605_ = vala_property_get_base_interface_property (prop);
4264
if (_tmp605_ != NULL) {
4265
ValaProperty* _tmp606_ = NULL;
4266
ValaProperty* _tmp607_;
4267
ValaProperty* _tmp608_;
4268
_tmp606_ = vala_property_get_base_interface_property (prop);
4269
_tmp607_ = _vala_code_node_ref0 (_tmp606_);
4270
_tmp608_ = _tmp607_;
4217
ValaProperty* _tmp569_ = NULL;
4218
_tmp569_ = vala_property_get_base_interface_property (prop);
4219
if (_tmp569_ != NULL) {
4220
ValaProperty* _tmp570_ = NULL;
4221
ValaProperty* _tmp571_;
4222
_tmp570_ = vala_property_get_base_interface_property (prop);
4223
_tmp571_ = _vala_code_node_ref0 (_tmp570_);
4271
4224
_vala_code_node_unref0 (base_property);
4272
base_property = _tmp608_;
4225
base_property = _tmp571_;
4274
ValaProperty* _tmp609_;
4275
ValaProperty* _tmp610_;
4276
_tmp609_ = _vala_code_node_ref0 (prop);
4277
_tmp610_ = _tmp609_;
4227
ValaProperty* _tmp572_;
4228
_tmp572_ = _vala_code_node_ref0 (prop);
4278
4229
_vala_code_node_unref0 (base_property);
4279
base_property = _tmp610_;
4230
base_property = _tmp572_;
4282
4233
if (instance) {
4283
ValaSymbol* _tmp612_ = NULL;
4284
_tmp612_ = vala_symbol_get_parent_symbol ((ValaSymbol*) base_property);
4285
_tmp611_ = _tmp612_ != NULL;
4234
ValaSymbol* _tmp574_ = NULL;
4235
_tmp574_ = vala_symbol_get_parent_symbol ((ValaSymbol*) base_property);
4236
_tmp573_ = _tmp574_ != NULL;
4290
ValaExpression* _tmp613_ = NULL;
4291
ValaSemanticAnalyzer* _tmp614_ = NULL;
4292
ValaSymbol* _tmp615_ = NULL;
4293
ValaDataType* _tmp616_ = NULL;
4294
ValaDataType* _tmp617_;
4295
_tmp613_ = vala_member_access_get_inner (self);
4296
_tmp614_ = vala_code_context_get_analyzer (context);
4297
_tmp615_ = vala_symbol_get_parent_symbol ((ValaSymbol*) base_property);
4298
_tmp616_ = vala_semantic_analyzer_get_data_type_for_symbol (VALA_TYPESYMBOL (_tmp615_));
4299
_tmp617_ = _tmp616_;
4300
vala_expression_set_target_type (_tmp613_, _tmp617_);
4301
_vala_code_node_unref0 (_tmp617_);
4241
ValaExpression* _tmp575_ = NULL;
4242
ValaSemanticAnalyzer* _tmp576_ = NULL;
4243
ValaSymbol* _tmp577_ = NULL;
4244
ValaDataType* _tmp578_ = NULL;
4245
ValaDataType* _tmp579_;
4246
_tmp575_ = vala_member_access_get_inner (self);
4247
_tmp576_ = vala_code_context_get_analyzer (context);
4248
_tmp577_ = vala_symbol_get_parent_symbol ((ValaSymbol*) base_property);
4249
_tmp578_ = vala_semantic_analyzer_get_data_type_for_symbol (VALA_TYPESYMBOL (_tmp577_));
4250
_tmp579_ = _tmp578_;
4251
vala_expression_set_target_type (_tmp575_, _tmp579_);
4252
_vala_code_node_unref0 (_tmp579_);
4303
4254
_vala_code_node_unref0 (base_property);
4304
4255
_vala_code_node_unref0 (prop);
4306
gboolean _tmp618_ = FALSE;
4307
gboolean _tmp619_ = FALSE;
4308
gboolean _tmp620_ = FALSE;
4309
ValaSymbol* _tmp621_ = NULL;
4310
_tmp621_ = vala_expression_get_symbol_reference ((ValaExpression*) self);
4311
if (VALA_IS_FIELD (_tmp621_)) {
4314
ValaSymbol* _tmp622_ = NULL;
4315
_tmp622_ = vala_expression_get_symbol_reference ((ValaExpression*) self);
4316
_tmp620_ = VALA_IS_SIGNAL (_tmp622_);
4319
_tmp619_ = instance;
4324
ValaSymbol* _tmp623_ = NULL;
4325
ValaSymbol* _tmp624_ = NULL;
4326
_tmp623_ = vala_expression_get_symbol_reference ((ValaExpression*) self);
4327
_tmp624_ = vala_symbol_get_parent_symbol (_tmp623_);
4328
_tmp618_ = _tmp624_ != NULL;
4333
ValaExpression* _tmp625_ = NULL;
4334
ValaSemanticAnalyzer* _tmp626_ = NULL;
4335
ValaSymbol* _tmp627_ = NULL;
4336
ValaSymbol* _tmp628_ = NULL;
4337
ValaDataType* _tmp629_ = NULL;
4338
ValaDataType* _tmp630_;
4339
_tmp625_ = vala_member_access_get_inner (self);
4340
_tmp626_ = vala_code_context_get_analyzer (context);
4341
_tmp627_ = vala_expression_get_symbol_reference ((ValaExpression*) self);
4342
_tmp628_ = vala_symbol_get_parent_symbol (_tmp627_);
4343
_tmp629_ = vala_semantic_analyzer_get_data_type_for_symbol (VALA_TYPESYMBOL (_tmp628_));
4344
_tmp630_ = _tmp629_;
4345
vala_expression_set_target_type (_tmp625_, _tmp630_);
4346
_vala_code_node_unref0 (_tmp630_);
4257
gboolean _tmp580_ = FALSE;
4258
gboolean _tmp581_ = FALSE;
4259
gboolean _tmp582_ = FALSE;
4260
ValaSymbol* _tmp583_ = NULL;
4261
_tmp583_ = vala_expression_get_symbol_reference ((ValaExpression*) self);
4262
if (VALA_IS_FIELD (_tmp583_)) {
4265
ValaSymbol* _tmp584_ = NULL;
4266
_tmp584_ = vala_expression_get_symbol_reference ((ValaExpression*) self);
4267
_tmp582_ = VALA_IS_SIGNAL (_tmp584_);
4270
_tmp581_ = instance;
4275
ValaSymbol* _tmp585_ = NULL;
4276
ValaSymbol* _tmp586_ = NULL;
4277
_tmp585_ = vala_expression_get_symbol_reference ((ValaExpression*) self);
4278
_tmp586_ = vala_symbol_get_parent_symbol (_tmp585_);
4279
_tmp580_ = _tmp586_ != NULL;
4284
ValaExpression* _tmp587_ = NULL;
4285
ValaSemanticAnalyzer* _tmp588_ = NULL;
4286
ValaSymbol* _tmp589_ = NULL;
4287
ValaSymbol* _tmp590_ = NULL;
4288
ValaDataType* _tmp591_ = NULL;
4289
ValaDataType* _tmp592_;
4290
_tmp587_ = vala_member_access_get_inner (self);
4291
_tmp588_ = vala_code_context_get_analyzer (context);
4292
_tmp589_ = vala_expression_get_symbol_reference ((ValaExpression*) self);
4293
_tmp590_ = vala_symbol_get_parent_symbol (_tmp589_);
4294
_tmp591_ = vala_semantic_analyzer_get_data_type_for_symbol (VALA_TYPESYMBOL (_tmp590_));
4295
_tmp592_ = _tmp591_;
4296
vala_expression_set_target_type (_tmp587_, _tmp592_);
4297
_vala_code_node_unref0 (_tmp592_);
4351
_tmp631_ = vala_code_node_get_error ((ValaCodeNode*) self);
4302
_tmp593_ = vala_code_node_get_error ((ValaCodeNode*) self);
4353
4304
_vala_code_node_unref0 (member);
4354
4305
_vala_code_node_unref0 (this_parameter);
4355
4306
_vala_code_node_unref0 (base_symbol);