Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
View | Details | Raw Unified | Return to bug 463720 | Differences between
and this patch

Collapse All | Expand All

(-)vala-0.18.1.orig/vala/valagirparser.c (-286 / +296 lines)
Lines 9459-9471 Link Here
9459
	gboolean _tmp237_ = FALSE;
9459
	gboolean _tmp237_ = FALSE;
9460
	ValaMarkupTokenType _tmp238_;
9460
	ValaMarkupTokenType _tmp238_;
9461
	gboolean _tmp242_;
9461
	gboolean _tmp242_;
9462
	ValaGirParserNode* _tmp311_;
9462
	ValaGirParserNode* _tmp314_;
9463
	ValaArrayList* _tmp312_;
9463
	ValaArrayList* _tmp315_;
9464
	ValaList* _tmp313_;
9464
	ValaList* _tmp316_;
9465
	gboolean _tmp344_ = FALSE;
9465
	gboolean _tmp347_ = FALSE;
9466
	const gchar* _tmp345_;
9466
	const gchar* _tmp348_;
9467
	gboolean _tmp347_;
9467
	gboolean _tmp350_;
9468
	const gchar* _tmp358_;
9468
	const gchar* _tmp361_;
9469
	g_return_if_fail (self != NULL);
9469
	g_return_if_fail (self != NULL);
9470
	g_return_if_fail (element_name != NULL);
9470
	g_return_if_fail (element_name != NULL);
9471
	_tmp0_ = element_name;
9471
	_tmp0_ = element_name;
Lines 10140-10341 Link Here
10140
		vala_gir_parser_next (self);
10140
		vala_gir_parser_next (self);
10141
		while (TRUE) {
10141
		while (TRUE) {
10142
			ValaMarkupTokenType _tmp243_;
10142
			ValaMarkupTokenType _tmp243_;
10143
			gboolean _tmp244_ = FALSE;
10143
			ValaMarkupReader* _tmp244_;
10144
			const gchar* _tmp245_;
10145
			const gchar* _tmp246_;
10146
			gboolean _tmp247_ = FALSE;
10144
			gint array_length_idx = 0;
10147
			gint array_length_idx = 0;
10145
			gint closure_idx = 0;
10148
			gint closure_idx = 0;
10146
			gint destroy_idx = 0;
10149
			gint destroy_idx = 0;
10147
			gchar* scope = NULL;
10150
			gchar* scope = NULL;
10148
			gchar* default_param_name;
10151
			gchar* default_param_name;
10149
			ValaComment* param_comment = NULL;
10152
			ValaComment* param_comment = NULL;
10150
			ValaArrayList* _tmp245_;
10153
			ValaArrayList* _tmp248_;
10151
			gint _tmp246_;
10154
			gint _tmp249_;
10152
			gint _tmp247_;
10155
			gint _tmp250_;
10153
			gchar* _tmp248_ = NULL;
10156
			gchar* _tmp251_ = NULL;
10154
			const gchar* _tmp249_;
10157
			const gchar* _tmp252_;
10155
			gint _tmp250_ = 0;
10158
			gint _tmp253_ = 0;
10156
			gint _tmp251_ = 0;
10159
			gint _tmp254_ = 0;
10157
			gint _tmp252_ = 0;
10160
			gint _tmp255_ = 0;
10158
			gchar* _tmp253_ = NULL;
10161
			gchar* _tmp256_ = NULL;
10159
			ValaComment* _tmp254_ = NULL;
10162
			ValaComment* _tmp257_ = NULL;
10160
			ValaParameter* _tmp255_ = NULL;
10163
			ValaParameter* _tmp258_ = NULL;
10161
			ValaParameter* param;
10164
			ValaParameter* param;
10162
			gint _tmp256_;
10165
			gint _tmp259_;
10163
			gint _tmp260_;
10166
			gint _tmp263_;
10164
			gint _tmp264_;
10167
			gint _tmp267_;
10165
			ValaComment* _tmp268_;
10168
			ValaComment* _tmp271_;
10166
			ValaParameter* _tmp286_;
10169
			ValaParameter* _tmp289_;
10167
			gint _tmp287_;
10170
			gint _tmp290_;
10168
			gint _tmp288_;
10171
			gint _tmp291_;
10169
			gint _tmp289_;
10172
			gint _tmp292_;
10170
			ValaGirParserParameterInfo* _tmp290_;
10173
			ValaGirParserParameterInfo* _tmp293_;
10171
			ValaGirParserParameterInfo* info;
10174
			ValaGirParserParameterInfo* info;
10172
			gboolean _tmp291_ = FALSE;
10175
			gboolean _tmp294_ = FALSE;
10173
			ValaSymbol* _tmp292_;
10176
			ValaSymbol* _tmp295_;
10174
			gboolean _tmp294_;
10177
			gboolean _tmp297_;
10175
			ValaArrayList* _tmp309_;
10178
			ValaArrayList* _tmp312_;
10176
			ValaGirParserParameterInfo* _tmp310_;
10179
			ValaGirParserParameterInfo* _tmp313_;
10177
			_tmp243_ = self->priv->current_token;
10180
			_tmp243_ = self->priv->current_token;
10178
			if (!(_tmp243_ == VALA_MARKUP_TOKEN_TYPE_START_ELEMENT)) {
10181
			if (!(_tmp243_ == VALA_MARKUP_TOKEN_TYPE_START_ELEMENT)) {
10179
				break;
10182
				break;
10180
			}
10183
			}
10181
			_tmp244_ = vala_gir_parser_push_metadata (self);
10184
			_tmp244_ = self->priv->reader;
10182
			if (!_tmp244_) {
10185
			_tmp245_ = vala_markup_reader_get_name (_tmp244_);
10186
			_tmp246_ = _tmp245_;
10187
			if (g_strcmp0 (_tmp246_, "instance-parameter") == 0) {
10188
				vala_gir_parser_skip_element (self);
10189
				continue;
10190
			}
10191
			_tmp247_ = vala_gir_parser_push_metadata (self);
10192
			if (!_tmp247_) {
10183
				vala_gir_parser_skip_element (self);
10193
				vala_gir_parser_skip_element (self);
10184
				continue;
10194
				continue;
10185
			}
10195
			}
10186
			default_param_name = NULL;
10196
			default_param_name = NULL;
10187
			_tmp245_ = parameters;
10197
			_tmp248_ = parameters;
10188
			_tmp246_ = vala_collection_get_size ((ValaCollection*) _tmp245_);
10198
			_tmp249_ = vala_collection_get_size ((ValaCollection*) _tmp248_);
10189
			_tmp247_ = _tmp246_;
10199
			_tmp250_ = _tmp249_;
10190
			_tmp248_ = g_strdup_printf ("arg%d", _tmp247_);
10200
			_tmp251_ = g_strdup_printf ("arg%d", _tmp250_);
10191
			_g_free0 (default_param_name);
10201
			_g_free0 (default_param_name);
10192
			default_param_name = _tmp248_;
10202
			default_param_name = _tmp251_;
10193
			_tmp249_ = default_param_name;
10203
			_tmp252_ = default_param_name;
10194
			_tmp255_ = vala_gir_parser_parse_parameter (self, &_tmp250_, &_tmp251_, &_tmp252_, &_tmp253_, &_tmp254_, _tmp249_);
10204
			_tmp258_ = vala_gir_parser_parse_parameter (self, &_tmp253_, &_tmp254_, &_tmp255_, &_tmp256_, &_tmp257_, _tmp252_);
10195
			array_length_idx = _tmp250_;
10205
			array_length_idx = _tmp253_;
10196
			closure_idx = _tmp251_;
10206
			closure_idx = _tmp254_;
10197
			destroy_idx = _tmp252_;
10207
			destroy_idx = _tmp255_;
10198
			_g_free0 (scope);
10208
			_g_free0 (scope);
10199
			scope = _tmp253_;
10209
			scope = _tmp256_;
10200
			_vala_comment_unref0 (param_comment);
10210
			_vala_comment_unref0 (param_comment);
10201
			param_comment = _tmp254_;
10211
			param_comment = _tmp257_;
10202
			param = _tmp255_;
10212
			param = _tmp258_;
10203
			_tmp256_ = array_length_idx;
10213
			_tmp259_ = array_length_idx;
10204
			if (_tmp256_ != (-1)) {
10214
			if (_tmp259_ != (-1)) {
10205
				ValaGirParserNode* _tmp257_;
10215
				ValaGirParserNode* _tmp260_;
10206
				ValaArrayList* _tmp258_;
10216
				ValaArrayList* _tmp261_;
10207
				gint _tmp259_;
10217
				gint _tmp262_;
10208
				_tmp257_ = self->priv->current;
10218
				_tmp260_ = self->priv->current;
10209
				_tmp258_ = _tmp257_->array_length_parameters;
10219
				_tmp261_ = _tmp260_->array_length_parameters;
10210
				_tmp259_ = array_length_idx;
10220
				_tmp262_ = array_length_idx;
10211
				vala_collection_add ((ValaCollection*) _tmp258_, (gpointer) ((gintptr) _tmp259_));
10221
				vala_collection_add ((ValaCollection*) _tmp261_, (gpointer) ((gintptr) _tmp262_));
10212
			}
10222
			}
10213
			_tmp260_ = closure_idx;
10223
			_tmp263_ = closure_idx;
10214
			if (_tmp260_ != (-1)) {
10224
			if (_tmp263_ != (-1)) {
10215
				ValaGirParserNode* _tmp261_;
10225
				ValaGirParserNode* _tmp264_;
10216
				ValaArrayList* _tmp262_;
10226
				ValaArrayList* _tmp265_;
10217
				gint _tmp263_;
10227
				gint _tmp266_;
10218
				_tmp261_ = self->priv->current;
10228
				_tmp264_ = self->priv->current;
10219
				_tmp262_ = _tmp261_->closure_parameters;
10229
				_tmp265_ = _tmp264_->closure_parameters;
10220
				_tmp263_ = closure_idx;
10230
				_tmp266_ = closure_idx;
10221
				vala_collection_add ((ValaCollection*) _tmp262_, (gpointer) ((gintptr) _tmp263_));
10231
				vala_collection_add ((ValaCollection*) _tmp265_, (gpointer) ((gintptr) _tmp266_));
10222
			}
10232
			}
10223
			_tmp264_ = destroy_idx;
10233
			_tmp267_ = destroy_idx;
10224
			if (_tmp264_ != (-1)) {
10234
			if (_tmp267_ != (-1)) {
10225
				ValaGirParserNode* _tmp265_;
10235
				ValaGirParserNode* _tmp268_;
10226
				ValaArrayList* _tmp266_;
10236
				ValaArrayList* _tmp269_;
10227
				gint _tmp267_;
10237
				gint _tmp270_;
10228
				_tmp265_ = self->priv->current;
10238
				_tmp268_ = self->priv->current;
10229
				_tmp266_ = _tmp265_->destroy_parameters;
10239
				_tmp269_ = _tmp268_->destroy_parameters;
10230
				_tmp267_ = destroy_idx;
10240
				_tmp270_ = destroy_idx;
10231
				vala_collection_add ((ValaCollection*) _tmp266_, (gpointer) ((gintptr) _tmp267_));
10241
				vala_collection_add ((ValaCollection*) _tmp269_, (gpointer) ((gintptr) _tmp270_));
10232
			}
10242
			}
10233
			_tmp268_ = param_comment;
10243
			_tmp271_ = param_comment;
10234
			if (_tmp268_ != NULL) {
10244
			if (_tmp271_ != NULL) {
10235
				ValaGirComment* _tmp269_;
10245
				ValaGirComment* _tmp272_;
10236
				const gchar* _tmp276_ = NULL;
10246
				const gchar* _tmp279_ = NULL;
10237
				ValaParameter* _tmp277_;
10247
				ValaParameter* _tmp280_;
10238
				gboolean _tmp278_;
10248
				gboolean _tmp281_;
10239
				gboolean _tmp279_;
10249
				gboolean _tmp282_;
10240
				ValaGirComment* _tmp283_;
10250
				ValaGirComment* _tmp286_;
10241
				const gchar* _tmp284_;
10251
				const gchar* _tmp287_;
10242
				ValaComment* _tmp285_;
10252
				ValaComment* _tmp288_;
10243
				_tmp269_ = comment;
10253
				_tmp272_ = comment;
10244
				if (_tmp269_ == NULL) {
10254
				if (_tmp272_ == NULL) {
10245
					ValaSymbol* _tmp270_;
10255
					ValaSymbol* _tmp273_;
10246
					ValaSourceReference* _tmp271_;
10256
					ValaSourceReference* _tmp274_;
10247
					ValaSourceReference* _tmp272_;
10257
					ValaSourceReference* _tmp275_;
10248
					ValaGirComment* _tmp273_;
10258
					ValaGirComment* _tmp276_;
10249
					ValaSymbol* _tmp274_;
10259
					ValaSymbol* _tmp277_;
10250
					ValaGirComment* _tmp275_;
10260
					ValaGirComment* _tmp278_;
10251
					_tmp270_ = s;
10261
					_tmp273_ = s;
10252
					_tmp271_ = vala_code_node_get_source_reference ((ValaCodeNode*) _tmp270_);
10262
					_tmp274_ = vala_code_node_get_source_reference ((ValaCodeNode*) _tmp273_);
10253
					_tmp272_ = _tmp271_;
10263
					_tmp275_ = _tmp274_;
10254
					_tmp273_ = vala_gir_comment_new (NULL, _tmp272_);
10264
					_tmp276_ = vala_gir_comment_new (NULL, _tmp275_);
10255
					_vala_comment_unref0 (comment);
10265
					_vala_comment_unref0 (comment);
10256
					comment = _tmp273_;
10266
					comment = _tmp276_;
10257
					_tmp274_ = s;
10267
					_tmp277_ = s;
10258
					_tmp275_ = comment;
10268
					_tmp278_ = comment;
10259
					vala_symbol_set_comment (_tmp274_, (ValaComment*) _tmp275_);
10269
					vala_symbol_set_comment (_tmp277_, (ValaComment*) _tmp278_);
10260
				}
10270
				}
10261
				_tmp277_ = param;
10271
				_tmp280_ = param;
10262
				_tmp278_ = vala_parameter_get_ellipsis (_tmp277_);
10272
				_tmp281_ = vala_parameter_get_ellipsis (_tmp280_);
10263
				_tmp279_ = _tmp278_;
10273
				_tmp282_ = _tmp281_;
10264
				if (_tmp279_) {
10274
				if (_tmp282_) {
10265
					_tmp276_ = "...";
10275
					_tmp279_ = "...";
10266
				} else {
10276
				} else {
10267
					ValaParameter* _tmp280_;
10277
					ValaParameter* _tmp283_;
10268
					const gchar* _tmp281_;
10278
					const gchar* _tmp284_;
10269
					const gchar* _tmp282_;
10279
					const gchar* _tmp285_;
10270
					_tmp280_ = param;
10280
					_tmp283_ = param;
10271
					_tmp281_ = vala_symbol_get_name ((ValaSymbol*) _tmp280_);
10281
					_tmp284_ = vala_symbol_get_name ((ValaSymbol*) _tmp283_);
10272
					_tmp282_ = _tmp281_;
10282
					_tmp285_ = _tmp284_;
10273
					_tmp276_ = _tmp282_;
10283
					_tmp279_ = _tmp285_;
10274
				}
10284
				}
10275
				_tmp283_ = comment;
10285
				_tmp286_ = comment;
10276
				_tmp284_ = _tmp276_;
10286
				_tmp287_ = _tmp279_;
10277
				_tmp285_ = param_comment;
10287
				_tmp288_ = param_comment;
10278
				vala_gir_comment_add_content_for_parameter (_tmp283_, _tmp284_, _tmp285_);
10288
				vala_gir_comment_add_content_for_parameter (_tmp286_, _tmp287_, _tmp288_);
10279
			}
10289
			}
10280
			_tmp286_ = param;
10290
			_tmp289_ = param;
10281
			_tmp287_ = array_length_idx;
10291
			_tmp290_ = array_length_idx;
10282
			_tmp288_ = closure_idx;
10292
			_tmp291_ = closure_idx;
10283
			_tmp289_ = destroy_idx;
10293
			_tmp292_ = destroy_idx;
10284
			_tmp290_ = vala_gir_parser_parameter_info_new (_tmp286_, _tmp287_, _tmp288_, _tmp289_);
10294
			_tmp293_ = vala_gir_parser_parameter_info_new (_tmp289_, _tmp290_, _tmp291_, _tmp292_);
10285
			info = _tmp290_;
10295
			info = _tmp293_;
10286
			_tmp292_ = s;
10296
			_tmp295_ = s;
10287
			if (G_TYPE_CHECK_INSTANCE_TYPE (_tmp292_, VALA_TYPE_METHOD)) {
10297
			if (G_TYPE_CHECK_INSTANCE_TYPE (_tmp295_, VALA_TYPE_METHOD)) {
10288
				const gchar* _tmp293_;
10298
				const gchar* _tmp296_;
10289
				_tmp293_ = scope;
10299
				_tmp296_ = scope;
10290
				_tmp291_ = g_strcmp0 (_tmp293_, "async") == 0;
10300
				_tmp294_ = g_strcmp0 (_tmp296_, "async") == 0;
10291
			} else {
10301
			} else {
10292
				_tmp291_ = FALSE;
10302
				_tmp294_ = FALSE;
10293
			}
10303
			}
10294
			_tmp294_ = _tmp291_;
10304
			_tmp297_ = _tmp294_;
10295
			if (_tmp294_) {
10305
			if (_tmp297_) {
10296
				ValaParameter* _tmp295_;
10306
				ValaParameter* _tmp298_;
10297
				ValaDataType* _tmp296_;
10307
				ValaDataType* _tmp299_;
10298
				ValaDataType* _tmp297_;
10308
				ValaDataType* _tmp300_;
10299
				ValaUnresolvedType* _tmp298_;
10309
				ValaUnresolvedType* _tmp301_;
10300
				ValaUnresolvedType* unresolved_type;
10310
				ValaUnresolvedType* unresolved_type;
10301
				gboolean _tmp299_ = FALSE;
10311
				gboolean _tmp302_ = FALSE;
10302
				ValaUnresolvedType* _tmp300_;
10312
				ValaUnresolvedType* _tmp303_;
10303
				gboolean _tmp306_;
10313
				gboolean _tmp309_;
10304
				_tmp295_ = param;
10314
				_tmp298_ = param;
10305
				_tmp296_ = vala_variable_get_variable_type ((ValaVariable*) _tmp295_);
10315
				_tmp299_ = vala_variable_get_variable_type ((ValaVariable*) _tmp298_);
10306
				_tmp297_ = _tmp296_;
10316
				_tmp300_ = _tmp299_;
10307
				_tmp298_ = _vala_code_node_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp297_, VALA_TYPE_UNRESOLVED_TYPE) ? ((ValaUnresolvedType*) _tmp297_) : NULL);
10317
				_tmp301_ = _vala_code_node_ref0 (G_TYPE_CHECK_INSTANCE_TYPE (_tmp300_, VALA_TYPE_UNRESOLVED_TYPE) ? ((ValaUnresolvedType*) _tmp300_) : NULL);
10308
				unresolved_type = _tmp298_;
10318
				unresolved_type = _tmp301_;
10309
				_tmp300_ = unresolved_type;
10319
				_tmp303_ = unresolved_type;
10310
				if (_tmp300_ != NULL) {
10320
				if (_tmp303_ != NULL) {
10311
					ValaUnresolvedType* _tmp301_;
10321
					ValaUnresolvedType* _tmp304_;
10312
					ValaUnresolvedSymbol* _tmp302_;
10322
					ValaUnresolvedSymbol* _tmp305_;
10313
					ValaUnresolvedSymbol* _tmp303_;
10323
					ValaUnresolvedSymbol* _tmp306_;
10314
					const gchar* _tmp304_;
10324
					const gchar* _tmp307_;
10315
					const gchar* _tmp305_;
10325
					const gchar* _tmp308_;
10316
					_tmp301_ = unresolved_type;
10326
					_tmp304_ = unresolved_type;
10317
					_tmp302_ = vala_unresolved_type_get_unresolved_symbol (_tmp301_);
10327
					_tmp305_ = vala_unresolved_type_get_unresolved_symbol (_tmp304_);
10318
					_tmp303_ = _tmp302_;
10328
					_tmp306_ = _tmp305_;
10319
					_tmp304_ = vala_symbol_get_name ((ValaSymbol*) _tmp303_);
10329
					_tmp307_ = vala_symbol_get_name ((ValaSymbol*) _tmp306_);
10320
					_tmp305_ = _tmp304_;
10330
					_tmp308_ = _tmp307_;
10321
					_tmp299_ = g_strcmp0 (_tmp305_, "AsyncReadyCallback") == 0;
10331
					_tmp302_ = g_strcmp0 (_tmp308_, "AsyncReadyCallback") == 0;
10322
				} else {
10332
				} else {
10323
					_tmp299_ = FALSE;
10333
					_tmp302_ = FALSE;
10324
				}
10334
				}
10325
				_tmp306_ = _tmp299_;
10335
				_tmp309_ = _tmp302_;
10326
				if (_tmp306_) {
10336
				if (_tmp309_) {
10327
					ValaSymbol* _tmp307_;
10337
					ValaSymbol* _tmp310_;
10328
					ValaGirParserParameterInfo* _tmp308_;
10338
					ValaGirParserParameterInfo* _tmp311_;
10329
					_tmp307_ = s;
10339
					_tmp310_ = s;
10330
					vala_method_set_coroutine (G_TYPE_CHECK_INSTANCE_CAST (_tmp307_, VALA_TYPE_METHOD, ValaMethod), TRUE);
10340
					vala_method_set_coroutine (G_TYPE_CHECK_INSTANCE_CAST (_tmp310_, VALA_TYPE_METHOD, ValaMethod), TRUE);
10331
					_tmp308_ = info;
10341
					_tmp311_ = info;
10332
					_tmp308_->keep = FALSE;
10342
					_tmp311_->keep = FALSE;
10333
				}
10343
				}
10334
				_vala_code_node_unref0 (unresolved_type);
10344
				_vala_code_node_unref0 (unresolved_type);
10335
			}
10345
			}
10336
			_tmp309_ = parameters;
10346
			_tmp312_ = parameters;
10337
			_tmp310_ = info;
10347
			_tmp313_ = info;
10338
			vala_collection_add ((ValaCollection*) _tmp309_, _tmp310_);
10348
			vala_collection_add ((ValaCollection*) _tmp312_, _tmp313_);
10339
			vala_gir_parser_pop_metadata (self);
10349
			vala_gir_parser_pop_metadata (self);
10340
			_vala_gir_parser_parameter_info_unref0 (info);
10350
			_vala_gir_parser_parameter_info_unref0 (info);
10341
			_vala_code_node_unref0 (param);
10351
			_vala_code_node_unref0 (param);
Lines 10345-10439 Link Here
10345
		}
10355
		}
10346
		vala_gir_parser_end_element (self, "parameters");
10356
		vala_gir_parser_end_element (self, "parameters");
10347
	}
10357
	}
10348
	_tmp311_ = self->priv->current;
10358
	_tmp314_ = self->priv->current;
10349
	_tmp312_ = parameters;
10359
	_tmp315_ = parameters;
10350
	_tmp313_ = _vala_iterable_ref0 ((ValaList*) _tmp312_);
10360
	_tmp316_ = _vala_iterable_ref0 ((ValaList*) _tmp315_);
10351
	_vala_iterable_unref0 (_tmp311_->parameters);
10361
	_vala_iterable_unref0 (_tmp314_->parameters);
10352
	_tmp311_->parameters = _tmp313_;
10362
	_tmp314_->parameters = _tmp316_;
10353
	{
10363
	{
10354
		ValaArrayList* _tmp314_;
10364
		ValaArrayList* _tmp317_;
10355
		gint _tmp315_;
10365
		gint _tmp318_;
10356
		gint _tmp316_;
10366
		gint _tmp319_;
10357
		gint param_n;
10367
		gint param_n;
10358
		_tmp314_ = parameters;
10368
		_tmp317_ = parameters;
10359
		_tmp315_ = vala_collection_get_size ((ValaCollection*) _tmp314_);
10369
		_tmp318_ = vala_collection_get_size ((ValaCollection*) _tmp317_);
10360
		_tmp316_ = _tmp315_;
10370
		_tmp319_ = _tmp318_;
10361
		param_n = _tmp316_ - 1;
10371
		param_n = _tmp319_ - 1;
10362
		{
10372
		{
10363
			gboolean _tmp317_;
10373
			gboolean _tmp320_;
10364
			_tmp317_ = TRUE;
10374
			_tmp320_ = TRUE;
10365
			while (TRUE) {
10375
			while (TRUE) {
10366
				gboolean _tmp318_;
10376
				gboolean _tmp321_;
10367
				gint _tmp320_;
10377
				gint _tmp323_;
10368
				ValaArrayList* _tmp321_;
10378
				ValaArrayList* _tmp324_;
10369
				gint _tmp322_;
10379
				gint _tmp325_;
10370
				gpointer _tmp323_ = NULL;
10380
				gpointer _tmp326_ = NULL;
10371
				ValaGirParserParameterInfo* pi;
10381
				ValaGirParserParameterInfo* pi;
10372
				gboolean _tmp324_ = FALSE;
10382
				gboolean _tmp327_ = FALSE;
10373
				ValaGirParserParameterInfo* _tmp325_;
10383
				ValaGirParserParameterInfo* _tmp328_;
10374
				ValaParameter* _tmp326_;
10384
				ValaParameter* _tmp329_;
10375
				gboolean _tmp327_;
10385
				gboolean _tmp330_;
10376
				gboolean _tmp328_;
10386
				gboolean _tmp331_;
10377
				gboolean _tmp333_;
10387
				gboolean _tmp336_;
10378
				_tmp318_ = _tmp317_;
10388
				_tmp321_ = _tmp320_;
10379
				if (!_tmp318_) {
10389
				if (!_tmp321_) {
10380
					gint _tmp319_;
10390
					gint _tmp322_;
10381
					_tmp319_ = param_n;
10391
					_tmp322_ = param_n;
10382
					param_n = _tmp319_ - 1;
10392
					param_n = _tmp322_ - 1;
10383
				}
10393
				}
10384
				_tmp317_ = FALSE;
10394
				_tmp320_ = FALSE;
10385
				_tmp320_ = param_n;
10395
				_tmp323_ = param_n;
10386
				if (!(_tmp320_ >= 0)) {
10396
				if (!(_tmp323_ >= 0)) {
10387
					break;
10397
					break;
10388
				}
10398
				}
10389
				_tmp321_ = parameters;
10399
				_tmp324_ = parameters;
10390
				_tmp322_ = param_n;
10400
				_tmp325_ = param_n;
10391
				_tmp323_ = vala_list_get ((ValaList*) _tmp321_, _tmp322_);
10401
				_tmp326_ = vala_list_get ((ValaList*) _tmp324_, _tmp325_);
10392
				pi = (ValaGirParserParameterInfo*) _tmp323_;
10402
				pi = (ValaGirParserParameterInfo*) _tmp326_;
10393
				_tmp325_ = pi;
10403
				_tmp328_ = pi;
10394
				_tmp326_ = _tmp325_->param;
10404
				_tmp329_ = _tmp328_->param;
10395
				_tmp327_ = vala_parameter_get_ellipsis (_tmp326_);
10405
				_tmp330_ = vala_parameter_get_ellipsis (_tmp329_);
10396
				_tmp328_ = _tmp327_;
10406
				_tmp331_ = _tmp330_;
10397
				if (!_tmp328_) {
10407
				if (!_tmp331_) {
10398
					ValaGirParserParameterInfo* _tmp329_;
10408
					ValaGirParserParameterInfo* _tmp332_;
10399
					ValaParameter* _tmp330_;
10409
					ValaParameter* _tmp333_;
10400
					ValaExpression* _tmp331_;
10410
					ValaExpression* _tmp334_;
10401
					ValaExpression* _tmp332_;
10411
					ValaExpression* _tmp335_;
10402
					_tmp329_ = pi;
10412
					_tmp332_ = pi;
10403
					_tmp330_ = _tmp329_->param;
10413
					_tmp333_ = _tmp332_->param;
10404
					_tmp331_ = vala_variable_get_initializer ((ValaVariable*) _tmp330_);
10414
					_tmp334_ = vala_variable_get_initializer ((ValaVariable*) _tmp333_);
10405
					_tmp332_ = _tmp331_;
10415
					_tmp335_ = _tmp334_;
10406
					_tmp324_ = _tmp332_ == NULL;
10416
					_tmp327_ = _tmp335_ == NULL;
10407
				} else {
10417
				} else {
10408
					_tmp324_ = FALSE;
10418
					_tmp327_ = FALSE;
10409
				}
10419
				}
10410
				_tmp333_ = _tmp324_;
10420
				_tmp336_ = _tmp327_;
10411
				if (_tmp333_) {
10421
				if (_tmp336_) {
10412
					ValaGirParserParameterInfo* _tmp334_;
10422
					ValaGirParserParameterInfo* _tmp337_;
10413
					ValaParameter* _tmp335_;
10423
					ValaParameter* _tmp338_;
10414
					ValaDataType* _tmp336_;
10424
					ValaDataType* _tmp339_;
10415
					ValaDataType* _tmp337_;
10425
					ValaDataType* _tmp340_;
10416
					gchar* _tmp338_ = NULL;
10426
					gchar* _tmp341_ = NULL;
10417
					gchar* type_string;
10427
					gchar* type_string;
10418
					const gchar* _tmp339_;
10428
					const gchar* _tmp342_;
10419
					_tmp334_ = pi;
10429
					_tmp337_ = pi;
10420
					_tmp335_ = _tmp334_->param;
10430
					_tmp338_ = _tmp337_->param;
10421
					_tmp336_ = vala_variable_get_variable_type ((ValaVariable*) _tmp335_);
10431
					_tmp339_ = vala_variable_get_variable_type ((ValaVariable*) _tmp338_);
10422
					_tmp337_ = _tmp336_;
10432
					_tmp340_ = _tmp339_;
10423
					_tmp338_ = vala_code_node_to_string ((ValaCodeNode*) _tmp337_);
10433
					_tmp341_ = vala_code_node_to_string ((ValaCodeNode*) _tmp340_);
10424
					type_string = _tmp338_;
10434
					type_string = _tmp341_;
10425
					_tmp339_ = type_string;
10435
					_tmp342_ = type_string;
10426
					if (g_strcmp0 (_tmp339_, "Gio.Cancellable?") == 0) {
10436
					if (g_strcmp0 (_tmp342_, "Gio.Cancellable?") == 0) {
10427
						ValaGirParserParameterInfo* _tmp340_;
10437
						ValaGirParserParameterInfo* _tmp343_;
10428
						ValaParameter* _tmp341_;
10438
						ValaParameter* _tmp344_;
10429
						ValaNullLiteral* _tmp342_;
10439
						ValaNullLiteral* _tmp345_;
10430
						ValaNullLiteral* _tmp343_;
10440
						ValaNullLiteral* _tmp346_;
10431
						_tmp340_ = pi;
10441
						_tmp343_ = pi;
10432
						_tmp341_ = _tmp340_->param;
10442
						_tmp344_ = _tmp343_->param;
10433
						_tmp342_ = vala_null_literal_new (NULL);
10443
						_tmp345_ = vala_null_literal_new (NULL);
10434
						_tmp343_ = _tmp342_;
10444
						_tmp346_ = _tmp345_;
10435
						vala_variable_set_initializer ((ValaVariable*) _tmp341_, (ValaExpression*) _tmp343_);
10445
						vala_variable_set_initializer ((ValaVariable*) _tmp344_, (ValaExpression*) _tmp346_);
10436
						_vala_code_node_unref0 (_tmp343_);
10446
						_vala_code_node_unref0 (_tmp346_);
10437
					} else {
10447
					} else {
10438
						_g_free0 (type_string);
10448
						_g_free0 (type_string);
10439
						_vala_gir_parser_parameter_info_unref0 (pi);
10449
						_vala_gir_parser_parameter_info_unref0 (pi);
Lines 10445-10493 Link Here
10445
			}
10455
			}
10446
		}
10456
		}
10447
	}
10457
	}
10448
	_tmp345_ = element_name;
10458
	_tmp348_ = element_name;
10449
	if (g_strcmp0 (_tmp345_, "function") == 0) {
10459
	if (g_strcmp0 (_tmp348_, "function") == 0) {
10450
		const gchar* _tmp346_;
10460
		const gchar* _tmp349_;
10451
		_tmp346_ = symbol_type;
10461
		_tmp349_ = symbol_type;
10452
		_tmp344_ = g_strcmp0 (_tmp346_, "method") == 0;
10462
		_tmp347_ = g_strcmp0 (_tmp349_, "method") == 0;
10453
	} else {
10463
	} else {
10454
		_tmp344_ = FALSE;
10464
		_tmp347_ = FALSE;
10455
	}
10465
	}
10456
	_tmp347_ = _tmp344_;
10466
	_tmp350_ = _tmp347_;
10457
	if (_tmp347_) {
10467
	if (_tmp350_) {
10458
		ValaGirParserMetadata* _tmp348_;
10468
		ValaGirParserMetadata* _tmp351_;
10459
		gboolean _tmp349_ = FALSE;
10469
		gboolean _tmp352_ = FALSE;
10460
		_tmp348_ = self->priv->metadata;
10470
		_tmp351_ = self->priv->metadata;
10461
		_tmp349_ = vala_gir_parser_metadata_has_argument (_tmp348_, VALA_GIR_PARSER_ARGUMENT_TYPE_INSTANCE_IDX);
10471
		_tmp352_ = vala_gir_parser_metadata_has_argument (_tmp351_, VALA_GIR_PARSER_ARGUMENT_TYPE_INSTANCE_IDX);
10462
		if (_tmp349_) {
10472
		if (_tmp352_) {
10463
			ValaGirParserMetadata* _tmp350_;
10473
			ValaGirParserMetadata* _tmp353_;
10464
			gint _tmp351_ = 0;
10474
			gint _tmp354_ = 0;
10465
			gint instance_pos;
10475
			gint instance_pos;
10466
			ValaSymbol* _tmp352_;
10476
			ValaSymbol* _tmp355_;
10467
			gint _tmp353_;
10477
			gint _tmp356_;
10468
			ValaArrayList* _tmp354_;
10478
			ValaArrayList* _tmp357_;
10469
			gint _tmp355_;
10479
			gint _tmp358_;
10470
			_tmp350_ = self->priv->metadata;
10480
			_tmp353_ = self->priv->metadata;
10471
			_tmp351_ = vala_gir_parser_metadata_get_integer (_tmp350_, VALA_GIR_PARSER_ARGUMENT_TYPE_INSTANCE_IDX);
10481
			_tmp354_ = vala_gir_parser_metadata_get_integer (_tmp353_, VALA_GIR_PARSER_ARGUMENT_TYPE_INSTANCE_IDX);
10472
			instance_pos = _tmp351_;
10482
			instance_pos = _tmp354_;
10473
			_tmp352_ = s;
10483
			_tmp355_ = s;
10474
			_tmp353_ = instance_pos;
10484
			_tmp356_ = instance_pos;
10475
			vala_code_node_set_attribute_double ((ValaCodeNode*) _tmp352_, "CCode", "instance_pos", _tmp353_ + 0.5, NULL);
10485
			vala_code_node_set_attribute_double ((ValaCodeNode*) _tmp355_, "CCode", "instance_pos", _tmp356_ + 0.5, NULL);
10476
			_tmp354_ = parameters;
10486
			_tmp357_ = parameters;
10477
			_tmp355_ = instance_pos;
10487
			_tmp358_ = instance_pos;
10478
			vala_list_remove_at ((ValaList*) _tmp354_, _tmp355_);
10488
			vala_list_remove_at ((ValaList*) _tmp357_, _tmp358_);
10479
		} else {
10489
		} else {
10480
			ValaSourceReference* _tmp356_ = NULL;
10490
			ValaSourceReference* _tmp359_ = NULL;
10481
			ValaSourceReference* _tmp357_;
10491
			ValaSourceReference* _tmp360_;
10482
			_tmp356_ = vala_gir_parser_get_current_src (self);
10492
			_tmp359_ = vala_gir_parser_get_current_src (self);
10483
			_tmp357_ = _tmp356_;
10493
			_tmp360_ = _tmp359_;
10484
			vala_report_error (_tmp357_, "instance_idx required when converting function to method");
10494
			vala_report_error (_tmp360_, "instance_idx required when converting function to method");
10485
			_vala_source_reference_unref0 (_tmp357_);
10495
			_vala_source_reference_unref0 (_tmp360_);
10486
		}
10496
		}
10487
	}
10497
	}
10488
	vala_gir_parser_pop_node (self);
10498
	vala_gir_parser_pop_node (self);
10489
	_tmp358_ = element_name;
10499
	_tmp361_ = element_name;
10490
	vala_gir_parser_end_element (self, _tmp358_);
10500
	vala_gir_parser_end_element (self, _tmp361_);
10491
	_vala_iterable_unref0 (parameters);
10501
	_vala_iterable_unref0 (parameters);
10492
	_vala_code_node_unref0 (s);
10502
	_vala_code_node_unref0 (s);
10493
	_g_free0 (return_ctype);
10503
	_g_free0 (return_ctype);

Return to bug 463720