56 |
56 |
57 { |
57 { |
58 identifier_c param_name("IN"); |
58 identifier_c param_name("IN"); |
59 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
59 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
60 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
60 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
61 |
61 symbol_c *IN_type_symbol = NULL; |
62 /* Get the value from a foo(<param_value>) style call */ |
62 |
63 if (IN_param_value == NULL) |
63 /* Get the value from a foo(<param_value>) style call */ |
64 IN_param_value = function_call_param_iterator.next(); |
64 if (IN_param_value == NULL) |
65 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
65 IN_param_value = function_call_param_iterator.next(); |
66 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
66 if (IN_param_value != NULL) { |
67 |
67 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
68 if(search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol)) |
68 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
69 } |
|
70 |
|
71 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol)) |
69 { |
72 { |
70 |
73 |
71 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name; |
74 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name; |
72 return return_type_symbol; |
75 return return_type_symbol; |
73 |
76 |
89 |
92 |
90 { |
93 { |
91 identifier_c param_name("IN"); |
94 identifier_c param_name("IN"); |
92 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
95 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
93 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
96 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
94 |
97 symbol_c *IN_type_symbol = NULL; |
95 /* Get the value from a foo(<param_value>) style call */ |
98 |
96 if (IN_param_value == NULL) |
99 /* Get the value from a foo(<param_value>) style call */ |
97 IN_param_value = function_call_param_iterator.next(); |
100 if (IN_param_value == NULL) |
98 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
101 IN_param_value = function_call_param_iterator.next(); |
99 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
102 if (IN_param_value != NULL) { |
100 |
103 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
101 if(search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol)) |
104 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
105 } |
|
106 |
|
107 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol)) |
102 { |
108 { |
103 |
109 |
104 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name; |
110 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name; |
105 return return_type_symbol; |
111 return return_type_symbol; |
106 |
112 |
122 |
128 |
123 { |
129 { |
124 identifier_c param_name("IN"); |
130 identifier_c param_name("IN"); |
125 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
131 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
126 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
132 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
127 |
133 symbol_c *IN_type_symbol = NULL; |
128 /* Get the value from a foo(<param_value>) style call */ |
134 |
129 if (IN_param_value == NULL) |
135 /* Get the value from a foo(<param_value>) style call */ |
130 IN_param_value = function_call_param_iterator.next(); |
136 if (IN_param_value == NULL) |
131 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
137 IN_param_value = function_call_param_iterator.next(); |
132 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
138 if (IN_param_value != NULL) { |
133 |
139 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
134 if(search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol)) |
140 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
141 } |
|
142 |
|
143 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol)) |
135 { |
144 { |
136 |
145 |
137 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name; |
146 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name; |
138 return return_type_symbol; |
147 return return_type_symbol; |
139 |
148 |
155 |
164 |
156 { |
165 { |
157 identifier_c param_name("IN"); |
166 identifier_c param_name("IN"); |
158 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
167 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
159 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
168 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
160 |
169 symbol_c *IN_type_symbol = NULL; |
161 /* Get the value from a foo(<param_value>) style call */ |
170 |
162 if (IN_param_value == NULL) |
171 /* Get the value from a foo(<param_value>) style call */ |
163 IN_param_value = function_call_param_iterator.next(); |
172 if (IN_param_value == NULL) |
164 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
173 IN_param_value = function_call_param_iterator.next(); |
165 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
174 if (IN_param_value != NULL) { |
166 |
175 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
167 if(search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol)) |
176 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
177 } |
|
178 |
|
179 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol)) |
168 { |
180 { |
169 |
181 |
170 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name; |
182 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name; |
171 return return_type_symbol; |
183 return return_type_symbol; |
172 |
184 |
188 |
200 |
189 { |
201 { |
190 identifier_c param_name("IN"); |
202 identifier_c param_name("IN"); |
191 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
203 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
192 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
204 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
193 |
205 symbol_c *IN_type_symbol = NULL; |
194 /* Get the value from a foo(<param_value>) style call */ |
206 |
195 if (IN_param_value == NULL) |
207 /* Get the value from a foo(<param_value>) style call */ |
196 IN_param_value = function_call_param_iterator.next(); |
208 if (IN_param_value == NULL) |
197 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
209 IN_param_value = function_call_param_iterator.next(); |
198 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
210 if (IN_param_value != NULL) { |
199 |
211 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
200 if(search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol)) |
212 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
213 } |
|
214 |
|
215 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol)) |
201 { |
216 { |
202 |
217 |
203 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name; |
218 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name; |
204 return return_type_symbol; |
219 return return_type_symbol; |
205 |
220 |
221 |
236 |
222 { |
237 { |
223 identifier_c param_name("IN"); |
238 identifier_c param_name("IN"); |
224 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
239 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
225 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
240 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
226 |
241 symbol_c *IN_type_symbol = NULL; |
227 /* Get the value from a foo(<param_value>) style call */ |
242 |
228 if (IN_param_value == NULL) |
243 /* Get the value from a foo(<param_value>) style call */ |
229 IN_param_value = function_call_param_iterator.next(); |
244 if (IN_param_value == NULL) |
230 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
245 IN_param_value = function_call_param_iterator.next(); |
231 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
246 if (IN_param_value != NULL) { |
232 |
247 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
233 if(search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol)) |
248 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
249 } |
|
250 |
|
251 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol)) |
234 { |
252 { |
235 |
253 |
236 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name; |
254 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name; |
237 return return_type_symbol; |
255 return return_type_symbol; |
238 |
256 |
254 |
272 |
255 { |
273 { |
256 identifier_c param_name("IN"); |
274 identifier_c param_name("IN"); |
257 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
275 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
258 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
276 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
259 |
277 symbol_c *IN_type_symbol = NULL; |
260 /* Get the value from a foo(<param_value>) style call */ |
278 |
261 if (IN_param_value == NULL) |
279 /* Get the value from a foo(<param_value>) style call */ |
262 IN_param_value = function_call_param_iterator.next(); |
280 if (IN_param_value == NULL) |
263 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
281 IN_param_value = function_call_param_iterator.next(); |
264 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
282 if (IN_param_value != NULL) { |
265 |
283 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
266 if(search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol)) |
284 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
285 } |
|
286 |
|
287 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol)) |
267 { |
288 { |
268 |
289 |
269 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name; |
290 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name; |
270 return return_type_symbol; |
291 return return_type_symbol; |
271 |
292 |
287 |
308 |
288 { |
309 { |
289 identifier_c param_name("IN"); |
310 identifier_c param_name("IN"); |
290 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
311 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
291 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
312 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
292 |
313 symbol_c *IN_type_symbol = NULL; |
293 /* Get the value from a foo(<param_value>) style call */ |
314 |
294 if (IN_param_value == NULL) |
315 /* Get the value from a foo(<param_value>) style call */ |
295 IN_param_value = function_call_param_iterator.next(); |
316 if (IN_param_value == NULL) |
296 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
317 IN_param_value = function_call_param_iterator.next(); |
297 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
318 if (IN_param_value != NULL) { |
298 |
319 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
299 if(search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol)) |
320 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
321 } |
|
322 |
|
323 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol)) |
300 { |
324 { |
301 |
325 |
302 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name; |
326 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name; |
303 return return_type_symbol; |
327 return return_type_symbol; |
304 |
328 |
320 |
344 |
321 { |
345 { |
322 identifier_c param_name("IN"); |
346 identifier_c param_name("IN"); |
323 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
347 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
324 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
348 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
325 |
349 symbol_c *IN_type_symbol = NULL; |
326 /* Get the value from a foo(<param_value>) style call */ |
350 |
327 if (IN_param_value == NULL) |
351 /* Get the value from a foo(<param_value>) style call */ |
328 IN_param_value = function_call_param_iterator.next(); |
352 if (IN_param_value == NULL) |
329 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
353 IN_param_value = function_call_param_iterator.next(); |
330 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
354 if (IN_param_value != NULL) { |
331 |
355 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
332 if(search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol)) |
356 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
357 } |
|
358 |
|
359 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol)) |
333 { |
360 { |
334 |
361 |
335 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name; |
362 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name; |
336 return return_type_symbol; |
363 return return_type_symbol; |
337 |
364 |
353 |
380 |
354 { |
381 { |
355 identifier_c param_name("IN"); |
382 identifier_c param_name("IN"); |
356 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
383 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
357 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
384 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
358 |
385 symbol_c *IN_type_symbol = NULL; |
359 /* Get the value from a foo(<param_value>) style call */ |
386 |
360 if (IN_param_value == NULL) |
387 /* Get the value from a foo(<param_value>) style call */ |
361 IN_param_value = function_call_param_iterator.next(); |
388 if (IN_param_value == NULL) |
362 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
389 IN_param_value = function_call_param_iterator.next(); |
363 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
390 if (IN_param_value != NULL) { |
364 |
391 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
365 if(search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol)) |
392 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
393 } |
|
394 |
|
395 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol)) |
366 { |
396 { |
367 |
397 |
368 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
398 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
369 return return_type_symbol; |
399 return return_type_symbol; |
370 |
400 |
386 |
416 |
387 { |
417 { |
388 identifier_c param_name("IN"); |
418 identifier_c param_name("IN"); |
389 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
419 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
390 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
420 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
391 |
421 symbol_c *IN_type_symbol = NULL; |
392 /* Get the value from a foo(<param_value>) style call */ |
422 |
393 if (IN_param_value == NULL) |
423 /* Get the value from a foo(<param_value>) style call */ |
394 IN_param_value = function_call_param_iterator.next(); |
424 if (IN_param_value == NULL) |
395 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
425 IN_param_value = function_call_param_iterator.next(); |
396 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
426 if (IN_param_value != NULL) { |
397 |
427 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
398 if(search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol)) |
428 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
429 } |
|
430 |
|
431 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol)) |
399 { |
432 { |
400 |
433 |
401 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name; |
434 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name; |
402 return return_type_symbol; |
435 return return_type_symbol; |
403 |
436 |
419 |
452 |
420 { |
453 { |
421 identifier_c param_name("IN"); |
454 identifier_c param_name("IN"); |
422 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
455 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
423 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
456 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
424 |
457 symbol_c *IN_type_symbol = NULL; |
425 /* Get the value from a foo(<param_value>) style call */ |
458 |
426 if (IN_param_value == NULL) |
459 /* Get the value from a foo(<param_value>) style call */ |
427 IN_param_value = function_call_param_iterator.next(); |
460 if (IN_param_value == NULL) |
428 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
461 IN_param_value = function_call_param_iterator.next(); |
429 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
462 if (IN_param_value != NULL) { |
430 |
463 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
431 if(search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol)) |
464 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
465 } |
|
466 |
|
467 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol)) |
432 { |
468 { |
433 |
469 |
434 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name; |
470 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name; |
435 return return_type_symbol; |
471 return return_type_symbol; |
436 |
472 |
452 |
488 |
453 { |
489 { |
454 identifier_c param_name("IN"); |
490 identifier_c param_name("IN"); |
455 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
491 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
456 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
492 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
457 |
493 symbol_c *IN_type_symbol = NULL; |
458 /* Get the value from a foo(<param_value>) style call */ |
494 |
459 if (IN_param_value == NULL) |
495 /* Get the value from a foo(<param_value>) style call */ |
460 IN_param_value = function_call_param_iterator.next(); |
496 if (IN_param_value == NULL) |
461 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
497 IN_param_value = function_call_param_iterator.next(); |
462 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
498 if (IN_param_value != NULL) { |
463 |
499 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
464 if(search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol)) |
500 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
501 } |
|
502 |
|
503 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol)) |
465 { |
504 { |
466 |
505 |
467 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name; |
506 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name; |
468 return return_type_symbol; |
507 return return_type_symbol; |
469 |
508 |
485 |
524 |
486 { |
525 { |
487 identifier_c param_name("IN"); |
526 identifier_c param_name("IN"); |
488 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
527 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
489 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
528 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
490 |
529 symbol_c *IN_type_symbol = NULL; |
491 /* Get the value from a foo(<param_value>) style call */ |
530 |
492 if (IN_param_value == NULL) |
531 /* Get the value from a foo(<param_value>) style call */ |
493 IN_param_value = function_call_param_iterator.next(); |
532 if (IN_param_value == NULL) |
494 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
533 IN_param_value = function_call_param_iterator.next(); |
495 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
534 if (IN_param_value != NULL) { |
496 |
535 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
497 if(search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol)) |
536 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
537 } |
|
538 |
|
539 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol)) |
498 { |
540 { |
499 |
541 |
500 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name; |
542 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name; |
501 return return_type_symbol; |
543 return return_type_symbol; |
502 |
544 |
518 |
560 |
519 { |
561 { |
520 identifier_c param_name("IN"); |
562 identifier_c param_name("IN"); |
521 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
563 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
522 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
564 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
523 |
565 symbol_c *IN_type_symbol = NULL; |
524 /* Get the value from a foo(<param_value>) style call */ |
566 |
525 if (IN_param_value == NULL) |
567 /* Get the value from a foo(<param_value>) style call */ |
526 IN_param_value = function_call_param_iterator.next(); |
568 if (IN_param_value == NULL) |
527 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
569 IN_param_value = function_call_param_iterator.next(); |
528 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
570 if (IN_param_value != NULL) { |
529 |
571 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
530 if(search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol)) |
572 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
573 } |
|
574 |
|
575 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol)) |
531 { |
576 { |
532 |
577 |
533 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name; |
578 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name; |
534 return return_type_symbol; |
579 return return_type_symbol; |
535 |
580 |
551 |
596 |
552 { |
597 { |
553 identifier_c param_name("IN"); |
598 identifier_c param_name("IN"); |
554 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
599 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
555 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
600 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
556 |
601 symbol_c *IN_type_symbol = NULL; |
557 /* Get the value from a foo(<param_value>) style call */ |
602 |
558 if (IN_param_value == NULL) |
603 /* Get the value from a foo(<param_value>) style call */ |
559 IN_param_value = function_call_param_iterator.next(); |
604 if (IN_param_value == NULL) |
560 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
605 IN_param_value = function_call_param_iterator.next(); |
561 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
606 if (IN_param_value != NULL) { |
562 |
607 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
563 if(search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol)) |
608 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
609 } |
|
610 |
|
611 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol)) |
564 { |
612 { |
565 |
613 |
566 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name; |
614 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name; |
567 return return_type_symbol; |
615 return return_type_symbol; |
568 |
616 |
584 |
632 |
585 { |
633 { |
586 identifier_c param_name("IN"); |
634 identifier_c param_name("IN"); |
587 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
635 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
588 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
636 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
589 |
637 symbol_c *IN_type_symbol = NULL; |
590 /* Get the value from a foo(<param_value>) style call */ |
638 |
591 if (IN_param_value == NULL) |
639 /* Get the value from a foo(<param_value>) style call */ |
592 IN_param_value = function_call_param_iterator.next(); |
640 if (IN_param_value == NULL) |
593 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
641 IN_param_value = function_call_param_iterator.next(); |
594 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
642 if (IN_param_value != NULL) { |
595 |
643 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
596 if(search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol)) |
644 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
645 } |
|
646 |
|
647 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol)) |
597 { |
648 { |
598 |
649 |
599 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name; |
650 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name; |
600 return return_type_symbol; |
651 return return_type_symbol; |
601 |
652 |
617 |
668 |
618 { |
669 { |
619 identifier_c param_name("IN"); |
670 identifier_c param_name("IN"); |
620 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
671 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
621 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
672 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
622 |
673 symbol_c *IN_type_symbol = NULL; |
623 /* Get the value from a foo(<param_value>) style call */ |
674 |
624 if (IN_param_value == NULL) |
675 /* Get the value from a foo(<param_value>) style call */ |
625 IN_param_value = function_call_param_iterator.next(); |
676 if (IN_param_value == NULL) |
626 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
677 IN_param_value = function_call_param_iterator.next(); |
627 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
678 if (IN_param_value != NULL) { |
628 |
679 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
629 if(search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol)) |
680 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
681 } |
|
682 |
|
683 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol)) |
630 { |
684 { |
631 |
685 |
632 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
686 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
633 return return_type_symbol; |
687 return return_type_symbol; |
634 |
688 |
650 |
704 |
651 { |
705 { |
652 identifier_c param_name("IN"); |
706 identifier_c param_name("IN"); |
653 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
707 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
654 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
708 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
655 |
709 symbol_c *IN_type_symbol = NULL; |
656 /* Get the value from a foo(<param_value>) style call */ |
710 |
657 if (IN_param_value == NULL) |
711 /* Get the value from a foo(<param_value>) style call */ |
658 IN_param_value = function_call_param_iterator.next(); |
712 if (IN_param_value == NULL) |
659 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
713 IN_param_value = function_call_param_iterator.next(); |
660 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
714 if (IN_param_value != NULL) { |
661 |
715 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
662 if(search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol)) |
716 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
717 } |
|
718 |
|
719 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol)) |
663 { |
720 { |
664 |
721 |
665 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name; |
722 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name; |
666 return return_type_symbol; |
723 return return_type_symbol; |
667 |
724 |
683 |
740 |
684 { |
741 { |
685 identifier_c param_name("IN"); |
742 identifier_c param_name("IN"); |
686 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
743 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
687 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
744 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
688 |
745 symbol_c *IN_type_symbol = NULL; |
689 /* Get the value from a foo(<param_value>) style call */ |
746 |
690 if (IN_param_value == NULL) |
747 /* Get the value from a foo(<param_value>) style call */ |
691 IN_param_value = function_call_param_iterator.next(); |
748 if (IN_param_value == NULL) |
692 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
749 IN_param_value = function_call_param_iterator.next(); |
693 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
750 if (IN_param_value != NULL) { |
694 |
751 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
695 if(search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol)) |
752 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
753 } |
|
754 |
|
755 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol)) |
696 { |
756 { |
697 |
757 |
698 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name; |
758 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name; |
699 return return_type_symbol; |
759 return return_type_symbol; |
700 |
760 |
716 |
776 |
717 { |
777 { |
718 identifier_c param_name("IN"); |
778 identifier_c param_name("IN"); |
719 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
779 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
720 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
780 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
721 |
781 symbol_c *IN_type_symbol = NULL; |
722 /* Get the value from a foo(<param_value>) style call */ |
782 |
723 if (IN_param_value == NULL) |
783 /* Get the value from a foo(<param_value>) style call */ |
724 IN_param_value = function_call_param_iterator.next(); |
784 if (IN_param_value == NULL) |
725 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
785 IN_param_value = function_call_param_iterator.next(); |
726 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
786 if (IN_param_value != NULL) { |
727 |
787 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
728 if(search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol)) |
788 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
789 } |
|
790 |
|
791 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol)) |
729 { |
792 { |
730 |
793 |
731 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name; |
794 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name; |
732 return return_type_symbol; |
795 return return_type_symbol; |
733 |
796 |
749 |
812 |
750 { |
813 { |
751 identifier_c param_name("IN"); |
814 identifier_c param_name("IN"); |
752 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
815 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
753 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
816 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
754 |
817 symbol_c *IN_type_symbol = NULL; |
755 /* Get the value from a foo(<param_value>) style call */ |
818 |
756 if (IN_param_value == NULL) |
819 /* Get the value from a foo(<param_value>) style call */ |
757 IN_param_value = function_call_param_iterator.next(); |
820 if (IN_param_value == NULL) |
758 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
821 IN_param_value = function_call_param_iterator.next(); |
759 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
822 if (IN_param_value != NULL) { |
760 |
823 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
761 if(search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol)) |
824 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
825 } |
|
826 |
|
827 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol)) |
762 { |
828 { |
763 |
829 |
764 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name; |
830 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name; |
765 return return_type_symbol; |
831 return return_type_symbol; |
766 |
832 |
782 |
848 |
783 { |
849 { |
784 identifier_c param_name("IN"); |
850 identifier_c param_name("IN"); |
785 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
851 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
786 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
852 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
787 |
853 symbol_c *IN_type_symbol = NULL; |
788 /* Get the value from a foo(<param_value>) style call */ |
854 |
789 if (IN_param_value == NULL) |
855 /* Get the value from a foo(<param_value>) style call */ |
790 IN_param_value = function_call_param_iterator.next(); |
856 if (IN_param_value == NULL) |
791 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
857 IN_param_value = function_call_param_iterator.next(); |
792 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
858 if (IN_param_value != NULL) { |
793 |
859 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
794 if(search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol)) |
860 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
861 } |
|
862 |
|
863 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol)) |
795 { |
864 { |
796 |
865 |
797 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name; |
866 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name; |
798 return return_type_symbol; |
867 return return_type_symbol; |
799 |
868 |
815 |
884 |
816 { |
885 { |
817 identifier_c param_name("IN"); |
886 identifier_c param_name("IN"); |
818 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
887 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
819 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
888 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
820 |
889 symbol_c *IN_type_symbol = NULL; |
821 /* Get the value from a foo(<param_value>) style call */ |
890 |
822 if (IN_param_value == NULL) |
891 /* Get the value from a foo(<param_value>) style call */ |
823 IN_param_value = function_call_param_iterator.next(); |
892 if (IN_param_value == NULL) |
824 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
893 IN_param_value = function_call_param_iterator.next(); |
825 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
894 if (IN_param_value != NULL) { |
826 |
895 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
827 if(search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol)) |
896 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
897 } |
|
898 |
|
899 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol)) |
828 { |
900 { |
829 |
901 |
830 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name; |
902 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name; |
831 return return_type_symbol; |
903 return return_type_symbol; |
832 |
904 |
848 |
920 |
849 { |
921 { |
850 identifier_c param_name("IN"); |
922 identifier_c param_name("IN"); |
851 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
923 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
852 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
924 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
853 |
925 symbol_c *IN_type_symbol = NULL; |
854 /* Get the value from a foo(<param_value>) style call */ |
926 |
855 if (IN_param_value == NULL) |
927 /* Get the value from a foo(<param_value>) style call */ |
856 IN_param_value = function_call_param_iterator.next(); |
928 if (IN_param_value == NULL) |
857 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
929 IN_param_value = function_call_param_iterator.next(); |
858 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
930 if (IN_param_value != NULL) { |
859 |
931 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
860 if(search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol)) |
932 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
933 } |
|
934 |
|
935 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol)) |
861 { |
936 { |
862 |
937 |
863 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name; |
938 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name; |
864 return return_type_symbol; |
939 return return_type_symbol; |
865 |
940 |
881 |
956 |
882 { |
957 { |
883 identifier_c param_name("IN"); |
958 identifier_c param_name("IN"); |
884 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
959 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
885 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
960 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
886 |
961 symbol_c *IN_type_symbol = NULL; |
887 /* Get the value from a foo(<param_value>) style call */ |
962 |
888 if (IN_param_value == NULL) |
963 /* Get the value from a foo(<param_value>) style call */ |
889 IN_param_value = function_call_param_iterator.next(); |
964 if (IN_param_value == NULL) |
890 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
965 IN_param_value = function_call_param_iterator.next(); |
891 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
966 if (IN_param_value != NULL) { |
892 |
967 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
893 if(search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol)) |
968 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
969 } |
|
970 |
|
971 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol)) |
894 { |
972 { |
895 |
973 |
896 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name; |
974 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name; |
897 return return_type_symbol; |
975 return return_type_symbol; |
898 |
976 |
914 |
992 |
915 { |
993 { |
916 identifier_c param_name("IN"); |
994 identifier_c param_name("IN"); |
917 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
995 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
918 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
996 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
919 |
997 symbol_c *IN_type_symbol = NULL; |
920 /* Get the value from a foo(<param_value>) style call */ |
998 |
921 if (IN_param_value == NULL) |
999 /* Get the value from a foo(<param_value>) style call */ |
922 IN_param_value = function_call_param_iterator.next(); |
1000 if (IN_param_value == NULL) |
923 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
1001 IN_param_value = function_call_param_iterator.next(); |
924 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
1002 if (IN_param_value != NULL) { |
925 |
1003 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
926 if(search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol)) |
1004 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
1005 } |
|
1006 |
|
1007 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol)) |
927 { |
1008 { |
928 |
1009 |
929 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name; |
1010 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name; |
930 return return_type_symbol; |
1011 return return_type_symbol; |
931 |
1012 |
947 |
1028 |
948 { |
1029 { |
949 identifier_c param_name("IN"); |
1030 identifier_c param_name("IN"); |
950 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
1031 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
951 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
1032 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
952 |
1033 symbol_c *IN_type_symbol = NULL; |
953 /* Get the value from a foo(<param_value>) style call */ |
1034 |
954 if (IN_param_value == NULL) |
1035 /* Get the value from a foo(<param_value>) style call */ |
955 IN_param_value = function_call_param_iterator.next(); |
1036 if (IN_param_value == NULL) |
956 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
1037 IN_param_value = function_call_param_iterator.next(); |
957 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
1038 if (IN_param_value != NULL) { |
958 |
1039 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
959 if(search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol)) |
1040 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
1041 } |
|
1042 |
|
1043 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol)) |
960 { |
1044 { |
961 |
1045 |
962 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name; |
1046 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name; |
963 return return_type_symbol; |
1047 return return_type_symbol; |
964 |
1048 |
980 |
1064 |
981 { |
1065 { |
982 identifier_c param_name("IN"); |
1066 identifier_c param_name("IN"); |
983 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
1067 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
984 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
1068 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
985 |
1069 symbol_c *IN_type_symbol = NULL; |
986 /* Get the value from a foo(<param_value>) style call */ |
1070 |
987 if (IN_param_value == NULL) |
1071 /* Get the value from a foo(<param_value>) style call */ |
988 IN_param_value = function_call_param_iterator.next(); |
1072 if (IN_param_value == NULL) |
989 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
1073 IN_param_value = function_call_param_iterator.next(); |
990 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
1074 if (IN_param_value != NULL) { |
991 |
1075 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
992 if(search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol)) |
1076 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
1077 } |
|
1078 |
|
1079 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol)) |
993 { |
1080 { |
994 |
1081 |
995 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
1082 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
996 return return_type_symbol; |
1083 return return_type_symbol; |
997 |
1084 |
1013 |
1100 |
1014 { |
1101 { |
1015 identifier_c param_name("IN"); |
1102 identifier_c param_name("IN"); |
1016 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
1103 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
1017 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
1104 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
1018 |
1105 symbol_c *IN_type_symbol = NULL; |
1019 /* Get the value from a foo(<param_value>) style call */ |
1106 |
1020 if (IN_param_value == NULL) |
1107 /* Get the value from a foo(<param_value>) style call */ |
1021 IN_param_value = function_call_param_iterator.next(); |
1108 if (IN_param_value == NULL) |
1022 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
1109 IN_param_value = function_call_param_iterator.next(); |
1023 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
1110 if (IN_param_value != NULL) { |
1024 |
1111 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
1025 if(search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol)) |
1112 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
1113 } |
|
1114 |
|
1115 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol)) |
1026 { |
1116 { |
1027 |
1117 |
1028 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name; |
1118 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name; |
1029 return return_type_symbol; |
1119 return return_type_symbol; |
1030 |
1120 |
1046 |
1136 |
1047 { |
1137 { |
1048 identifier_c param_name("IN"); |
1138 identifier_c param_name("IN"); |
1049 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
1139 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
1050 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
1140 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
1051 |
1141 symbol_c *IN_type_symbol = NULL; |
1052 /* Get the value from a foo(<param_value>) style call */ |
1142 |
1053 if (IN_param_value == NULL) |
1143 /* Get the value from a foo(<param_value>) style call */ |
1054 IN_param_value = function_call_param_iterator.next(); |
1144 if (IN_param_value == NULL) |
1055 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
1145 IN_param_value = function_call_param_iterator.next(); |
1056 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
1146 if (IN_param_value != NULL) { |
1057 |
1147 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
1058 if(search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol)) |
1148 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
1149 } |
|
1150 |
|
1151 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol)) |
1059 { |
1152 { |
1060 |
1153 |
1061 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name; |
1154 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name; |
1062 return return_type_symbol; |
1155 return return_type_symbol; |
1063 |
1156 |
1079 |
1172 |
1080 { |
1173 { |
1081 identifier_c param_name("IN"); |
1174 identifier_c param_name("IN"); |
1082 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
1175 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
1083 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
1176 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
1084 |
1177 symbol_c *IN_type_symbol = NULL; |
1085 /* Get the value from a foo(<param_value>) style call */ |
1178 |
1086 if (IN_param_value == NULL) |
1179 /* Get the value from a foo(<param_value>) style call */ |
1087 IN_param_value = function_call_param_iterator.next(); |
1180 if (IN_param_value == NULL) |
1088 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
1181 IN_param_value = function_call_param_iterator.next(); |
1089 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
1182 if (IN_param_value != NULL) { |
1090 |
1183 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
1091 if(search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol)) |
1184 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
1185 } |
|
1186 |
|
1187 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol)) |
1092 { |
1188 { |
1093 |
1189 |
1094 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name; |
1190 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name; |
1095 return return_type_symbol; |
1191 return return_type_symbol; |
1096 |
1192 |
1112 |
1208 |
1113 { |
1209 { |
1114 identifier_c param_name("IN"); |
1210 identifier_c param_name("IN"); |
1115 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
1211 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
1116 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
1212 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
1117 |
1213 symbol_c *IN_type_symbol = NULL; |
1118 /* Get the value from a foo(<param_value>) style call */ |
1214 |
1119 if (IN_param_value == NULL) |
1215 /* Get the value from a foo(<param_value>) style call */ |
1120 IN_param_value = function_call_param_iterator.next(); |
1216 if (IN_param_value == NULL) |
1121 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
1217 IN_param_value = function_call_param_iterator.next(); |
1122 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
1218 if (IN_param_value != NULL) { |
1123 |
1219 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
1124 if(search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol)) |
1220 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
1221 } |
|
1222 |
|
1223 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol)) |
1125 { |
1224 { |
1126 |
1225 |
1127 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name; |
1226 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name; |
1128 return return_type_symbol; |
1227 return return_type_symbol; |
1129 |
1228 |
1145 |
1244 |
1146 { |
1245 { |
1147 identifier_c param_name("IN"); |
1246 identifier_c param_name("IN"); |
1148 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
1247 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
1149 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
1248 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
1150 |
1249 symbol_c *IN_type_symbol = NULL; |
1151 /* Get the value from a foo(<param_value>) style call */ |
1250 |
1152 if (IN_param_value == NULL) |
1251 /* Get the value from a foo(<param_value>) style call */ |
1153 IN_param_value = function_call_param_iterator.next(); |
1252 if (IN_param_value == NULL) |
1154 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
1253 IN_param_value = function_call_param_iterator.next(); |
1155 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
1254 if (IN_param_value != NULL) { |
1156 |
1255 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
1157 if(search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol)) |
1256 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
1257 } |
|
1258 |
|
1259 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol)) |
1158 { |
1260 { |
1159 |
1261 |
1160 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name; |
1262 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name; |
1161 return return_type_symbol; |
1263 return return_type_symbol; |
1162 |
1264 |
1178 |
1280 |
1179 { |
1281 { |
1180 identifier_c param_name("IN"); |
1282 identifier_c param_name("IN"); |
1181 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
1283 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
1182 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
1284 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
1183 |
1285 symbol_c *IN_type_symbol = NULL; |
1184 /* Get the value from a foo(<param_value>) style call */ |
1286 |
1185 if (IN_param_value == NULL) |
1287 /* Get the value from a foo(<param_value>) style call */ |
1186 IN_param_value = function_call_param_iterator.next(); |
1288 if (IN_param_value == NULL) |
1187 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
1289 IN_param_value = function_call_param_iterator.next(); |
1188 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
1290 if (IN_param_value != NULL) { |
1189 |
1291 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
1190 if(search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol)) |
1292 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
1293 } |
|
1294 |
|
1295 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol)) |
1191 { |
1296 { |
1192 |
1297 |
1193 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name; |
1298 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name; |
1194 return return_type_symbol; |
1299 return return_type_symbol; |
1195 |
1300 |
1211 |
1316 |
1212 { |
1317 { |
1213 identifier_c param_name("IN"); |
1318 identifier_c param_name("IN"); |
1214 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
1319 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
1215 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
1320 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
1216 |
1321 symbol_c *IN_type_symbol = NULL; |
1217 /* Get the value from a foo(<param_value>) style call */ |
1322 |
1218 if (IN_param_value == NULL) |
1323 /* Get the value from a foo(<param_value>) style call */ |
1219 IN_param_value = function_call_param_iterator.next(); |
1324 if (IN_param_value == NULL) |
1220 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
1325 IN_param_value = function_call_param_iterator.next(); |
1221 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
1326 if (IN_param_value != NULL) { |
1222 |
1327 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
1223 if(search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol)) |
1328 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
1329 } |
|
1330 |
|
1331 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol)) |
1224 { |
1332 { |
1225 |
1333 |
1226 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name; |
1334 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name; |
1227 return return_type_symbol; |
1335 return return_type_symbol; |
1228 |
1336 |
1244 |
1352 |
1245 { |
1353 { |
1246 identifier_c param_name("IN"); |
1354 identifier_c param_name("IN"); |
1247 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
1355 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
1248 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
1356 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
1249 |
1357 symbol_c *IN_type_symbol = NULL; |
1250 /* Get the value from a foo(<param_value>) style call */ |
1358 |
1251 if (IN_param_value == NULL) |
1359 /* Get the value from a foo(<param_value>) style call */ |
1252 IN_param_value = function_call_param_iterator.next(); |
1360 if (IN_param_value == NULL) |
1253 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
1361 IN_param_value = function_call_param_iterator.next(); |
1254 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
1362 if (IN_param_value != NULL) { |
1255 |
1363 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
1256 if(search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol)) |
1364 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
1365 } |
|
1366 |
|
1367 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol)) |
1257 { |
1368 { |
1258 |
1369 |
1259 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
1370 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
1260 return return_type_symbol; |
1371 return return_type_symbol; |
1261 |
1372 |
1277 |
1388 |
1278 { |
1389 { |
1279 identifier_c param_name("IN"); |
1390 identifier_c param_name("IN"); |
1280 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
1391 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
1281 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
1392 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
1282 |
1393 symbol_c *IN_type_symbol = NULL; |
1283 /* Get the value from a foo(<param_value>) style call */ |
1394 |
1284 if (IN_param_value == NULL) |
1395 /* Get the value from a foo(<param_value>) style call */ |
1285 IN_param_value = function_call_param_iterator.next(); |
1396 if (IN_param_value == NULL) |
1286 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
1397 IN_param_value = function_call_param_iterator.next(); |
1287 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
1398 if (IN_param_value != NULL) { |
1288 |
1399 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
1289 if(search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol)) |
1400 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
1401 } |
|
1402 |
|
1403 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol)) |
1290 { |
1404 { |
1291 |
1405 |
1292 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name; |
1406 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name; |
1293 return return_type_symbol; |
1407 return return_type_symbol; |
1294 |
1408 |
1310 |
1424 |
1311 { |
1425 { |
1312 identifier_c param_name("IN"); |
1426 identifier_c param_name("IN"); |
1313 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
1427 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
1314 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
1428 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
1315 |
1429 symbol_c *IN_type_symbol = NULL; |
1316 /* Get the value from a foo(<param_value>) style call */ |
1430 |
1317 if (IN_param_value == NULL) |
1431 /* Get the value from a foo(<param_value>) style call */ |
1318 IN_param_value = function_call_param_iterator.next(); |
1432 if (IN_param_value == NULL) |
1319 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
1433 IN_param_value = function_call_param_iterator.next(); |
1320 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
1434 if (IN_param_value != NULL) { |
1321 |
1435 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
1322 if(search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol)) |
1436 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
1437 } |
|
1438 |
|
1439 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol)) |
1323 { |
1440 { |
1324 |
1441 |
1325 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name; |
1442 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name; |
1326 return return_type_symbol; |
1443 return return_type_symbol; |
1327 |
1444 |
1343 |
1460 |
1344 { |
1461 { |
1345 identifier_c param_name("IN"); |
1462 identifier_c param_name("IN"); |
1346 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
1463 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
1347 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
1464 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
1348 |
1465 symbol_c *IN_type_symbol = NULL; |
1349 /* Get the value from a foo(<param_value>) style call */ |
1466 |
1350 if (IN_param_value == NULL) |
1467 /* Get the value from a foo(<param_value>) style call */ |
1351 IN_param_value = function_call_param_iterator.next(); |
1468 if (IN_param_value == NULL) |
1352 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
1469 IN_param_value = function_call_param_iterator.next(); |
1353 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
1470 if (IN_param_value != NULL) { |
1354 |
1471 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
1355 if(search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol)) |
1472 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
1473 } |
|
1474 |
|
1475 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol)) |
1356 { |
1476 { |
1357 |
1477 |
1358 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name; |
1478 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name; |
1359 return return_type_symbol; |
1479 return return_type_symbol; |
1360 |
1480 |
1376 |
1496 |
1377 { |
1497 { |
1378 identifier_c param_name("IN"); |
1498 identifier_c param_name("IN"); |
1379 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
1499 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
1380 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
1500 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
1381 |
1501 symbol_c *IN_type_symbol = NULL; |
1382 /* Get the value from a foo(<param_value>) style call */ |
1502 |
1383 if (IN_param_value == NULL) |
1503 /* Get the value from a foo(<param_value>) style call */ |
1384 IN_param_value = function_call_param_iterator.next(); |
1504 if (IN_param_value == NULL) |
1385 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
1505 IN_param_value = function_call_param_iterator.next(); |
1386 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
1506 if (IN_param_value != NULL) { |
1387 |
1507 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
1388 if(search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol)) |
1508 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
1509 } |
|
1510 |
|
1511 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol)) |
1389 { |
1512 { |
1390 |
1513 |
1391 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name; |
1514 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name; |
1392 return return_type_symbol; |
1515 return return_type_symbol; |
1393 |
1516 |
1409 |
1532 |
1410 { |
1533 { |
1411 identifier_c param_name("IN"); |
1534 identifier_c param_name("IN"); |
1412 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
1535 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
1413 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
1536 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
1414 |
1537 symbol_c *IN_type_symbol = NULL; |
1415 /* Get the value from a foo(<param_value>) style call */ |
1538 |
1416 if (IN_param_value == NULL) |
1539 /* Get the value from a foo(<param_value>) style call */ |
1417 IN_param_value = function_call_param_iterator.next(); |
1540 if (IN_param_value == NULL) |
1418 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
1541 IN_param_value = function_call_param_iterator.next(); |
1419 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
1542 if (IN_param_value != NULL) { |
1420 |
1543 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
1421 if(search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol)) |
1544 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
1545 } |
|
1546 |
|
1547 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol)) |
1422 { |
1548 { |
1423 |
1549 |
1424 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name; |
1550 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name; |
1425 return return_type_symbol; |
1551 return return_type_symbol; |
1426 |
1552 |
1442 |
1568 |
1443 { |
1569 { |
1444 identifier_c param_name("IN"); |
1570 identifier_c param_name("IN"); |
1445 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
1571 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
1446 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
1572 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
1447 |
1573 symbol_c *IN_type_symbol = NULL; |
1448 /* Get the value from a foo(<param_value>) style call */ |
1574 |
1449 if (IN_param_value == NULL) |
1575 /* Get the value from a foo(<param_value>) style call */ |
1450 IN_param_value = function_call_param_iterator.next(); |
1576 if (IN_param_value == NULL) |
1451 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
1577 IN_param_value = function_call_param_iterator.next(); |
1452 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
1578 if (IN_param_value != NULL) { |
1453 |
1579 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
1454 if(search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol)) |
1580 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
1581 } |
|
1582 |
|
1583 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol)) |
1455 { |
1584 { |
1456 |
1585 |
1457 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name; |
1586 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name; |
1458 return return_type_symbol; |
1587 return return_type_symbol; |
1459 |
1588 |
1475 |
1604 |
1476 { |
1605 { |
1477 identifier_c param_name("IN"); |
1606 identifier_c param_name("IN"); |
1478 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
1607 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
1479 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
1608 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
1480 |
1609 symbol_c *IN_type_symbol = NULL; |
1481 /* Get the value from a foo(<param_value>) style call */ |
1610 |
1482 if (IN_param_value == NULL) |
1611 /* Get the value from a foo(<param_value>) style call */ |
1483 IN_param_value = function_call_param_iterator.next(); |
1612 if (IN_param_value == NULL) |
1484 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
1613 IN_param_value = function_call_param_iterator.next(); |
1485 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
1614 if (IN_param_value != NULL) { |
1486 |
1615 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
1487 if(search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol)) |
1616 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
1617 } |
|
1618 |
|
1619 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol)) |
1488 { |
1620 { |
1489 |
1621 |
1490 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name; |
1622 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name; |
1491 return return_type_symbol; |
1623 return return_type_symbol; |
1492 |
1624 |
1508 |
1640 |
1509 { |
1641 { |
1510 identifier_c param_name("IN"); |
1642 identifier_c param_name("IN"); |
1511 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
1643 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
1512 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
1644 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
1513 |
1645 symbol_c *IN_type_symbol = NULL; |
1514 /* Get the value from a foo(<param_value>) style call */ |
1646 |
1515 if (IN_param_value == NULL) |
1647 /* Get the value from a foo(<param_value>) style call */ |
1516 IN_param_value = function_call_param_iterator.next(); |
1648 if (IN_param_value == NULL) |
1517 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
1649 IN_param_value = function_call_param_iterator.next(); |
1518 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
1650 if (IN_param_value != NULL) { |
1519 |
1651 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
1520 if(search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol)) |
1652 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
1653 } |
|
1654 |
|
1655 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol)) |
1521 { |
1656 { |
1522 |
1657 |
1523 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name; |
1658 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name; |
1524 return return_type_symbol; |
1659 return return_type_symbol; |
1525 |
1660 |
1541 |
1676 |
1542 { |
1677 { |
1543 identifier_c param_name("IN"); |
1678 identifier_c param_name("IN"); |
1544 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
1679 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
1545 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
1680 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
1546 |
1681 symbol_c *IN_type_symbol = NULL; |
1547 /* Get the value from a foo(<param_value>) style call */ |
1682 |
1548 if (IN_param_value == NULL) |
1683 /* Get the value from a foo(<param_value>) style call */ |
1549 IN_param_value = function_call_param_iterator.next(); |
1684 if (IN_param_value == NULL) |
1550 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
1685 IN_param_value = function_call_param_iterator.next(); |
1551 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
1686 if (IN_param_value != NULL) { |
1552 |
1687 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
1553 if(search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol)) |
1688 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
1689 } |
|
1690 |
|
1691 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol)) |
1554 { |
1692 { |
1555 |
1693 |
1556 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name; |
1694 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name; |
1557 return return_type_symbol; |
1695 return return_type_symbol; |
1558 |
1696 |
1574 |
1712 |
1575 { |
1713 { |
1576 identifier_c param_name("IN"); |
1714 identifier_c param_name("IN"); |
1577 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
1715 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
1578 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
1716 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
1579 |
1717 symbol_c *IN_type_symbol = NULL; |
1580 /* Get the value from a foo(<param_value>) style call */ |
1718 |
1581 if (IN_param_value == NULL) |
1719 /* Get the value from a foo(<param_value>) style call */ |
1582 IN_param_value = function_call_param_iterator.next(); |
1720 if (IN_param_value == NULL) |
1583 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
1721 IN_param_value = function_call_param_iterator.next(); |
1584 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
1722 if (IN_param_value != NULL) { |
1585 |
1723 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
1586 if(search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol)) |
1724 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
1725 } |
|
1726 |
|
1727 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol)) |
1587 { |
1728 { |
1588 |
1729 |
1589 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name; |
1730 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name; |
1590 return return_type_symbol; |
1731 return return_type_symbol; |
1591 |
1732 |
1607 |
1748 |
1608 { |
1749 { |
1609 identifier_c param_name("IN"); |
1750 identifier_c param_name("IN"); |
1610 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
1751 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
1611 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
1752 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
1612 |
1753 symbol_c *IN_type_symbol = NULL; |
1613 /* Get the value from a foo(<param_value>) style call */ |
1754 |
1614 if (IN_param_value == NULL) |
1755 /* Get the value from a foo(<param_value>) style call */ |
1615 IN_param_value = function_call_param_iterator.next(); |
1756 if (IN_param_value == NULL) |
1616 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
1757 IN_param_value = function_call_param_iterator.next(); |
1617 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
1758 if (IN_param_value != NULL) { |
1618 |
1759 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
1619 if(search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol)) |
1760 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
1761 } |
|
1762 |
|
1763 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol)) |
1620 { |
1764 { |
1621 |
1765 |
1622 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
1766 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
1623 return return_type_symbol; |
1767 return return_type_symbol; |
1624 |
1768 |
1640 |
1784 |
1641 { |
1785 { |
1642 identifier_c param_name("IN"); |
1786 identifier_c param_name("IN"); |
1643 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
1787 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
1644 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
1788 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
1645 |
1789 symbol_c *IN_type_symbol = NULL; |
1646 /* Get the value from a foo(<param_value>) style call */ |
1790 |
1647 if (IN_param_value == NULL) |
1791 /* Get the value from a foo(<param_value>) style call */ |
1648 IN_param_value = function_call_param_iterator.next(); |
1792 if (IN_param_value == NULL) |
1649 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
1793 IN_param_value = function_call_param_iterator.next(); |
1650 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
1794 if (IN_param_value != NULL) { |
1651 |
1795 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
1652 if(search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol)) |
1796 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
1797 } |
|
1798 |
|
1799 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol)) |
1653 { |
1800 { |
1654 |
1801 |
1655 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name; |
1802 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name; |
1656 return return_type_symbol; |
1803 return return_type_symbol; |
1657 |
1804 |
1673 |
1820 |
1674 { |
1821 { |
1675 identifier_c param_name("IN"); |
1822 identifier_c param_name("IN"); |
1676 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
1823 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
1677 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
1824 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
1678 |
1825 symbol_c *IN_type_symbol = NULL; |
1679 /* Get the value from a foo(<param_value>) style call */ |
1826 |
1680 if (IN_param_value == NULL) |
1827 /* Get the value from a foo(<param_value>) style call */ |
1681 IN_param_value = function_call_param_iterator.next(); |
1828 if (IN_param_value == NULL) |
1682 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
1829 IN_param_value = function_call_param_iterator.next(); |
1683 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
1830 if (IN_param_value != NULL) { |
1684 |
1831 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
1685 if(search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol)) |
1832 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
1833 } |
|
1834 |
|
1835 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol)) |
1686 { |
1836 { |
1687 |
1837 |
1688 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name; |
1838 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name; |
1689 return return_type_symbol; |
1839 return return_type_symbol; |
1690 |
1840 |
1706 |
1856 |
1707 { |
1857 { |
1708 identifier_c param_name("IN"); |
1858 identifier_c param_name("IN"); |
1709 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
1859 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
1710 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
1860 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
1711 |
1861 symbol_c *IN_type_symbol = NULL; |
1712 /* Get the value from a foo(<param_value>) style call */ |
1862 |
1713 if (IN_param_value == NULL) |
1863 /* Get the value from a foo(<param_value>) style call */ |
1714 IN_param_value = function_call_param_iterator.next(); |
1864 if (IN_param_value == NULL) |
1715 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
1865 IN_param_value = function_call_param_iterator.next(); |
1716 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
1866 if (IN_param_value != NULL) { |
1717 |
1867 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
1718 if(search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol)) |
1868 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
1869 } |
|
1870 |
|
1871 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol)) |
1719 { |
1872 { |
1720 |
1873 |
1721 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name; |
1874 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name; |
1722 return return_type_symbol; |
1875 return return_type_symbol; |
1723 |
1876 |
1739 |
1892 |
1740 { |
1893 { |
1741 identifier_c param_name("IN"); |
1894 identifier_c param_name("IN"); |
1742 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
1895 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
1743 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
1896 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
1744 |
1897 symbol_c *IN_type_symbol = NULL; |
1745 /* Get the value from a foo(<param_value>) style call */ |
1898 |
1746 if (IN_param_value == NULL) |
1899 /* Get the value from a foo(<param_value>) style call */ |
1747 IN_param_value = function_call_param_iterator.next(); |
1900 if (IN_param_value == NULL) |
1748 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
1901 IN_param_value = function_call_param_iterator.next(); |
1749 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
1902 if (IN_param_value != NULL) { |
1750 |
1903 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
1751 if(search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol)) |
1904 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
1905 } |
|
1906 |
|
1907 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol)) |
1752 { |
1908 { |
1753 |
1909 |
1754 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name; |
1910 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name; |
1755 return return_type_symbol; |
1911 return return_type_symbol; |
1756 |
1912 |
1772 |
1928 |
1773 { |
1929 { |
1774 identifier_c param_name("IN"); |
1930 identifier_c param_name("IN"); |
1775 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
1931 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
1776 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
1932 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
1777 |
1933 symbol_c *IN_type_symbol = NULL; |
1778 /* Get the value from a foo(<param_value>) style call */ |
1934 |
1779 if (IN_param_value == NULL) |
1935 /* Get the value from a foo(<param_value>) style call */ |
1780 IN_param_value = function_call_param_iterator.next(); |
1936 if (IN_param_value == NULL) |
1781 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
1937 IN_param_value = function_call_param_iterator.next(); |
1782 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
1938 if (IN_param_value != NULL) { |
1783 |
1939 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
1784 if(search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol)) |
1940 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
1941 } |
|
1942 |
|
1943 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol)) |
1785 { |
1944 { |
1786 |
1945 |
1787 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name; |
1946 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name; |
1788 return return_type_symbol; |
1947 return return_type_symbol; |
1789 |
1948 |
1805 |
1964 |
1806 { |
1965 { |
1807 identifier_c param_name("IN"); |
1966 identifier_c param_name("IN"); |
1808 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
1967 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
1809 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
1968 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
1810 |
1969 symbol_c *IN_type_symbol = NULL; |
1811 /* Get the value from a foo(<param_value>) style call */ |
1970 |
1812 if (IN_param_value == NULL) |
1971 /* Get the value from a foo(<param_value>) style call */ |
1813 IN_param_value = function_call_param_iterator.next(); |
1972 if (IN_param_value == NULL) |
1814 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
1973 IN_param_value = function_call_param_iterator.next(); |
1815 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
1974 if (IN_param_value != NULL) { |
1816 |
1975 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
1817 if(search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol)) |
1976 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
1977 } |
|
1978 |
|
1979 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol)) |
1818 { |
1980 { |
1819 |
1981 |
1820 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name; |
1982 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name; |
1821 return return_type_symbol; |
1983 return return_type_symbol; |
1822 |
1984 |
1838 |
2000 |
1839 { |
2001 { |
1840 identifier_c param_name("IN"); |
2002 identifier_c param_name("IN"); |
1841 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2003 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
1842 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2004 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
1843 |
2005 symbol_c *IN_type_symbol = NULL; |
1844 /* Get the value from a foo(<param_value>) style call */ |
2006 |
1845 if (IN_param_value == NULL) |
2007 /* Get the value from a foo(<param_value>) style call */ |
1846 IN_param_value = function_call_param_iterator.next(); |
2008 if (IN_param_value == NULL) |
1847 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
2009 IN_param_value = function_call_param_iterator.next(); |
1848 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
2010 if (IN_param_value != NULL) { |
1849 |
2011 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
1850 if(search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol)) |
2012 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
2013 } |
|
2014 |
|
2015 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol)) |
1851 { |
2016 { |
1852 |
2017 |
1853 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name; |
2018 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name; |
1854 return return_type_symbol; |
2019 return return_type_symbol; |
1855 |
2020 |
1871 |
2036 |
1872 { |
2037 { |
1873 identifier_c param_name("IN"); |
2038 identifier_c param_name("IN"); |
1874 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2039 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
1875 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2040 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
1876 |
2041 symbol_c *IN_type_symbol = NULL; |
1877 /* Get the value from a foo(<param_value>) style call */ |
2042 |
1878 if (IN_param_value == NULL) |
2043 /* Get the value from a foo(<param_value>) style call */ |
1879 IN_param_value = function_call_param_iterator.next(); |
2044 if (IN_param_value == NULL) |
1880 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
2045 IN_param_value = function_call_param_iterator.next(); |
1881 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
2046 if (IN_param_value != NULL) { |
1882 |
2047 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
1883 if(search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol)) |
2048 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
2049 } |
|
2050 |
|
2051 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol)) |
1884 { |
2052 { |
1885 |
2053 |
1886 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
2054 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
1887 return return_type_symbol; |
2055 return return_type_symbol; |
1888 |
2056 |
1904 |
2072 |
1905 { |
2073 { |
1906 identifier_c param_name("IN"); |
2074 identifier_c param_name("IN"); |
1907 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2075 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
1908 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2076 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
1909 |
2077 symbol_c *IN_type_symbol = NULL; |
1910 /* Get the value from a foo(<param_value>) style call */ |
2078 |
1911 if (IN_param_value == NULL) |
2079 /* Get the value from a foo(<param_value>) style call */ |
1912 IN_param_value = function_call_param_iterator.next(); |
2080 if (IN_param_value == NULL) |
1913 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
2081 IN_param_value = function_call_param_iterator.next(); |
1914 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
2082 if (IN_param_value != NULL) { |
1915 |
2083 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
1916 if(search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol)) |
2084 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
2085 } |
|
2086 |
|
2087 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol)) |
1917 { |
2088 { |
1918 |
2089 |
1919 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name; |
2090 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name; |
1920 return return_type_symbol; |
2091 return return_type_symbol; |
1921 |
2092 |
1937 |
2108 |
1938 { |
2109 { |
1939 identifier_c param_name("IN"); |
2110 identifier_c param_name("IN"); |
1940 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2111 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
1941 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2112 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
1942 |
2113 symbol_c *IN_type_symbol = NULL; |
1943 /* Get the value from a foo(<param_value>) style call */ |
2114 |
1944 if (IN_param_value == NULL) |
2115 /* Get the value from a foo(<param_value>) style call */ |
1945 IN_param_value = function_call_param_iterator.next(); |
2116 if (IN_param_value == NULL) |
1946 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
2117 IN_param_value = function_call_param_iterator.next(); |
1947 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
2118 if (IN_param_value != NULL) { |
1948 |
2119 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
1949 if(search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol)) |
2120 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
2121 } |
|
2122 |
|
2123 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol)) |
1950 { |
2124 { |
1951 |
2125 |
1952 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name; |
2126 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name; |
1953 return return_type_symbol; |
2127 return return_type_symbol; |
1954 |
2128 |
1970 |
2144 |
1971 { |
2145 { |
1972 identifier_c param_name("IN"); |
2146 identifier_c param_name("IN"); |
1973 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2147 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
1974 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2148 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
1975 |
2149 symbol_c *IN_type_symbol = NULL; |
1976 /* Get the value from a foo(<param_value>) style call */ |
2150 |
1977 if (IN_param_value == NULL) |
2151 /* Get the value from a foo(<param_value>) style call */ |
1978 IN_param_value = function_call_param_iterator.next(); |
2152 if (IN_param_value == NULL) |
1979 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
2153 IN_param_value = function_call_param_iterator.next(); |
1980 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
2154 if (IN_param_value != NULL) { |
1981 |
2155 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
1982 if(search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol)) |
2156 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
2157 } |
|
2158 |
|
2159 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol)) |
1983 { |
2160 { |
1984 |
2161 |
1985 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name; |
2162 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name; |
1986 return return_type_symbol; |
2163 return return_type_symbol; |
1987 |
2164 |
2003 |
2180 |
2004 { |
2181 { |
2005 identifier_c param_name("IN"); |
2182 identifier_c param_name("IN"); |
2006 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2183 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2007 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2184 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2008 |
2185 symbol_c *IN_type_symbol = NULL; |
2009 /* Get the value from a foo(<param_value>) style call */ |
2186 |
2010 if (IN_param_value == NULL) |
2187 /* Get the value from a foo(<param_value>) style call */ |
2011 IN_param_value = function_call_param_iterator.next(); |
2188 if (IN_param_value == NULL) |
2012 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
2189 IN_param_value = function_call_param_iterator.next(); |
2013 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
2190 if (IN_param_value != NULL) { |
2014 |
2191 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
2015 if(search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol)) |
2192 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
2193 } |
|
2194 |
|
2195 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol)) |
2016 { |
2196 { |
2017 |
2197 |
2018 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name; |
2198 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name; |
2019 return return_type_symbol; |
2199 return return_type_symbol; |
2020 |
2200 |
2036 |
2216 |
2037 { |
2217 { |
2038 identifier_c param_name("IN"); |
2218 identifier_c param_name("IN"); |
2039 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2219 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2040 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2220 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2041 |
2221 symbol_c *IN_type_symbol = NULL; |
2042 /* Get the value from a foo(<param_value>) style call */ |
2222 |
2043 if (IN_param_value == NULL) |
2223 /* Get the value from a foo(<param_value>) style call */ |
2044 IN_param_value = function_call_param_iterator.next(); |
2224 if (IN_param_value == NULL) |
2045 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
2225 IN_param_value = function_call_param_iterator.next(); |
2046 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
2226 if (IN_param_value != NULL) { |
2047 |
2227 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
2048 if(search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol)) |
2228 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
2229 } |
|
2230 |
|
2231 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol)) |
2049 { |
2232 { |
2050 |
2233 |
2051 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name; |
2234 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name; |
2052 return return_type_symbol; |
2235 return return_type_symbol; |
2053 |
2236 |
2069 |
2252 |
2070 { |
2253 { |
2071 identifier_c param_name("IN"); |
2254 identifier_c param_name("IN"); |
2072 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2255 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2073 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2256 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2074 |
2257 symbol_c *IN_type_symbol = NULL; |
2075 /* Get the value from a foo(<param_value>) style call */ |
2258 |
2076 if (IN_param_value == NULL) |
2259 /* Get the value from a foo(<param_value>) style call */ |
2077 IN_param_value = function_call_param_iterator.next(); |
2260 if (IN_param_value == NULL) |
2078 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
2261 IN_param_value = function_call_param_iterator.next(); |
2079 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
2262 if (IN_param_value != NULL) { |
2080 |
2263 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
2081 if(search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol)) |
2264 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
2265 } |
|
2266 |
|
2267 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol)) |
2082 { |
2268 { |
2083 |
2269 |
2084 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name; |
2270 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name; |
2085 return return_type_symbol; |
2271 return return_type_symbol; |
2086 |
2272 |
2102 |
2288 |
2103 { |
2289 { |
2104 identifier_c param_name("IN"); |
2290 identifier_c param_name("IN"); |
2105 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2291 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2106 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2292 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2107 |
2293 symbol_c *IN_type_symbol = NULL; |
2108 /* Get the value from a foo(<param_value>) style call */ |
2294 |
2109 if (IN_param_value == NULL) |
2295 /* Get the value from a foo(<param_value>) style call */ |
2110 IN_param_value = function_call_param_iterator.next(); |
2296 if (IN_param_value == NULL) |
2111 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
2297 IN_param_value = function_call_param_iterator.next(); |
2112 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
2298 if (IN_param_value != NULL) { |
2113 |
2299 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
2114 if(search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol)) |
2300 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
2301 } |
|
2302 |
|
2303 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol)) |
2115 { |
2304 { |
2116 |
2305 |
2117 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name; |
2306 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name; |
2118 return return_type_symbol; |
2307 return return_type_symbol; |
2119 |
2308 |
2135 |
2324 |
2136 { |
2325 { |
2137 identifier_c param_name("IN"); |
2326 identifier_c param_name("IN"); |
2138 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2327 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2139 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2328 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2140 |
2329 symbol_c *IN_type_symbol = NULL; |
2141 /* Get the value from a foo(<param_value>) style call */ |
2330 |
2142 if (IN_param_value == NULL) |
2331 /* Get the value from a foo(<param_value>) style call */ |
2143 IN_param_value = function_call_param_iterator.next(); |
2332 if (IN_param_value == NULL) |
2144 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
2333 IN_param_value = function_call_param_iterator.next(); |
2145 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
2334 if (IN_param_value != NULL) { |
2146 |
2335 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
2147 if(search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol)) |
2336 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
2337 } |
|
2338 |
|
2339 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol)) |
2148 { |
2340 { |
2149 |
2341 |
2150 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name; |
2342 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name; |
2151 return return_type_symbol; |
2343 return return_type_symbol; |
2152 |
2344 |
2168 |
2360 |
2169 { |
2361 { |
2170 identifier_c param_name("IN"); |
2362 identifier_c param_name("IN"); |
2171 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2363 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2172 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2364 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2173 |
2365 symbol_c *IN_type_symbol = NULL; |
2174 /* Get the value from a foo(<param_value>) style call */ |
2366 |
2175 if (IN_param_value == NULL) |
2367 /* Get the value from a foo(<param_value>) style call */ |
2176 IN_param_value = function_call_param_iterator.next(); |
2368 if (IN_param_value == NULL) |
2177 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
2369 IN_param_value = function_call_param_iterator.next(); |
2178 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
2370 if (IN_param_value != NULL) { |
2179 |
2371 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
2180 if(search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol)) |
2372 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
2373 } |
|
2374 |
|
2375 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol)) |
2181 { |
2376 { |
2182 |
2377 |
2183 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name; |
2378 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name; |
2184 return return_type_symbol; |
2379 return return_type_symbol; |
2185 |
2380 |
2201 |
2396 |
2202 { |
2397 { |
2203 identifier_c param_name("IN"); |
2398 identifier_c param_name("IN"); |
2204 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2399 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2205 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2400 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2206 |
2401 symbol_c *IN_type_symbol = NULL; |
2207 /* Get the value from a foo(<param_value>) style call */ |
2402 |
2208 if (IN_param_value == NULL) |
2403 /* Get the value from a foo(<param_value>) style call */ |
2209 IN_param_value = function_call_param_iterator.next(); |
2404 if (IN_param_value == NULL) |
2210 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
2405 IN_param_value = function_call_param_iterator.next(); |
2211 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
2406 if (IN_param_value != NULL) { |
2212 |
2407 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
2213 if(search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol)) |
2408 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
2409 } |
|
2410 |
|
2411 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol)) |
2214 { |
2412 { |
2215 |
2413 |
2216 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name; |
2414 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name; |
2217 return return_type_symbol; |
2415 return return_type_symbol; |
2218 |
2416 |
2234 |
2432 |
2235 { |
2433 { |
2236 identifier_c param_name("IN"); |
2434 identifier_c param_name("IN"); |
2237 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2435 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2238 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2436 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2239 |
2437 symbol_c *IN_type_symbol = NULL; |
2240 /* Get the value from a foo(<param_value>) style call */ |
2438 |
2241 if (IN_param_value == NULL) |
2439 /* Get the value from a foo(<param_value>) style call */ |
2242 IN_param_value = function_call_param_iterator.next(); |
2440 if (IN_param_value == NULL) |
2243 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
2441 IN_param_value = function_call_param_iterator.next(); |
2244 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
2442 if (IN_param_value != NULL) { |
2245 |
2443 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
2246 if(search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol)) |
2444 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
2445 } |
|
2446 |
|
2447 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol)) |
2247 { |
2448 { |
2248 |
2449 |
2249 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
2450 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
2250 return return_type_symbol; |
2451 return return_type_symbol; |
2251 |
2452 |
2267 |
2468 |
2268 { |
2469 { |
2269 identifier_c param_name("IN"); |
2470 identifier_c param_name("IN"); |
2270 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2471 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2271 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2472 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2272 |
2473 symbol_c *IN_type_symbol = NULL; |
2273 /* Get the value from a foo(<param_value>) style call */ |
2474 |
2274 if (IN_param_value == NULL) |
2475 /* Get the value from a foo(<param_value>) style call */ |
2275 IN_param_value = function_call_param_iterator.next(); |
2476 if (IN_param_value == NULL) |
2276 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
2477 IN_param_value = function_call_param_iterator.next(); |
2277 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
2478 if (IN_param_value != NULL) { |
2278 |
2479 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
2279 if(search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol)) |
2480 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
2481 } |
|
2482 |
|
2483 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol)) |
2280 { |
2484 { |
2281 |
2485 |
2282 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name; |
2486 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name; |
2283 return return_type_symbol; |
2487 return return_type_symbol; |
2284 |
2488 |
2300 |
2504 |
2301 { |
2505 { |
2302 identifier_c param_name("IN"); |
2506 identifier_c param_name("IN"); |
2303 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2507 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2304 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2508 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2305 |
2509 symbol_c *IN_type_symbol = NULL; |
2306 /* Get the value from a foo(<param_value>) style call */ |
2510 |
2307 if (IN_param_value == NULL) |
2511 /* Get the value from a foo(<param_value>) style call */ |
2308 IN_param_value = function_call_param_iterator.next(); |
2512 if (IN_param_value == NULL) |
2309 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
2513 IN_param_value = function_call_param_iterator.next(); |
2310 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
2514 if (IN_param_value != NULL) { |
2311 |
2515 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
2312 if(search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol)) |
2516 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
2517 } |
|
2518 |
|
2519 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol)) |
2313 { |
2520 { |
2314 |
2521 |
2315 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name; |
2522 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name; |
2316 return return_type_symbol; |
2523 return return_type_symbol; |
2317 |
2524 |
2333 |
2540 |
2334 { |
2541 { |
2335 identifier_c param_name("IN"); |
2542 identifier_c param_name("IN"); |
2336 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2543 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2337 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2544 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2338 |
2545 symbol_c *IN_type_symbol = NULL; |
2339 /* Get the value from a foo(<param_value>) style call */ |
2546 |
2340 if (IN_param_value == NULL) |
2547 /* Get the value from a foo(<param_value>) style call */ |
2341 IN_param_value = function_call_param_iterator.next(); |
2548 if (IN_param_value == NULL) |
2342 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
2549 IN_param_value = function_call_param_iterator.next(); |
2343 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
2550 if (IN_param_value != NULL) { |
2344 |
2551 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
2345 if(search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol)) |
2552 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
2553 } |
|
2554 |
|
2555 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol)) |
2346 { |
2556 { |
2347 |
2557 |
2348 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name; |
2558 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name; |
2349 return return_type_symbol; |
2559 return return_type_symbol; |
2350 |
2560 |
2366 |
2576 |
2367 { |
2577 { |
2368 identifier_c param_name("IN"); |
2578 identifier_c param_name("IN"); |
2369 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2579 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2370 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2580 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2371 |
2581 symbol_c *IN_type_symbol = NULL; |
2372 /* Get the value from a foo(<param_value>) style call */ |
2582 |
2373 if (IN_param_value == NULL) |
2583 /* Get the value from a foo(<param_value>) style call */ |
2374 IN_param_value = function_call_param_iterator.next(); |
2584 if (IN_param_value == NULL) |
2375 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
2585 IN_param_value = function_call_param_iterator.next(); |
2376 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
2586 if (IN_param_value != NULL) { |
2377 |
2587 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
2378 if(search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol)) |
2588 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
2589 } |
|
2590 |
|
2591 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol)) |
2379 { |
2592 { |
2380 |
2593 |
2381 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name; |
2594 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name; |
2382 return return_type_symbol; |
2595 return return_type_symbol; |
2383 |
2596 |
2399 |
2612 |
2400 { |
2613 { |
2401 identifier_c param_name("IN"); |
2614 identifier_c param_name("IN"); |
2402 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2615 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2403 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2616 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2404 |
2617 symbol_c *IN_type_symbol = NULL; |
2405 /* Get the value from a foo(<param_value>) style call */ |
2618 |
2406 if (IN_param_value == NULL) |
2619 /* Get the value from a foo(<param_value>) style call */ |
2407 IN_param_value = function_call_param_iterator.next(); |
2620 if (IN_param_value == NULL) |
2408 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
2621 IN_param_value = function_call_param_iterator.next(); |
2409 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
2622 if (IN_param_value != NULL) { |
2410 |
2623 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
2411 if(search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol)) |
2624 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
2625 } |
|
2626 |
|
2627 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol)) |
2412 { |
2628 { |
2413 |
2629 |
2414 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name; |
2630 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name; |
2415 return return_type_symbol; |
2631 return return_type_symbol; |
2416 |
2632 |
2432 |
2648 |
2433 { |
2649 { |
2434 identifier_c param_name("IN"); |
2650 identifier_c param_name("IN"); |
2435 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2651 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2436 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2652 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2437 |
2653 symbol_c *IN_type_symbol = NULL; |
2438 /* Get the value from a foo(<param_value>) style call */ |
2654 |
2439 if (IN_param_value == NULL) |
2655 /* Get the value from a foo(<param_value>) style call */ |
2440 IN_param_value = function_call_param_iterator.next(); |
2656 if (IN_param_value == NULL) |
2441 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
2657 IN_param_value = function_call_param_iterator.next(); |
2442 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
2658 if (IN_param_value != NULL) { |
2443 |
2659 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
2444 if(search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol)) |
2660 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
2661 } |
|
2662 |
|
2663 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol)) |
2445 { |
2664 { |
2446 |
2665 |
2447 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name; |
2666 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name; |
2448 return return_type_symbol; |
2667 return return_type_symbol; |
2449 |
2668 |
2465 |
2684 |
2466 { |
2685 { |
2467 identifier_c param_name("IN"); |
2686 identifier_c param_name("IN"); |
2468 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2687 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2469 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2688 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2470 |
2689 symbol_c *IN_type_symbol = NULL; |
2471 /* Get the value from a foo(<param_value>) style call */ |
2690 |
2472 if (IN_param_value == NULL) |
2691 /* Get the value from a foo(<param_value>) style call */ |
2473 IN_param_value = function_call_param_iterator.next(); |
2692 if (IN_param_value == NULL) |
2474 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
2693 IN_param_value = function_call_param_iterator.next(); |
2475 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
2694 if (IN_param_value != NULL) { |
2476 |
2695 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
2477 if(search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol)) |
2696 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
2697 } |
|
2698 |
|
2699 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol)) |
2478 { |
2700 { |
2479 |
2701 |
2480 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name; |
2702 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name; |
2481 return return_type_symbol; |
2703 return return_type_symbol; |
2482 |
2704 |
2498 |
2720 |
2499 { |
2721 { |
2500 identifier_c param_name("IN"); |
2722 identifier_c param_name("IN"); |
2501 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2723 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2502 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2724 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2503 |
2725 symbol_c *IN_type_symbol = NULL; |
2504 /* Get the value from a foo(<param_value>) style call */ |
2726 |
2505 if (IN_param_value == NULL) |
2727 /* Get the value from a foo(<param_value>) style call */ |
2506 IN_param_value = function_call_param_iterator.next(); |
2728 if (IN_param_value == NULL) |
2507 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
2729 IN_param_value = function_call_param_iterator.next(); |
2508 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
2730 if (IN_param_value != NULL) { |
2509 |
2731 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
2510 if(search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol)) |
2732 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
2733 } |
|
2734 |
|
2735 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol)) |
2511 { |
2736 { |
2512 |
2737 |
2513 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
2738 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
2514 return return_type_symbol; |
2739 return return_type_symbol; |
2515 |
2740 |
2531 |
2756 |
2532 { |
2757 { |
2533 identifier_c param_name("IN"); |
2758 identifier_c param_name("IN"); |
2534 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2759 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2535 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2760 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2536 |
2761 symbol_c *IN_type_symbol = NULL; |
2537 /* Get the value from a foo(<param_value>) style call */ |
2762 |
2538 if (IN_param_value == NULL) |
2763 /* Get the value from a foo(<param_value>) style call */ |
2539 IN_param_value = function_call_param_iterator.next(); |
2764 if (IN_param_value == NULL) |
2540 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
2765 IN_param_value = function_call_param_iterator.next(); |
2541 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
2766 if (IN_param_value != NULL) { |
2542 |
2767 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
2543 if(search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol)) |
2768 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
2769 } |
|
2770 |
|
2771 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol)) |
2544 { |
2772 { |
2545 |
2773 |
2546 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name; |
2774 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name; |
2547 return return_type_symbol; |
2775 return return_type_symbol; |
2548 |
2776 |
2564 |
2792 |
2565 { |
2793 { |
2566 identifier_c param_name("IN"); |
2794 identifier_c param_name("IN"); |
2567 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2795 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2568 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2796 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2569 |
2797 symbol_c *IN_type_symbol = NULL; |
2570 /* Get the value from a foo(<param_value>) style call */ |
2798 |
2571 if (IN_param_value == NULL) |
2799 /* Get the value from a foo(<param_value>) style call */ |
2572 IN_param_value = function_call_param_iterator.next(); |
2800 if (IN_param_value == NULL) |
2573 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
2801 IN_param_value = function_call_param_iterator.next(); |
2574 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
2802 if (IN_param_value != NULL) { |
2575 |
2803 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
2576 if(search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol)) |
2804 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
2805 } |
|
2806 |
|
2807 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol)) |
2577 { |
2808 { |
2578 |
2809 |
2579 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name; |
2810 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name; |
2580 return return_type_symbol; |
2811 return return_type_symbol; |
2581 |
2812 |
2597 |
2828 |
2598 { |
2829 { |
2599 identifier_c param_name("IN"); |
2830 identifier_c param_name("IN"); |
2600 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2831 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2601 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2832 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2602 |
2833 symbol_c *IN_type_symbol = NULL; |
2603 /* Get the value from a foo(<param_value>) style call */ |
2834 |
2604 if (IN_param_value == NULL) |
2835 /* Get the value from a foo(<param_value>) style call */ |
2605 IN_param_value = function_call_param_iterator.next(); |
2836 if (IN_param_value == NULL) |
2606 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
2837 IN_param_value = function_call_param_iterator.next(); |
2607 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
2838 if (IN_param_value != NULL) { |
2608 |
2839 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
2609 if(search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol)) |
2840 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
2841 } |
|
2842 |
|
2843 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol)) |
2610 { |
2844 { |
2611 |
2845 |
2612 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name; |
2846 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name; |
2613 return return_type_symbol; |
2847 return return_type_symbol; |
2614 |
2848 |
2630 |
2864 |
2631 { |
2865 { |
2632 identifier_c param_name("IN"); |
2866 identifier_c param_name("IN"); |
2633 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2867 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2634 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2868 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2635 |
2869 symbol_c *IN_type_symbol = NULL; |
2636 /* Get the value from a foo(<param_value>) style call */ |
2870 |
2637 if (IN_param_value == NULL) |
2871 /* Get the value from a foo(<param_value>) style call */ |
2638 IN_param_value = function_call_param_iterator.next(); |
2872 if (IN_param_value == NULL) |
2639 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
2873 IN_param_value = function_call_param_iterator.next(); |
2640 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
2874 if (IN_param_value != NULL) { |
2641 |
2875 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
2642 if(search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol)) |
2876 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
2877 } |
|
2878 |
|
2879 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol)) |
2643 { |
2880 { |
2644 |
2881 |
2645 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name; |
2882 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name; |
2646 return return_type_symbol; |
2883 return return_type_symbol; |
2647 |
2884 |
2663 |
2900 |
2664 { |
2901 { |
2665 identifier_c param_name("IN"); |
2902 identifier_c param_name("IN"); |
2666 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2903 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2667 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2904 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2668 |
2905 symbol_c *IN_type_symbol = NULL; |
2669 /* Get the value from a foo(<param_value>) style call */ |
2906 |
2670 if (IN_param_value == NULL) |
2907 /* Get the value from a foo(<param_value>) style call */ |
2671 IN_param_value = function_call_param_iterator.next(); |
2908 if (IN_param_value == NULL) |
2672 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
2909 IN_param_value = function_call_param_iterator.next(); |
2673 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
2910 if (IN_param_value != NULL) { |
2674 |
2911 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
2675 if(search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol)) |
2912 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
2913 } |
|
2914 |
|
2915 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol)) |
2676 { |
2916 { |
2677 |
2917 |
2678 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name; |
2918 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name; |
2679 return return_type_symbol; |
2919 return return_type_symbol; |
2680 |
2920 |
2696 |
2936 |
2697 { |
2937 { |
2698 identifier_c param_name("IN"); |
2938 identifier_c param_name("IN"); |
2699 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2939 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2700 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2940 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2701 |
2941 symbol_c *IN_type_symbol = NULL; |
2702 /* Get the value from a foo(<param_value>) style call */ |
2942 |
2703 if (IN_param_value == NULL) |
2943 /* Get the value from a foo(<param_value>) style call */ |
2704 IN_param_value = function_call_param_iterator.next(); |
2944 if (IN_param_value == NULL) |
2705 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
2945 IN_param_value = function_call_param_iterator.next(); |
2706 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
2946 if (IN_param_value != NULL) { |
2707 |
2947 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
2708 if(search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol)) |
2948 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
2949 } |
|
2950 |
|
2951 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol)) |
2709 { |
2952 { |
2710 |
2953 |
2711 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name; |
2954 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name; |
2712 return return_type_symbol; |
2955 return return_type_symbol; |
2713 |
2956 |
2729 |
2972 |
2730 { |
2973 { |
2731 identifier_c param_name("IN"); |
2974 identifier_c param_name("IN"); |
2732 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2975 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2733 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2976 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2734 |
2977 symbol_c *IN_type_symbol = NULL; |
2735 /* Get the value from a foo(<param_value>) style call */ |
2978 |
2736 if (IN_param_value == NULL) |
2979 /* Get the value from a foo(<param_value>) style call */ |
2737 IN_param_value = function_call_param_iterator.next(); |
2980 if (IN_param_value == NULL) |
2738 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
2981 IN_param_value = function_call_param_iterator.next(); |
2739 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
2982 if (IN_param_value != NULL) { |
2740 |
2983 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
2741 if(search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol)) |
2984 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
2985 } |
|
2986 |
|
2987 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol)) |
2742 { |
2988 { |
2743 |
2989 |
2744 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name; |
2990 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name; |
2745 return return_type_symbol; |
2991 return return_type_symbol; |
2746 |
2992 |
2762 |
3008 |
2763 { |
3009 { |
2764 identifier_c param_name("IN"); |
3010 identifier_c param_name("IN"); |
2765 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
3011 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2766 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
3012 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2767 |
3013 symbol_c *IN_type_symbol = NULL; |
2768 /* Get the value from a foo(<param_value>) style call */ |
3014 |
2769 if (IN_param_value == NULL) |
3015 /* Get the value from a foo(<param_value>) style call */ |
2770 IN_param_value = function_call_param_iterator.next(); |
3016 if (IN_param_value == NULL) |
2771 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3017 IN_param_value = function_call_param_iterator.next(); |
2772 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
3018 if (IN_param_value != NULL) { |
2773 |
3019 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
2774 if(search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol)) |
3020 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
3021 } |
|
3022 |
|
3023 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol)) |
2775 { |
3024 { |
2776 |
3025 |
2777 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name; |
3026 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name; |
2778 return return_type_symbol; |
3027 return return_type_symbol; |
2779 |
3028 |
2795 |
3044 |
2796 { |
3045 { |
2797 identifier_c param_name("IN"); |
3046 identifier_c param_name("IN"); |
2798 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
3047 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2799 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
3048 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2800 |
3049 symbol_c *IN_type_symbol = NULL; |
2801 /* Get the value from a foo(<param_value>) style call */ |
3050 |
2802 if (IN_param_value == NULL) |
3051 /* Get the value from a foo(<param_value>) style call */ |
2803 IN_param_value = function_call_param_iterator.next(); |
3052 if (IN_param_value == NULL) |
2804 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3053 IN_param_value = function_call_param_iterator.next(); |
2805 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
3054 if (IN_param_value != NULL) { |
2806 |
3055 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
2807 if(search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol)) |
3056 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
3057 } |
|
3058 |
|
3059 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol)) |
2808 { |
3060 { |
2809 |
3061 |
2810 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
3062 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
2811 return return_type_symbol; |
3063 return return_type_symbol; |
2812 |
3064 |
2828 |
3080 |
2829 { |
3081 { |
2830 identifier_c param_name("IN"); |
3082 identifier_c param_name("IN"); |
2831 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
3083 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2832 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
3084 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2833 |
3085 symbol_c *IN_type_symbol = NULL; |
2834 /* Get the value from a foo(<param_value>) style call */ |
3086 |
2835 if (IN_param_value == NULL) |
3087 /* Get the value from a foo(<param_value>) style call */ |
2836 IN_param_value = function_call_param_iterator.next(); |
3088 if (IN_param_value == NULL) |
2837 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3089 IN_param_value = function_call_param_iterator.next(); |
2838 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
3090 if (IN_param_value != NULL) { |
2839 |
3091 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
2840 if(search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol)) |
3092 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
3093 } |
|
3094 |
|
3095 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol)) |
2841 { |
3096 { |
2842 |
3097 |
2843 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name; |
3098 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name; |
2844 return return_type_symbol; |
3099 return return_type_symbol; |
2845 |
3100 |
2861 |
3116 |
2862 { |
3117 { |
2863 identifier_c param_name("IN"); |
3118 identifier_c param_name("IN"); |
2864 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
3119 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2865 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
3120 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2866 |
3121 symbol_c *IN_type_symbol = NULL; |
2867 /* Get the value from a foo(<param_value>) style call */ |
3122 |
2868 if (IN_param_value == NULL) |
3123 /* Get the value from a foo(<param_value>) style call */ |
2869 IN_param_value = function_call_param_iterator.next(); |
3124 if (IN_param_value == NULL) |
2870 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3125 IN_param_value = function_call_param_iterator.next(); |
2871 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
3126 if (IN_param_value != NULL) { |
2872 |
3127 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
2873 if(search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol)) |
3128 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
3129 } |
|
3130 |
|
3131 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol)) |
2874 { |
3132 { |
2875 |
3133 |
2876 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name; |
3134 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name; |
2877 return return_type_symbol; |
3135 return return_type_symbol; |
2878 |
3136 |
2894 |
3152 |
2895 { |
3153 { |
2896 identifier_c param_name("IN"); |
3154 identifier_c param_name("IN"); |
2897 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
3155 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2898 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
3156 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2899 |
3157 symbol_c *IN_type_symbol = NULL; |
2900 /* Get the value from a foo(<param_value>) style call */ |
3158 |
2901 if (IN_param_value == NULL) |
3159 /* Get the value from a foo(<param_value>) style call */ |
2902 IN_param_value = function_call_param_iterator.next(); |
3160 if (IN_param_value == NULL) |
2903 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3161 IN_param_value = function_call_param_iterator.next(); |
2904 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
3162 if (IN_param_value != NULL) { |
2905 |
3163 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
2906 if(search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol)) |
3164 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
3165 } |
|
3166 |
|
3167 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol)) |
2907 { |
3168 { |
2908 |
3169 |
2909 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name; |
3170 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name; |
2910 return return_type_symbol; |
3171 return return_type_symbol; |
2911 |
3172 |
2927 |
3188 |
2928 { |
3189 { |
2929 identifier_c param_name("IN"); |
3190 identifier_c param_name("IN"); |
2930 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
3191 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2931 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
3192 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2932 |
3193 symbol_c *IN_type_symbol = NULL; |
2933 /* Get the value from a foo(<param_value>) style call */ |
3194 |
2934 if (IN_param_value == NULL) |
3195 /* Get the value from a foo(<param_value>) style call */ |
2935 IN_param_value = function_call_param_iterator.next(); |
3196 if (IN_param_value == NULL) |
2936 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3197 IN_param_value = function_call_param_iterator.next(); |
2937 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
3198 if (IN_param_value != NULL) { |
2938 |
3199 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
2939 if(search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol)) |
3200 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
3201 } |
|
3202 |
|
3203 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol)) |
2940 { |
3204 { |
2941 |
3205 |
2942 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name; |
3206 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name; |
2943 return return_type_symbol; |
3207 return return_type_symbol; |
2944 |
3208 |
2960 |
3224 |
2961 { |
3225 { |
2962 identifier_c param_name("IN"); |
3226 identifier_c param_name("IN"); |
2963 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
3227 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2964 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
3228 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2965 |
3229 symbol_c *IN_type_symbol = NULL; |
2966 /* Get the value from a foo(<param_value>) style call */ |
3230 |
2967 if (IN_param_value == NULL) |
3231 /* Get the value from a foo(<param_value>) style call */ |
2968 IN_param_value = function_call_param_iterator.next(); |
3232 if (IN_param_value == NULL) |
2969 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3233 IN_param_value = function_call_param_iterator.next(); |
2970 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
3234 if (IN_param_value != NULL) { |
2971 |
3235 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
2972 if(search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol)) |
3236 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
3237 } |
|
3238 |
|
3239 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol)) |
2973 { |
3240 { |
2974 |
3241 |
2975 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name; |
3242 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name; |
2976 return return_type_symbol; |
3243 return return_type_symbol; |
2977 |
3244 |
2993 |
3260 |
2994 { |
3261 { |
2995 identifier_c param_name("IN"); |
3262 identifier_c param_name("IN"); |
2996 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
3263 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
2997 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
3264 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
2998 |
3265 symbol_c *IN_type_symbol = NULL; |
2999 /* Get the value from a foo(<param_value>) style call */ |
3266 |
3000 if (IN_param_value == NULL) |
3267 /* Get the value from a foo(<param_value>) style call */ |
3001 IN_param_value = function_call_param_iterator.next(); |
3268 if (IN_param_value == NULL) |
3002 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3269 IN_param_value = function_call_param_iterator.next(); |
3003 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
3270 if (IN_param_value != NULL) { |
3004 |
3271 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3005 if(search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol)) |
3272 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
3273 } |
|
3274 |
|
3275 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol)) |
3006 { |
3276 { |
3007 |
3277 |
3008 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name; |
3278 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name; |
3009 return return_type_symbol; |
3279 return return_type_symbol; |
3010 |
3280 |
3026 |
3296 |
3027 { |
3297 { |
3028 identifier_c param_name("IN"); |
3298 identifier_c param_name("IN"); |
3029 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
3299 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
3030 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
3300 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
3031 |
3301 symbol_c *IN_type_symbol = NULL; |
3032 /* Get the value from a foo(<param_value>) style call */ |
3302 |
3033 if (IN_param_value == NULL) |
3303 /* Get the value from a foo(<param_value>) style call */ |
3034 IN_param_value = function_call_param_iterator.next(); |
3304 if (IN_param_value == NULL) |
3035 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3305 IN_param_value = function_call_param_iterator.next(); |
3036 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
3306 if (IN_param_value != NULL) { |
3037 |
3307 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3038 if(search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol)) |
3308 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
3309 } |
|
3310 |
|
3311 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol)) |
3039 { |
3312 { |
3040 |
3313 |
3041 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name; |
3314 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name; |
3042 return return_type_symbol; |
3315 return return_type_symbol; |
3043 |
3316 |
3059 |
3332 |
3060 { |
3333 { |
3061 identifier_c param_name("IN"); |
3334 identifier_c param_name("IN"); |
3062 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
3335 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
3063 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
3336 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
3064 |
3337 symbol_c *IN_type_symbol = NULL; |
3065 /* Get the value from a foo(<param_value>) style call */ |
3338 |
3066 if (IN_param_value == NULL) |
3339 /* Get the value from a foo(<param_value>) style call */ |
3067 IN_param_value = function_call_param_iterator.next(); |
3340 if (IN_param_value == NULL) |
3068 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3341 IN_param_value = function_call_param_iterator.next(); |
3069 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
3342 if (IN_param_value != NULL) { |
3070 |
3343 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3071 if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol)) |
3344 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
3345 } |
|
3346 |
|
3347 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol)) |
3072 { |
3348 { |
3073 |
3349 |
3074 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name; |
3350 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name; |
3075 return return_type_symbol; |
3351 return return_type_symbol; |
3076 |
3352 |
3092 |
3368 |
3093 { |
3369 { |
3094 identifier_c param_name("IN"); |
3370 identifier_c param_name("IN"); |
3095 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
3371 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
3096 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
3372 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
3097 |
3373 symbol_c *IN_type_symbol = NULL; |
3098 /* Get the value from a foo(<param_value>) style call */ |
3374 |
3099 if (IN_param_value == NULL) |
3375 /* Get the value from a foo(<param_value>) style call */ |
3100 IN_param_value = function_call_param_iterator.next(); |
3376 if (IN_param_value == NULL) |
3101 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3377 IN_param_value = function_call_param_iterator.next(); |
3102 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
3378 if (IN_param_value != NULL) { |
3103 |
3379 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3104 if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol)) |
3380 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
3381 } |
|
3382 |
|
3383 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol)) |
3105 { |
3384 { |
3106 |
3385 |
3107 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name; |
3386 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name; |
3108 return return_type_symbol; |
3387 return return_type_symbol; |
3109 |
3388 |
3125 |
3404 |
3126 { |
3405 { |
3127 identifier_c param_name("IN"); |
3406 identifier_c param_name("IN"); |
3128 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
3407 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
3129 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
3408 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
3130 |
3409 symbol_c *IN_type_symbol = NULL; |
3131 /* Get the value from a foo(<param_value>) style call */ |
3410 |
3132 if (IN_param_value == NULL) |
3411 /* Get the value from a foo(<param_value>) style call */ |
3133 IN_param_value = function_call_param_iterator.next(); |
3412 if (IN_param_value == NULL) |
3134 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3413 IN_param_value = function_call_param_iterator.next(); |
3135 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
3414 if (IN_param_value != NULL) { |
3136 |
3415 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3137 if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol)) |
3416 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
3417 } |
|
3418 |
|
3419 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol)) |
3138 { |
3420 { |
3139 |
3421 |
3140 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name; |
3422 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name; |
3141 return return_type_symbol; |
3423 return return_type_symbol; |
3142 |
3424 |
3158 |
3440 |
3159 { |
3441 { |
3160 identifier_c param_name("IN"); |
3442 identifier_c param_name("IN"); |
3161 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
3443 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
3162 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
3444 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
3163 |
3445 symbol_c *IN_type_symbol = NULL; |
3164 /* Get the value from a foo(<param_value>) style call */ |
3446 |
3165 if (IN_param_value == NULL) |
3447 /* Get the value from a foo(<param_value>) style call */ |
3166 IN_param_value = function_call_param_iterator.next(); |
3448 if (IN_param_value == NULL) |
3167 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3449 IN_param_value = function_call_param_iterator.next(); |
3168 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
3450 if (IN_param_value != NULL) { |
3169 |
3451 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3170 if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol)) |
3452 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
3453 } |
|
3454 |
|
3455 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol)) |
3171 { |
3456 { |
3172 |
3457 |
3173 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name; |
3458 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name; |
3174 return return_type_symbol; |
3459 return return_type_symbol; |
3175 |
3460 |
3191 |
3476 |
3192 { |
3477 { |
3193 identifier_c param_name("IN"); |
3478 identifier_c param_name("IN"); |
3194 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
3479 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
3195 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
3480 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
3196 |
3481 symbol_c *IN_type_symbol = NULL; |
3197 /* Get the value from a foo(<param_value>) style call */ |
3482 |
3198 if (IN_param_value == NULL) |
3483 /* Get the value from a foo(<param_value>) style call */ |
3199 IN_param_value = function_call_param_iterator.next(); |
3484 if (IN_param_value == NULL) |
3200 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3485 IN_param_value = function_call_param_iterator.next(); |
3201 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
3486 if (IN_param_value != NULL) { |
3202 |
3487 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3203 if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol)) |
3488 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
3489 } |
|
3490 |
|
3491 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol)) |
3204 { |
3492 { |
3205 |
3493 |
3206 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name; |
3494 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name; |
3207 return return_type_symbol; |
3495 return return_type_symbol; |
3208 |
3496 |
3224 |
3512 |
3225 { |
3513 { |
3226 identifier_c param_name("IN"); |
3514 identifier_c param_name("IN"); |
3227 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
3515 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
3228 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
3516 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
3229 |
3517 symbol_c *IN_type_symbol = NULL; |
3230 /* Get the value from a foo(<param_value>) style call */ |
3518 |
3231 if (IN_param_value == NULL) |
3519 /* Get the value from a foo(<param_value>) style call */ |
3232 IN_param_value = function_call_param_iterator.next(); |
3520 if (IN_param_value == NULL) |
3233 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3521 IN_param_value = function_call_param_iterator.next(); |
3234 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
3522 if (IN_param_value != NULL) { |
3235 |
3523 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3236 if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol)) |
3524 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
3525 } |
|
3526 |
|
3527 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol)) |
3237 { |
3528 { |
3238 |
3529 |
3239 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name; |
3530 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name; |
3240 return return_type_symbol; |
3531 return return_type_symbol; |
3241 |
3532 |
3257 |
3548 |
3258 { |
3549 { |
3259 identifier_c param_name("IN"); |
3550 identifier_c param_name("IN"); |
3260 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
3551 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
3261 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
3552 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
3262 |
3553 symbol_c *IN_type_symbol = NULL; |
3263 /* Get the value from a foo(<param_value>) style call */ |
3554 |
3264 if (IN_param_value == NULL) |
3555 /* Get the value from a foo(<param_value>) style call */ |
3265 IN_param_value = function_call_param_iterator.next(); |
3556 if (IN_param_value == NULL) |
3266 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3557 IN_param_value = function_call_param_iterator.next(); |
3267 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
3558 if (IN_param_value != NULL) { |
3268 |
3559 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3269 if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol)) |
3560 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
3561 } |
|
3562 |
|
3563 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol)) |
3270 { |
3564 { |
3271 |
3565 |
3272 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name; |
3566 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name; |
3273 return return_type_symbol; |
3567 return return_type_symbol; |
3274 |
3568 |
3290 |
3584 |
3291 { |
3585 { |
3292 identifier_c param_name("IN"); |
3586 identifier_c param_name("IN"); |
3293 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
3587 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
3294 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
3588 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
3295 |
3589 symbol_c *IN_type_symbol = NULL; |
3296 /* Get the value from a foo(<param_value>) style call */ |
3590 |
3297 if (IN_param_value == NULL) |
3591 /* Get the value from a foo(<param_value>) style call */ |
3298 IN_param_value = function_call_param_iterator.next(); |
3592 if (IN_param_value == NULL) |
3299 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3593 IN_param_value = function_call_param_iterator.next(); |
3300 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
3594 if (IN_param_value != NULL) { |
3301 |
3595 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3302 if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol)) |
3596 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
3597 } |
|
3598 |
|
3599 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol)) |
3303 { |
3600 { |
3304 |
3601 |
3305 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name; |
3602 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name; |
3306 return return_type_symbol; |
3603 return return_type_symbol; |
3307 |
3604 |
3323 |
3620 |
3324 { |
3621 { |
3325 identifier_c param_name("IN"); |
3622 identifier_c param_name("IN"); |
3326 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
3623 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
3327 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
3624 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
3328 |
3625 symbol_c *IN_type_symbol = NULL; |
3329 /* Get the value from a foo(<param_value>) style call */ |
3626 |
3330 if (IN_param_value == NULL) |
3627 /* Get the value from a foo(<param_value>) style call */ |
3331 IN_param_value = function_call_param_iterator.next(); |
3628 if (IN_param_value == NULL) |
3332 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3629 IN_param_value = function_call_param_iterator.next(); |
3333 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
3630 if (IN_param_value != NULL) { |
3334 |
3631 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3335 if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol)) |
3632 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
3633 } |
|
3634 |
|
3635 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol)) |
3336 { |
3636 { |
3337 |
3637 |
3338 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name; |
3638 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name; |
3339 return return_type_symbol; |
3639 return return_type_symbol; |
3340 |
3640 |
3356 |
3656 |
3357 { |
3657 { |
3358 identifier_c param_name("IN"); |
3658 identifier_c param_name("IN"); |
3359 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
3659 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
3360 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
3660 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
3361 |
3661 symbol_c *IN_type_symbol = NULL; |
3362 /* Get the value from a foo(<param_value>) style call */ |
3662 |
3363 if (IN_param_value == NULL) |
3663 /* Get the value from a foo(<param_value>) style call */ |
3364 IN_param_value = function_call_param_iterator.next(); |
3664 if (IN_param_value == NULL) |
3365 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3665 IN_param_value = function_call_param_iterator.next(); |
3366 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
3666 if (IN_param_value != NULL) { |
3367 |
3667 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3368 if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol)) |
3668 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
3669 } |
|
3670 |
|
3671 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol)) |
3369 { |
3672 { |
3370 |
3673 |
3371 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
3674 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
3372 return return_type_symbol; |
3675 return return_type_symbol; |
3373 |
3676 |
3389 |
3692 |
3390 { |
3693 { |
3391 identifier_c param_name("IN"); |
3694 identifier_c param_name("IN"); |
3392 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
3695 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
3393 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
3696 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
3394 |
3697 symbol_c *IN_type_symbol = NULL; |
3395 /* Get the value from a foo(<param_value>) style call */ |
3698 |
3396 if (IN_param_value == NULL) |
3699 /* Get the value from a foo(<param_value>) style call */ |
3397 IN_param_value = function_call_param_iterator.next(); |
3700 if (IN_param_value == NULL) |
3398 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3701 IN_param_value = function_call_param_iterator.next(); |
3399 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
3702 if (IN_param_value != NULL) { |
3400 |
3703 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3401 if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol)) |
3704 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
3705 } |
|
3706 |
|
3707 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol)) |
3402 { |
3708 { |
3403 |
3709 |
3404 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name; |
3710 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name; |
3405 return return_type_symbol; |
3711 return return_type_symbol; |
3406 |
3712 |
3422 |
3728 |
3423 { |
3729 { |
3424 identifier_c param_name("IN"); |
3730 identifier_c param_name("IN"); |
3425 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
3731 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
3426 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
3732 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
3427 |
3733 symbol_c *IN_type_symbol = NULL; |
3428 /* Get the value from a foo(<param_value>) style call */ |
3734 |
3429 if (IN_param_value == NULL) |
3735 /* Get the value from a foo(<param_value>) style call */ |
3430 IN_param_value = function_call_param_iterator.next(); |
3736 if (IN_param_value == NULL) |
3431 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3737 IN_param_value = function_call_param_iterator.next(); |
3432 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
3738 if (IN_param_value != NULL) { |
3433 |
3739 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3434 if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol)) |
3740 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
3741 } |
|
3742 |
|
3743 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol)) |
3435 { |
3744 { |
3436 |
3745 |
3437 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name; |
3746 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name; |
3438 return return_type_symbol; |
3747 return return_type_symbol; |
3439 |
3748 |
3455 |
3764 |
3456 { |
3765 { |
3457 identifier_c param_name("IN"); |
3766 identifier_c param_name("IN"); |
3458 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
3767 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
3459 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
3768 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
3460 |
3769 symbol_c *IN_type_symbol = NULL; |
3461 /* Get the value from a foo(<param_value>) style call */ |
3770 |
3462 if (IN_param_value == NULL) |
3771 /* Get the value from a foo(<param_value>) style call */ |
3463 IN_param_value = function_call_param_iterator.next(); |
3772 if (IN_param_value == NULL) |
3464 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3773 IN_param_value = function_call_param_iterator.next(); |
3465 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
3774 if (IN_param_value != NULL) { |
3466 |
3775 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3467 if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol)) |
3776 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
3777 } |
|
3778 |
|
3779 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol)) |
3468 { |
3780 { |
3469 |
3781 |
3470 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name; |
3782 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name; |
3471 return return_type_symbol; |
3783 return return_type_symbol; |
3472 |
3784 |
3488 |
3800 |
3489 { |
3801 { |
3490 identifier_c param_name("IN"); |
3802 identifier_c param_name("IN"); |
3491 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
3803 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
3492 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
3804 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
3493 |
3805 symbol_c *IN_type_symbol = NULL; |
3494 /* Get the value from a foo(<param_value>) style call */ |
3806 |
3495 if (IN_param_value == NULL) |
3807 /* Get the value from a foo(<param_value>) style call */ |
3496 IN_param_value = function_call_param_iterator.next(); |
3808 if (IN_param_value == NULL) |
3497 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3809 IN_param_value = function_call_param_iterator.next(); |
3498 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
3810 if (IN_param_value != NULL) { |
3499 |
3811 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3500 if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol)) |
3812 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
3813 } |
|
3814 |
|
3815 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol)) |
3501 { |
3816 { |
3502 |
3817 |
3503 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name; |
3818 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name; |
3504 return return_type_symbol; |
3819 return return_type_symbol; |
3505 |
3820 |
3521 |
3836 |
3522 { |
3837 { |
3523 identifier_c param_name("IN"); |
3838 identifier_c param_name("IN"); |
3524 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
3839 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
3525 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
3840 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
3526 |
3841 symbol_c *IN_type_symbol = NULL; |
3527 /* Get the value from a foo(<param_value>) style call */ |
3842 |
3528 if (IN_param_value == NULL) |
3843 /* Get the value from a foo(<param_value>) style call */ |
3529 IN_param_value = function_call_param_iterator.next(); |
3844 if (IN_param_value == NULL) |
3530 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3845 IN_param_value = function_call_param_iterator.next(); |
3531 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
3846 if (IN_param_value != NULL) { |
3532 |
3847 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3533 if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol)) |
3848 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
3849 } |
|
3850 |
|
3851 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol)) |
3534 { |
3852 { |
3535 |
3853 |
3536 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name; |
3854 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name; |
3537 return return_type_symbol; |
3855 return return_type_symbol; |
3538 |
3856 |
3554 |
3872 |
3555 { |
3873 { |
3556 identifier_c param_name("IN"); |
3874 identifier_c param_name("IN"); |
3557 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
3875 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
3558 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
3876 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
3559 |
3877 symbol_c *IN_type_symbol = NULL; |
3560 /* Get the value from a foo(<param_value>) style call */ |
3878 |
3561 if (IN_param_value == NULL) |
3879 /* Get the value from a foo(<param_value>) style call */ |
3562 IN_param_value = function_call_param_iterator.next(); |
3880 if (IN_param_value == NULL) |
3563 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3881 IN_param_value = function_call_param_iterator.next(); |
3564 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
3882 if (IN_param_value != NULL) { |
3565 |
3883 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3566 if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol)) |
3884 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
3885 } |
|
3886 |
|
3887 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol)) |
3567 { |
3888 { |
3568 |
3889 |
3569 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name; |
3890 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name; |
3570 return return_type_symbol; |
3891 return return_type_symbol; |
3571 |
3892 |
3587 |
3908 |
3588 { |
3909 { |
3589 identifier_c param_name("IN"); |
3910 identifier_c param_name("IN"); |
3590 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
3911 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
3591 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
3912 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
3592 |
3913 symbol_c *IN_type_symbol = NULL; |
3593 /* Get the value from a foo(<param_value>) style call */ |
3914 |
3594 if (IN_param_value == NULL) |
3915 /* Get the value from a foo(<param_value>) style call */ |
3595 IN_param_value = function_call_param_iterator.next(); |
3916 if (IN_param_value == NULL) |
3596 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3917 IN_param_value = function_call_param_iterator.next(); |
3597 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
3918 if (IN_param_value != NULL) { |
3598 |
3919 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3599 if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol)) |
3920 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
3921 } |
|
3922 |
|
3923 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol)) |
3600 { |
3924 { |
3601 |
3925 |
3602 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name; |
3926 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name; |
3603 return return_type_symbol; |
3927 return return_type_symbol; |
3604 |
3928 |
3620 |
3944 |
3621 { |
3945 { |
3622 identifier_c param_name("IN"); |
3946 identifier_c param_name("IN"); |
3623 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
3947 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
3624 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
3948 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
3625 |
3949 symbol_c *IN_type_symbol = NULL; |
3626 /* Get the value from a foo(<param_value>) style call */ |
3950 |
3627 if (IN_param_value == NULL) |
3951 /* Get the value from a foo(<param_value>) style call */ |
3628 IN_param_value = function_call_param_iterator.next(); |
3952 if (IN_param_value == NULL) |
3629 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3953 IN_param_value = function_call_param_iterator.next(); |
3630 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
3954 if (IN_param_value != NULL) { |
3631 |
3955 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3632 if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol)) |
3956 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
3957 } |
|
3958 |
|
3959 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol)) |
3633 { |
3960 { |
3634 |
3961 |
3635 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
3962 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
3636 return return_type_symbol; |
3963 return return_type_symbol; |
3637 |
3964 |
3653 |
3980 |
3654 { |
3981 { |
3655 identifier_c param_name("IN"); |
3982 identifier_c param_name("IN"); |
3656 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
3983 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
3657 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
3984 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
3658 |
3985 symbol_c *IN_type_symbol = NULL; |
3659 /* Get the value from a foo(<param_value>) style call */ |
3986 |
3660 if (IN_param_value == NULL) |
3987 /* Get the value from a foo(<param_value>) style call */ |
3661 IN_param_value = function_call_param_iterator.next(); |
3988 if (IN_param_value == NULL) |
3662 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3989 IN_param_value = function_call_param_iterator.next(); |
3663 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
3990 if (IN_param_value != NULL) { |
3664 |
3991 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3665 if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol)) |
3992 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
3993 } |
|
3994 |
|
3995 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol)) |
3666 { |
3996 { |
3667 |
3997 |
3668 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name; |
3998 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name; |
3669 return return_type_symbol; |
3999 return return_type_symbol; |
3670 |
4000 |
3686 |
4016 |
3687 { |
4017 { |
3688 identifier_c param_name("IN"); |
4018 identifier_c param_name("IN"); |
3689 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
4019 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
3690 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
4020 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
3691 |
4021 symbol_c *IN_type_symbol = NULL; |
3692 /* Get the value from a foo(<param_value>) style call */ |
4022 |
3693 if (IN_param_value == NULL) |
4023 /* Get the value from a foo(<param_value>) style call */ |
3694 IN_param_value = function_call_param_iterator.next(); |
4024 if (IN_param_value == NULL) |
3695 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
4025 IN_param_value = function_call_param_iterator.next(); |
3696 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
4026 if (IN_param_value != NULL) { |
3697 |
4027 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3698 if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol)) |
4028 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
4029 } |
|
4030 |
|
4031 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol)) |
3699 { |
4032 { |
3700 |
4033 |
3701 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name; |
4034 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name; |
3702 return return_type_symbol; |
4035 return return_type_symbol; |
3703 |
4036 |
3719 |
4052 |
3720 { |
4053 { |
3721 identifier_c param_name("IN"); |
4054 identifier_c param_name("IN"); |
3722 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
4055 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
3723 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
4056 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
3724 |
4057 symbol_c *IN_type_symbol = NULL; |
3725 /* Get the value from a foo(<param_value>) style call */ |
4058 |
3726 if (IN_param_value == NULL) |
4059 /* Get the value from a foo(<param_value>) style call */ |
3727 IN_param_value = function_call_param_iterator.next(); |
4060 if (IN_param_value == NULL) |
3728 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
4061 IN_param_value = function_call_param_iterator.next(); |
3729 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
4062 if (IN_param_value != NULL) { |
3730 |
4063 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3731 if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol)) |
4064 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
4065 } |
|
4066 |
|
4067 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol)) |
3732 { |
4068 { |
3733 |
4069 |
3734 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name; |
4070 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name; |
3735 return return_type_symbol; |
4071 return return_type_symbol; |
3736 |
4072 |
3752 |
4088 |
3753 { |
4089 { |
3754 identifier_c param_name("IN"); |
4090 identifier_c param_name("IN"); |
3755 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
4091 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
3756 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
4092 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
3757 |
4093 symbol_c *IN_type_symbol = NULL; |
3758 /* Get the value from a foo(<param_value>) style call */ |
4094 |
3759 if (IN_param_value == NULL) |
4095 /* Get the value from a foo(<param_value>) style call */ |
3760 IN_param_value = function_call_param_iterator.next(); |
4096 if (IN_param_value == NULL) |
3761 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
4097 IN_param_value = function_call_param_iterator.next(); |
3762 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
4098 if (IN_param_value != NULL) { |
3763 |
4099 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3764 if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol)) |
4100 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
4101 } |
|
4102 |
|
4103 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol)) |
3765 { |
4104 { |
3766 |
4105 |
3767 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name; |
4106 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name; |
3768 return return_type_symbol; |
4107 return return_type_symbol; |
3769 |
4108 |
3785 |
4124 |
3786 { |
4125 { |
3787 identifier_c param_name("IN"); |
4126 identifier_c param_name("IN"); |
3788 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
4127 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
3789 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
4128 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
3790 |
4129 symbol_c *IN_type_symbol = NULL; |
3791 /* Get the value from a foo(<param_value>) style call */ |
4130 |
3792 if (IN_param_value == NULL) |
4131 /* Get the value from a foo(<param_value>) style call */ |
3793 IN_param_value = function_call_param_iterator.next(); |
4132 if (IN_param_value == NULL) |
3794 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
4133 IN_param_value = function_call_param_iterator.next(); |
3795 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
4134 if (IN_param_value != NULL) { |
3796 |
4135 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3797 if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol)) |
4136 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
4137 } |
|
4138 |
|
4139 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol)) |
3798 { |
4140 { |
3799 |
4141 |
3800 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name; |
4142 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name; |
3801 return return_type_symbol; |
4143 return return_type_symbol; |
3802 |
4144 |
3818 |
4160 |
3819 { |
4161 { |
3820 identifier_c param_name("IN"); |
4162 identifier_c param_name("IN"); |
3821 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
4163 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
3822 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
4164 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
3823 |
4165 symbol_c *IN_type_symbol = NULL; |
3824 /* Get the value from a foo(<param_value>) style call */ |
4166 |
3825 if (IN_param_value == NULL) |
4167 /* Get the value from a foo(<param_value>) style call */ |
3826 IN_param_value = function_call_param_iterator.next(); |
4168 if (IN_param_value == NULL) |
3827 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
4169 IN_param_value = function_call_param_iterator.next(); |
3828 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
4170 if (IN_param_value != NULL) { |
3829 |
4171 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3830 if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol)) |
4172 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
4173 } |
|
4174 |
|
4175 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol)) |
3831 { |
4176 { |
3832 |
4177 |
3833 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name; |
4178 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name; |
3834 return return_type_symbol; |
4179 return return_type_symbol; |
3835 |
4180 |
3851 |
4196 |
3852 { |
4197 { |
3853 identifier_c param_name("IN"); |
4198 identifier_c param_name("IN"); |
3854 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
4199 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
3855 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
4200 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
3856 |
4201 symbol_c *IN_type_symbol = NULL; |
3857 /* Get the value from a foo(<param_value>) style call */ |
4202 |
3858 if (IN_param_value == NULL) |
4203 /* Get the value from a foo(<param_value>) style call */ |
3859 IN_param_value = function_call_param_iterator.next(); |
4204 if (IN_param_value == NULL) |
3860 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
4205 IN_param_value = function_call_param_iterator.next(); |
3861 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
4206 if (IN_param_value != NULL) { |
3862 |
4207 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3863 if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol)) |
4208 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
4209 } |
|
4210 |
|
4211 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol)) |
3864 { |
4212 { |
3865 |
4213 |
3866 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name; |
4214 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name; |
3867 return return_type_symbol; |
4215 return return_type_symbol; |
3868 |
4216 |
3884 |
4232 |
3885 { |
4233 { |
3886 identifier_c param_name("IN"); |
4234 identifier_c param_name("IN"); |
3887 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
4235 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
3888 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
4236 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
3889 |
4237 symbol_c *IN_type_symbol = NULL; |
3890 /* Get the value from a foo(<param_value>) style call */ |
4238 |
3891 if (IN_param_value == NULL) |
4239 /* Get the value from a foo(<param_value>) style call */ |
3892 IN_param_value = function_call_param_iterator.next(); |
4240 if (IN_param_value == NULL) |
3893 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
4241 IN_param_value = function_call_param_iterator.next(); |
3894 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
4242 if (IN_param_value != NULL) { |
3895 |
4243 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3896 if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol)) |
4244 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
4245 } |
|
4246 |
|
4247 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol)) |
3897 { |
4248 { |
3898 |
4249 |
3899 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name; |
4250 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name; |
3900 return return_type_symbol; |
4251 return return_type_symbol; |
3901 |
4252 |
3917 |
4268 |
3918 { |
4269 { |
3919 identifier_c param_name("IN"); |
4270 identifier_c param_name("IN"); |
3920 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
4271 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
3921 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
4272 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
3922 |
4273 symbol_c *IN_type_symbol = NULL; |
3923 /* Get the value from a foo(<param_value>) style call */ |
4274 |
3924 if (IN_param_value == NULL) |
4275 /* Get the value from a foo(<param_value>) style call */ |
3925 IN_param_value = function_call_param_iterator.next(); |
4276 if (IN_param_value == NULL) |
3926 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
4277 IN_param_value = function_call_param_iterator.next(); |
3927 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
4278 if (IN_param_value != NULL) { |
3928 |
4279 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3929 if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol)) |
4280 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
4281 } |
|
4282 |
|
4283 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol)) |
3930 { |
4284 { |
3931 |
4285 |
3932 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
4286 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
3933 return return_type_symbol; |
4287 return return_type_symbol; |
3934 |
4288 |
3950 |
4304 |
3951 { |
4305 { |
3952 identifier_c param_name("IN"); |
4306 identifier_c param_name("IN"); |
3953 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
4307 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
3954 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
4308 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
3955 |
4309 symbol_c *IN_type_symbol = NULL; |
3956 /* Get the value from a foo(<param_value>) style call */ |
4310 |
3957 if (IN_param_value == NULL) |
4311 /* Get the value from a foo(<param_value>) style call */ |
3958 IN_param_value = function_call_param_iterator.next(); |
4312 if (IN_param_value == NULL) |
3959 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
4313 IN_param_value = function_call_param_iterator.next(); |
3960 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
4314 if (IN_param_value != NULL) { |
3961 |
4315 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3962 if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol)) |
4316 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
4317 } |
|
4318 |
|
4319 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol)) |
3963 { |
4320 { |
3964 |
4321 |
3965 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name; |
4322 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name; |
3966 return return_type_symbol; |
4323 return return_type_symbol; |
3967 |
4324 |
3983 |
4340 |
3984 { |
4341 { |
3985 identifier_c param_name("IN"); |
4342 identifier_c param_name("IN"); |
3986 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
4343 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
3987 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
4344 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
3988 |
4345 symbol_c *IN_type_symbol = NULL; |
3989 /* Get the value from a foo(<param_value>) style call */ |
4346 |
3990 if (IN_param_value == NULL) |
4347 /* Get the value from a foo(<param_value>) style call */ |
3991 IN_param_value = function_call_param_iterator.next(); |
4348 if (IN_param_value == NULL) |
3992 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
4349 IN_param_value = function_call_param_iterator.next(); |
3993 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
4350 if (IN_param_value != NULL) { |
3994 |
4351 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
3995 if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol)) |
4352 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
4353 } |
|
4354 |
|
4355 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol)) |
3996 { |
4356 { |
3997 |
4357 |
3998 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name; |
4358 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name; |
3999 return return_type_symbol; |
4359 return return_type_symbol; |
4000 |
4360 |
4016 |
4376 |
4017 { |
4377 { |
4018 identifier_c param_name("IN"); |
4378 identifier_c param_name("IN"); |
4019 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
4379 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
4020 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
4380 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
4021 |
4381 symbol_c *IN_type_symbol = NULL; |
4022 /* Get the value from a foo(<param_value>) style call */ |
4382 |
4023 if (IN_param_value == NULL) |
4383 /* Get the value from a foo(<param_value>) style call */ |
4024 IN_param_value = function_call_param_iterator.next(); |
4384 if (IN_param_value == NULL) |
4025 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
4385 IN_param_value = function_call_param_iterator.next(); |
4026 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
4386 if (IN_param_value != NULL) { |
4027 |
4387 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
4028 if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol)) |
4388 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
4389 } |
|
4390 |
|
4391 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol)) |
4029 { |
4392 { |
4030 |
4393 |
4031 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name; |
4394 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name; |
4032 return return_type_symbol; |
4395 return return_type_symbol; |
4033 |
4396 |
4049 |
4412 |
4050 { |
4413 { |
4051 identifier_c param_name("IN"); |
4414 identifier_c param_name("IN"); |
4052 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
4415 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
4053 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
4416 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
4054 |
4417 symbol_c *IN_type_symbol = NULL; |
4055 /* Get the value from a foo(<param_value>) style call */ |
4418 |
4056 if (IN_param_value == NULL) |
4419 /* Get the value from a foo(<param_value>) style call */ |
4057 IN_param_value = function_call_param_iterator.next(); |
4420 if (IN_param_value == NULL) |
4058 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
4421 IN_param_value = function_call_param_iterator.next(); |
4059 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
4422 if (IN_param_value != NULL) { |
4060 |
4423 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
4061 if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol)) |
4424 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
4425 } |
|
4426 |
|
4427 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol)) |
4062 { |
4428 { |
4063 |
4429 |
4064 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name; |
4430 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name; |
4065 return return_type_symbol; |
4431 return return_type_symbol; |
4066 |
4432 |
4082 |
4448 |
4083 { |
4449 { |
4084 identifier_c param_name("IN"); |
4450 identifier_c param_name("IN"); |
4085 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
4451 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
4086 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
4452 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
4087 |
4453 symbol_c *IN_type_symbol = NULL; |
4088 /* Get the value from a foo(<param_value>) style call */ |
4454 |
4089 if (IN_param_value == NULL) |
4455 /* Get the value from a foo(<param_value>) style call */ |
4090 IN_param_value = function_call_param_iterator.next(); |
4456 if (IN_param_value == NULL) |
4091 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
4457 IN_param_value = function_call_param_iterator.next(); |
4092 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
4458 if (IN_param_value != NULL) { |
4093 |
4459 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
4094 if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol)) |
4460 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
4461 } |
|
4462 |
|
4463 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol)) |
4095 { |
4464 { |
4096 |
4465 |
4097 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name; |
4466 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name; |
4098 return return_type_symbol; |
4467 return return_type_symbol; |
4099 |
4468 |
4115 |
4484 |
4116 { |
4485 { |
4117 identifier_c param_name("IN"); |
4486 identifier_c param_name("IN"); |
4118 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
4487 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
4119 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
4488 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
4120 |
4489 symbol_c *IN_type_symbol = NULL; |
4121 /* Get the value from a foo(<param_value>) style call */ |
4490 |
4122 if (IN_param_value == NULL) |
4491 /* Get the value from a foo(<param_value>) style call */ |
4123 IN_param_value = function_call_param_iterator.next(); |
4492 if (IN_param_value == NULL) |
4124 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
4493 IN_param_value = function_call_param_iterator.next(); |
4125 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
4494 if (IN_param_value != NULL) { |
4126 |
4495 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
4127 if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol)) |
4496 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
4497 } |
|
4498 |
|
4499 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol)) |
4128 { |
4500 { |
4129 |
4501 |
4130 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name; |
4502 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name; |
4131 return return_type_symbol; |
4503 return return_type_symbol; |
4132 |
4504 |
4148 |
4520 |
4149 { |
4521 { |
4150 identifier_c param_name("IN"); |
4522 identifier_c param_name("IN"); |
4151 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
4523 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
4152 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
4524 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
4153 |
4525 symbol_c *IN_type_symbol = NULL; |
4154 /* Get the value from a foo(<param_value>) style call */ |
4526 |
4155 if (IN_param_value == NULL) |
4527 /* Get the value from a foo(<param_value>) style call */ |
4156 IN_param_value = function_call_param_iterator.next(); |
4528 if (IN_param_value == NULL) |
4157 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
4529 IN_param_value = function_call_param_iterator.next(); |
4158 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
4530 if (IN_param_value != NULL) { |
4159 |
4531 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
4160 if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol)) |
4532 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
4533 } |
|
4534 |
|
4535 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol)) |
4161 { |
4536 { |
4162 |
4537 |
4163 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name; |
4538 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name; |
4164 return return_type_symbol; |
4539 return return_type_symbol; |
4165 |
4540 |
4181 |
4556 |
4182 { |
4557 { |
4183 identifier_c param_name("IN"); |
4558 identifier_c param_name("IN"); |
4184 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
4559 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
4185 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
4560 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
4186 |
4561 symbol_c *IN_type_symbol = NULL; |
4187 /* Get the value from a foo(<param_value>) style call */ |
4562 |
4188 if (IN_param_value == NULL) |
4563 /* Get the value from a foo(<param_value>) style call */ |
4189 IN_param_value = function_call_param_iterator.next(); |
4564 if (IN_param_value == NULL) |
4190 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
4565 IN_param_value = function_call_param_iterator.next(); |
4191 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
4566 if (IN_param_value != NULL) { |
4192 |
4567 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
4193 if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol)) |
4568 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
4569 } |
|
4570 |
|
4571 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol)) |
4194 { |
4572 { |
4195 |
4573 |
4196 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name; |
4574 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name; |
4197 return return_type_symbol; |
4575 return return_type_symbol; |
4198 |
4576 |
4214 |
4592 |
4215 { |
4593 { |
4216 identifier_c param_name("IN"); |
4594 identifier_c param_name("IN"); |
4217 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
4595 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
4218 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
4596 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
4219 |
4597 symbol_c *IN_type_symbol = NULL; |
4220 /* Get the value from a foo(<param_value>) style call */ |
4598 |
4221 if (IN_param_value == NULL) |
4599 /* Get the value from a foo(<param_value>) style call */ |
4222 IN_param_value = function_call_param_iterator.next(); |
4600 if (IN_param_value == NULL) |
4223 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
4601 IN_param_value = function_call_param_iterator.next(); |
4224 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
4602 if (IN_param_value != NULL) { |
4225 |
4603 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
4226 if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol)) |
4604 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
4605 } |
|
4606 |
|
4607 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol)) |
4227 { |
4608 { |
4228 |
4609 |
4229 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name; |
4610 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name; |
4230 return return_type_symbol; |
4611 return return_type_symbol; |
4231 |
4612 |
4247 |
4628 |
4248 { |
4629 { |
4249 identifier_c param_name("IN"); |
4630 identifier_c param_name("IN"); |
4250 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
4631 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
4251 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
4632 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
4252 |
4633 symbol_c *IN_type_symbol = NULL; |
4253 /* Get the value from a foo(<param_value>) style call */ |
4634 |
4254 if (IN_param_value == NULL) |
4635 /* Get the value from a foo(<param_value>) style call */ |
4255 IN_param_value = function_call_param_iterator.next(); |
4636 if (IN_param_value == NULL) |
4256 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
4637 IN_param_value = function_call_param_iterator.next(); |
4257 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
4638 if (IN_param_value != NULL) { |
4258 |
4639 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
4259 if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol)) |
4640 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
4641 } |
|
4642 |
|
4643 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol)) |
4260 { |
4644 { |
4261 |
4645 |
4262 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name; |
4646 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name; |
4263 return return_type_symbol; |
4647 return return_type_symbol; |
4264 |
4648 |
4280 |
4664 |
4281 { |
4665 { |
4282 identifier_c param_name("IN"); |
4666 identifier_c param_name("IN"); |
4283 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
4667 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
4284 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
4668 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
4285 |
4669 symbol_c *IN_type_symbol = NULL; |
4286 /* Get the value from a foo(<param_value>) style call */ |
4670 |
4287 if (IN_param_value == NULL) |
4671 /* Get the value from a foo(<param_value>) style call */ |
4288 IN_param_value = function_call_param_iterator.next(); |
4672 if (IN_param_value == NULL) |
4289 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
4673 IN_param_value = function_call_param_iterator.next(); |
4290 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
4674 if (IN_param_value != NULL) { |
4291 |
4675 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
4292 if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol)) |
4676 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
4677 } |
|
4678 |
|
4679 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol)) |
4293 { |
4680 { |
4294 |
4681 |
4295 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name; |
4682 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name; |
4296 return return_type_symbol; |
4683 return return_type_symbol; |
4297 |
4684 |
4313 |
4700 |
4314 { |
4701 { |
4315 identifier_c param_name("IN"); |
4702 identifier_c param_name("IN"); |
4316 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
4703 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
4317 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
4704 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
4318 |
4705 symbol_c *IN_type_symbol = NULL; |
4319 /* Get the value from a foo(<param_value>) style call */ |
4706 |
4320 if (IN_param_value == NULL) |
4707 /* Get the value from a foo(<param_value>) style call */ |
4321 IN_param_value = function_call_param_iterator.next(); |
4708 if (IN_param_value == NULL) |
4322 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
4709 IN_param_value = function_call_param_iterator.next(); |
4323 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
4710 if (IN_param_value != NULL) { |
4324 |
4711 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
4325 if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol)) |
4712 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
4713 } |
|
4714 |
|
4715 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol)) |
4326 { |
4716 { |
4327 |
4717 |
4328 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name; |
4718 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name; |
4329 return return_type_symbol; |
4719 return return_type_symbol; |
4330 |
4720 |
4346 |
4736 |
4347 { |
4737 { |
4348 identifier_c param_name("IN"); |
4738 identifier_c param_name("IN"); |
4349 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
4739 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
4350 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
4740 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
4351 |
4741 symbol_c *IN_type_symbol = NULL; |
4352 /* Get the value from a foo(<param_value>) style call */ |
4742 |
4353 if (IN_param_value == NULL) |
4743 /* Get the value from a foo(<param_value>) style call */ |
4354 IN_param_value = function_call_param_iterator.next(); |
4744 if (IN_param_value == NULL) |
4355 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
4745 IN_param_value = function_call_param_iterator.next(); |
4356 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
4746 if (IN_param_value != NULL) { |
4357 |
4747 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
4358 if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol)) |
4748 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
4749 } |
|
4750 |
|
4751 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol)) |
4359 { |
4752 { |
4360 |
4753 |
4361 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name; |
4754 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name; |
4362 return return_type_symbol; |
4755 return return_type_symbol; |
4363 |
4756 |
4379 |
4772 |
4380 { |
4773 { |
4381 identifier_c param_name("IN"); |
4774 identifier_c param_name("IN"); |
4382 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
4775 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
4383 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
4776 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
4384 |
4777 symbol_c *IN_type_symbol = NULL; |
4385 /* Get the value from a foo(<param_value>) style call */ |
4778 |
4386 if (IN_param_value == NULL) |
4779 /* Get the value from a foo(<param_value>) style call */ |
4387 IN_param_value = function_call_param_iterator.next(); |
4780 if (IN_param_value == NULL) |
4388 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
4781 IN_param_value = function_call_param_iterator.next(); |
4389 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
4782 if (IN_param_value != NULL) { |
4390 |
4783 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
4391 if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol)) |
4784 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
4785 } |
|
4786 |
|
4787 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol)) |
4392 { |
4788 { |
4393 |
4789 |
4394 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name; |
4790 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name; |
4395 return return_type_symbol; |
4791 return return_type_symbol; |
4396 |
4792 |
4412 |
4808 |
4413 { |
4809 { |
4414 identifier_c param_name("IN"); |
4810 identifier_c param_name("IN"); |
4415 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
4811 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
4416 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
4812 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
4417 |
4813 symbol_c *IN_type_symbol = NULL; |
4418 /* Get the value from a foo(<param_value>) style call */ |
4814 |
4419 if (IN_param_value == NULL) |
4815 /* Get the value from a foo(<param_value>) style call */ |
4420 IN_param_value = function_call_param_iterator.next(); |
4816 if (IN_param_value == NULL) |
4421 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
4817 IN_param_value = function_call_param_iterator.next(); |
4422 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
4818 if (IN_param_value != NULL) { |
4423 |
4819 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
4424 if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol)) |
4820 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
4821 } |
|
4822 |
|
4823 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol)) |
4425 { |
4824 { |
4426 |
4825 |
4427 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
4826 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
4428 return return_type_symbol; |
4827 return return_type_symbol; |
4429 |
4828 |
4445 |
4844 |
4446 { |
4845 { |
4447 identifier_c param_name("IN"); |
4846 identifier_c param_name("IN"); |
4448 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
4847 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
4449 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
4848 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
4450 |
4849 symbol_c *IN_type_symbol = NULL; |
4451 /* Get the value from a foo(<param_value>) style call */ |
4850 |
4452 if (IN_param_value == NULL) |
4851 /* Get the value from a foo(<param_value>) style call */ |
4453 IN_param_value = function_call_param_iterator.next(); |
4852 if (IN_param_value == NULL) |
4454 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
4853 IN_param_value = function_call_param_iterator.next(); |
4455 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
4854 if (IN_param_value != NULL) { |
4456 |
4855 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
4457 if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol)) |
4856 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
4857 } |
|
4858 |
|
4859 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol)) |
4458 { |
4860 { |
4459 |
4861 |
4460 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name; |
4862 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name; |
4461 return return_type_symbol; |
4863 return return_type_symbol; |
4462 |
4864 |
4478 |
4880 |
4479 { |
4881 { |
4480 identifier_c param_name("IN"); |
4882 identifier_c param_name("IN"); |
4481 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
4883 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
4482 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
4884 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
4483 |
4885 symbol_c *IN_type_symbol = NULL; |
4484 /* Get the value from a foo(<param_value>) style call */ |
4886 |
4485 if (IN_param_value == NULL) |
4887 /* Get the value from a foo(<param_value>) style call */ |
4486 IN_param_value = function_call_param_iterator.next(); |
4888 if (IN_param_value == NULL) |
4487 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
4889 IN_param_value = function_call_param_iterator.next(); |
4488 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
4890 if (IN_param_value != NULL) { |
4489 |
4891 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
4490 if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol)) |
4892 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
4893 } |
|
4894 |
|
4895 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol)) |
4491 { |
4896 { |
4492 |
4897 |
4493 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name; |
4898 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name; |
4494 return return_type_symbol; |
4899 return return_type_symbol; |
4495 |
4900 |
4511 |
4916 |
4512 { |
4917 { |
4513 identifier_c param_name("IN"); |
4918 identifier_c param_name("IN"); |
4514 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
4919 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
4515 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
4920 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
4516 |
4921 symbol_c *IN_type_symbol = NULL; |
4517 /* Get the value from a foo(<param_value>) style call */ |
4922 |
4518 if (IN_param_value == NULL) |
4923 /* Get the value from a foo(<param_value>) style call */ |
4519 IN_param_value = function_call_param_iterator.next(); |
4924 if (IN_param_value == NULL) |
4520 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
4925 IN_param_value = function_call_param_iterator.next(); |
4521 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
4926 if (IN_param_value != NULL) { |
4522 |
4927 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
4523 if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol)) |
4928 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
4929 } |
|
4930 |
|
4931 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol)) |
4524 { |
4932 { |
4525 |
4933 |
4526 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name; |
4934 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name; |
4527 return return_type_symbol; |
4935 return return_type_symbol; |
4528 |
4936 |
4544 |
4952 |
4545 { |
4953 { |
4546 identifier_c param_name("IN"); |
4954 identifier_c param_name("IN"); |
4547 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
4955 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
4548 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
4956 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
4549 |
4957 symbol_c *IN_type_symbol = NULL; |
4550 /* Get the value from a foo(<param_value>) style call */ |
4958 |
4551 if (IN_param_value == NULL) |
4959 /* Get the value from a foo(<param_value>) style call */ |
4552 IN_param_value = function_call_param_iterator.next(); |
4960 if (IN_param_value == NULL) |
4553 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
4961 IN_param_value = function_call_param_iterator.next(); |
4554 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
4962 if (IN_param_value != NULL) { |
4555 |
4963 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
4556 if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol)) |
4964 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
4965 } |
|
4966 |
|
4967 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol)) |
4557 { |
4968 { |
4558 |
4969 |
4559 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name; |
4970 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name; |
4560 return return_type_symbol; |
4971 return return_type_symbol; |
4561 |
4972 |
4577 |
4988 |
4578 { |
4989 { |
4579 identifier_c param_name("IN"); |
4990 identifier_c param_name("IN"); |
4580 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
4991 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
4581 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
4992 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
4582 |
4993 symbol_c *IN_type_symbol = NULL; |
4583 /* Get the value from a foo(<param_value>) style call */ |
4994 |
4584 if (IN_param_value == NULL) |
4995 /* Get the value from a foo(<param_value>) style call */ |
4585 IN_param_value = function_call_param_iterator.next(); |
4996 if (IN_param_value == NULL) |
4586 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
4997 IN_param_value = function_call_param_iterator.next(); |
4587 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
4998 if (IN_param_value != NULL) { |
4588 |
4999 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
4589 if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol)) |
5000 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
5001 } |
|
5002 |
|
5003 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol)) |
4590 { |
5004 { |
4591 |
5005 |
4592 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name; |
5006 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name; |
4593 return return_type_symbol; |
5007 return return_type_symbol; |
4594 |
5008 |
4610 |
5024 |
4611 { |
5025 { |
4612 identifier_c param_name("IN"); |
5026 identifier_c param_name("IN"); |
4613 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
5027 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
4614 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
5028 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
4615 |
5029 symbol_c *IN_type_symbol = NULL; |
4616 /* Get the value from a foo(<param_value>) style call */ |
5030 |
4617 if (IN_param_value == NULL) |
5031 /* Get the value from a foo(<param_value>) style call */ |
4618 IN_param_value = function_call_param_iterator.next(); |
5032 if (IN_param_value == NULL) |
4619 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
5033 IN_param_value = function_call_param_iterator.next(); |
4620 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
5034 if (IN_param_value != NULL) { |
4621 |
5035 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
4622 if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol)) |
5036 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
5037 } |
|
5038 |
|
5039 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol)) |
4623 { |
5040 { |
4624 |
5041 |
4625 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name; |
5042 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name; |
4626 return return_type_symbol; |
5043 return return_type_symbol; |
4627 |
5044 |
4643 |
5060 |
4644 { |
5061 { |
4645 identifier_c param_name("IN"); |
5062 identifier_c param_name("IN"); |
4646 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
5063 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
4647 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
5064 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
4648 |
5065 symbol_c *IN_type_symbol = NULL; |
4649 /* Get the value from a foo(<param_value>) style call */ |
5066 |
4650 if (IN_param_value == NULL) |
5067 /* Get the value from a foo(<param_value>) style call */ |
4651 IN_param_value = function_call_param_iterator.next(); |
5068 if (IN_param_value == NULL) |
4652 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
5069 IN_param_value = function_call_param_iterator.next(); |
4653 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
5070 if (IN_param_value != NULL) { |
4654 |
5071 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
4655 if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol)) |
5072 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
5073 } |
|
5074 |
|
5075 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol)) |
4656 { |
5076 { |
4657 |
5077 |
4658 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name; |
5078 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name; |
4659 return return_type_symbol; |
5079 return return_type_symbol; |
4660 |
5080 |
4676 |
5096 |
4677 { |
5097 { |
4678 identifier_c param_name("IN"); |
5098 identifier_c param_name("IN"); |
4679 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
5099 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
4680 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
5100 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
4681 |
5101 symbol_c *IN_type_symbol = NULL; |
4682 /* Get the value from a foo(<param_value>) style call */ |
5102 |
4683 if (IN_param_value == NULL) |
5103 /* Get the value from a foo(<param_value>) style call */ |
4684 IN_param_value = function_call_param_iterator.next(); |
5104 if (IN_param_value == NULL) |
4685 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
5105 IN_param_value = function_call_param_iterator.next(); |
4686 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
5106 if (IN_param_value != NULL) { |
4687 |
5107 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
4688 if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol)) |
5108 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
5109 } |
|
5110 |
|
5111 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol)) |
4689 { |
5112 { |
4690 |
5113 |
4691 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name; |
5114 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name; |
4692 return return_type_symbol; |
5115 return return_type_symbol; |
4693 |
5116 |
4709 |
5132 |
4710 { |
5133 { |
4711 identifier_c param_name("IN"); |
5134 identifier_c param_name("IN"); |
4712 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
5135 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
4713 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
5136 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
4714 |
5137 symbol_c *IN_type_symbol = NULL; |
4715 /* Get the value from a foo(<param_value>) style call */ |
5138 |
4716 if (IN_param_value == NULL) |
5139 /* Get the value from a foo(<param_value>) style call */ |
4717 IN_param_value = function_call_param_iterator.next(); |
5140 if (IN_param_value == NULL) |
4718 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
5141 IN_param_value = function_call_param_iterator.next(); |
4719 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
5142 if (IN_param_value != NULL) { |
4720 |
5143 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
4721 if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol)) |
5144 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
5145 } |
|
5146 |
|
5147 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol)) |
4722 { |
5148 { |
4723 |
5149 |
4724 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name; |
5150 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name; |
4725 return return_type_symbol; |
5151 return return_type_symbol; |
4726 |
5152 |
4742 |
5168 |
4743 { |
5169 { |
4744 identifier_c param_name("IN"); |
5170 identifier_c param_name("IN"); |
4745 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
5171 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
4746 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
5172 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
4747 |
5173 symbol_c *IN_type_symbol = NULL; |
4748 /* Get the value from a foo(<param_value>) style call */ |
5174 |
4749 if (IN_param_value == NULL) |
5175 /* Get the value from a foo(<param_value>) style call */ |
4750 IN_param_value = function_call_param_iterator.next(); |
5176 if (IN_param_value == NULL) |
4751 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
5177 IN_param_value = function_call_param_iterator.next(); |
4752 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
5178 if (IN_param_value != NULL) { |
4753 |
5179 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
4754 if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol)) |
5180 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
5181 } |
|
5182 |
|
5183 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol)) |
4755 { |
5184 { |
4756 |
5185 |
4757 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name; |
5186 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name; |
4758 return return_type_symbol; |
5187 return return_type_symbol; |
4759 |
5188 |
4775 |
5204 |
4776 { |
5205 { |
4777 identifier_c param_name("IN"); |
5206 identifier_c param_name("IN"); |
4778 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
5207 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
4779 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
5208 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
4780 |
5209 symbol_c *IN_type_symbol = NULL; |
4781 /* Get the value from a foo(<param_value>) style call */ |
5210 |
4782 if (IN_param_value == NULL) |
5211 /* Get the value from a foo(<param_value>) style call */ |
4783 IN_param_value = function_call_param_iterator.next(); |
5212 if (IN_param_value == NULL) |
4784 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
5213 IN_param_value = function_call_param_iterator.next(); |
4785 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
5214 if (IN_param_value != NULL) { |
4786 |
5215 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
4787 if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol)) |
5216 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
5217 } |
|
5218 |
|
5219 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol)) |
4788 { |
5220 { |
4789 |
5221 |
4790 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name; |
5222 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name; |
4791 return return_type_symbol; |
5223 return return_type_symbol; |
4792 |
5224 |
4808 |
5240 |
4809 { |
5241 { |
4810 identifier_c param_name("IN"); |
5242 identifier_c param_name("IN"); |
4811 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
5243 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
4812 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
5244 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
4813 |
5245 symbol_c *IN_type_symbol = NULL; |
4814 /* Get the value from a foo(<param_value>) style call */ |
5246 |
4815 if (IN_param_value == NULL) |
5247 /* Get the value from a foo(<param_value>) style call */ |
4816 IN_param_value = function_call_param_iterator.next(); |
5248 if (IN_param_value == NULL) |
4817 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
5249 IN_param_value = function_call_param_iterator.next(); |
4818 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
5250 if (IN_param_value != NULL) { |
4819 |
5251 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
4820 if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol)) |
5252 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
5253 } |
|
5254 |
|
5255 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol)) |
4821 { |
5256 { |
4822 |
5257 |
4823 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name; |
5258 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name; |
4824 return return_type_symbol; |
5259 return return_type_symbol; |
4825 |
5260 |
4841 |
5276 |
4842 { |
5277 { |
4843 identifier_c param_name("IN"); |
5278 identifier_c param_name("IN"); |
4844 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
5279 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
4845 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
5280 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
4846 |
5281 symbol_c *IN_type_symbol = NULL; |
4847 /* Get the value from a foo(<param_value>) style call */ |
5282 |
4848 if (IN_param_value == NULL) |
5283 /* Get the value from a foo(<param_value>) style call */ |
4849 IN_param_value = function_call_param_iterator.next(); |
5284 if (IN_param_value == NULL) |
4850 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
5285 IN_param_value = function_call_param_iterator.next(); |
4851 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
5286 if (IN_param_value != NULL) { |
4852 |
5287 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
4853 if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol)) |
5288 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
5289 } |
|
5290 |
|
5291 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol)) |
4854 { |
5292 { |
4855 |
5293 |
4856 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name; |
5294 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name; |
4857 return return_type_symbol; |
5295 return return_type_symbol; |
4858 |
5296 |
4874 |
5312 |
4875 { |
5313 { |
4876 identifier_c param_name("IN"); |
5314 identifier_c param_name("IN"); |
4877 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
5315 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
4878 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
5316 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
4879 |
5317 symbol_c *IN_type_symbol = NULL; |
4880 /* Get the value from a foo(<param_value>) style call */ |
5318 |
4881 if (IN_param_value == NULL) |
5319 /* Get the value from a foo(<param_value>) style call */ |
4882 IN_param_value = function_call_param_iterator.next(); |
5320 if (IN_param_value == NULL) |
4883 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
5321 IN_param_value = function_call_param_iterator.next(); |
4884 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
5322 if (IN_param_value != NULL) { |
4885 |
5323 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
4886 if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol)) |
5324 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
5325 } |
|
5326 |
|
5327 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol)) |
4887 { |
5328 { |
4888 |
5329 |
4889 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name; |
5330 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name; |
4890 return return_type_symbol; |
5331 return return_type_symbol; |
4891 |
5332 |
4907 |
5348 |
4908 { |
5349 { |
4909 identifier_c param_name("IN"); |
5350 identifier_c param_name("IN"); |
4910 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
5351 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
4911 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
5352 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
4912 |
5353 symbol_c *IN_type_symbol = NULL; |
4913 /* Get the value from a foo(<param_value>) style call */ |
5354 |
4914 if (IN_param_value == NULL) |
5355 /* Get the value from a foo(<param_value>) style call */ |
4915 IN_param_value = function_call_param_iterator.next(); |
5356 if (IN_param_value == NULL) |
4916 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
5357 IN_param_value = function_call_param_iterator.next(); |
4917 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
5358 if (IN_param_value != NULL) { |
4918 |
5359 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
4919 if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol)) |
5360 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
5361 } |
|
5362 |
|
5363 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol)) |
4920 { |
5364 { |
4921 |
5365 |
4922 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name; |
5366 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name; |
4923 return return_type_symbol; |
5367 return return_type_symbol; |
4924 |
5368 |
4940 |
5384 |
4941 { |
5385 { |
4942 identifier_c param_name("IN"); |
5386 identifier_c param_name("IN"); |
4943 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
5387 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
4944 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
5388 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
4945 |
5389 symbol_c *IN_type_symbol = NULL; |
4946 /* Get the value from a foo(<param_value>) style call */ |
5390 |
4947 if (IN_param_value == NULL) |
5391 /* Get the value from a foo(<param_value>) style call */ |
4948 IN_param_value = function_call_param_iterator.next(); |
5392 if (IN_param_value == NULL) |
4949 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
5393 IN_param_value = function_call_param_iterator.next(); |
4950 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
5394 if (IN_param_value != NULL) { |
4951 |
5395 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
4952 if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol)) |
5396 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
5397 } |
|
5398 |
|
5399 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol)) |
4953 { |
5400 { |
4954 |
5401 |
4955 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name; |
5402 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name; |
4956 return return_type_symbol; |
5403 return return_type_symbol; |
4957 |
5404 |
4973 |
5420 |
4974 { |
5421 { |
4975 identifier_c param_name("IN"); |
5422 identifier_c param_name("IN"); |
4976 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
5423 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
4977 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
5424 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
4978 |
5425 symbol_c *IN_type_symbol = NULL; |
4979 /* Get the value from a foo(<param_value>) style call */ |
5426 |
4980 if (IN_param_value == NULL) |
5427 /* Get the value from a foo(<param_value>) style call */ |
4981 IN_param_value = function_call_param_iterator.next(); |
5428 if (IN_param_value == NULL) |
4982 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
5429 IN_param_value = function_call_param_iterator.next(); |
4983 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
5430 if (IN_param_value != NULL) { |
4984 |
5431 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
4985 if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol)) |
5432 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
5433 } |
|
5434 |
|
5435 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol)) |
4986 { |
5436 { |
4987 |
5437 |
4988 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
5438 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
4989 return return_type_symbol; |
5439 return return_type_symbol; |
4990 |
5440 |
5006 |
5456 |
5007 { |
5457 { |
5008 identifier_c param_name("IN"); |
5458 identifier_c param_name("IN"); |
5009 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
5459 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
5010 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
5460 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
5011 |
5461 symbol_c *IN_type_symbol = NULL; |
5012 /* Get the value from a foo(<param_value>) style call */ |
5462 |
5013 if (IN_param_value == NULL) |
5463 /* Get the value from a foo(<param_value>) style call */ |
5014 IN_param_value = function_call_param_iterator.next(); |
5464 if (IN_param_value == NULL) |
5015 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
5465 IN_param_value = function_call_param_iterator.next(); |
5016 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
5466 if (IN_param_value != NULL) { |
5017 |
5467 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
5018 if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol)) |
5468 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
5469 } |
|
5470 |
|
5471 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol)) |
5019 { |
5472 { |
5020 |
5473 |
5021 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name; |
5474 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name; |
5022 return return_type_symbol; |
5475 return return_type_symbol; |
5023 |
5476 |
5039 |
5492 |
5040 { |
5493 { |
5041 identifier_c param_name("IN"); |
5494 identifier_c param_name("IN"); |
5042 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
5495 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
5043 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
5496 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
5044 |
5497 symbol_c *IN_type_symbol = NULL; |
5045 /* Get the value from a foo(<param_value>) style call */ |
5498 |
5046 if (IN_param_value == NULL) |
5499 /* Get the value from a foo(<param_value>) style call */ |
5047 IN_param_value = function_call_param_iterator.next(); |
5500 if (IN_param_value == NULL) |
5048 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
5501 IN_param_value = function_call_param_iterator.next(); |
5049 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
5502 if (IN_param_value != NULL) { |
5050 |
5503 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
5051 if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol)) |
5504 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
5505 } |
|
5506 |
|
5507 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol)) |
5052 { |
5508 { |
5053 |
5509 |
5054 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name; |
5510 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name; |
5055 return return_type_symbol; |
5511 return return_type_symbol; |
5056 |
5512 |
5072 |
5528 |
5073 { |
5529 { |
5074 identifier_c param_name("IN"); |
5530 identifier_c param_name("IN"); |
5075 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
5531 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
5076 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
5532 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
5077 |
5533 symbol_c *IN_type_symbol = NULL; |
5078 /* Get the value from a foo(<param_value>) style call */ |
5534 |
5079 if (IN_param_value == NULL) |
5535 /* Get the value from a foo(<param_value>) style call */ |
5080 IN_param_value = function_call_param_iterator.next(); |
5536 if (IN_param_value == NULL) |
5081 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
5537 IN_param_value = function_call_param_iterator.next(); |
5082 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
5538 if (IN_param_value != NULL) { |
5083 |
5539 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
5084 if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol)) |
5540 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
5541 } |
|
5542 |
|
5543 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol)) |
5085 { |
5544 { |
5086 |
5545 |
5087 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name; |
5546 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name; |
5088 return return_type_symbol; |
5547 return return_type_symbol; |
5089 |
5548 |
5105 |
5564 |
5106 { |
5565 { |
5107 identifier_c param_name("IN"); |
5566 identifier_c param_name("IN"); |
5108 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
5567 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
5109 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
5568 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
5110 |
5569 symbol_c *IN_type_symbol = NULL; |
5111 /* Get the value from a foo(<param_value>) style call */ |
5570 |
5112 if (IN_param_value == NULL) |
5571 /* Get the value from a foo(<param_value>) style call */ |
5113 IN_param_value = function_call_param_iterator.next(); |
5572 if (IN_param_value == NULL) |
5114 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
5573 IN_param_value = function_call_param_iterator.next(); |
5115 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
5574 if (IN_param_value != NULL) { |
5116 |
5575 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
5117 if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol)) |
5576 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
5577 } |
|
5578 |
|
5579 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol)) |
5118 { |
5580 { |
5119 |
5581 |
5120 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name; |
5582 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name; |
5121 return return_type_symbol; |
5583 return return_type_symbol; |
5122 |
5584 |
5138 |
5600 |
5139 { |
5601 { |
5140 identifier_c param_name("IN"); |
5602 identifier_c param_name("IN"); |
5141 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
5603 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
5142 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
5604 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
5143 |
5605 symbol_c *IN_type_symbol = NULL; |
5144 /* Get the value from a foo(<param_value>) style call */ |
5606 |
5145 if (IN_param_value == NULL) |
5607 /* Get the value from a foo(<param_value>) style call */ |
5146 IN_param_value = function_call_param_iterator.next(); |
5608 if (IN_param_value == NULL) |
5147 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
5609 IN_param_value = function_call_param_iterator.next(); |
5148 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
5610 if (IN_param_value != NULL) { |
5149 |
5611 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
5150 if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol)) |
5612 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
5613 } |
|
5614 |
|
5615 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol)) |
5151 { |
5616 { |
5152 |
5617 |
5153 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name; |
5618 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name; |
5154 return return_type_symbol; |
5619 return return_type_symbol; |
5155 |
5620 |
5171 |
5636 |
5172 { |
5637 { |
5173 identifier_c param_name("IN"); |
5638 identifier_c param_name("IN"); |
5174 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
5639 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
5175 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
5640 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
5176 |
5641 symbol_c *IN_type_symbol = NULL; |
5177 /* Get the value from a foo(<param_value>) style call */ |
5642 |
5178 if (IN_param_value == NULL) |
5643 /* Get the value from a foo(<param_value>) style call */ |
5179 IN_param_value = function_call_param_iterator.next(); |
5644 if (IN_param_value == NULL) |
5180 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
5645 IN_param_value = function_call_param_iterator.next(); |
5181 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
5646 if (IN_param_value != NULL) { |
5182 |
5647 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
5183 if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol)) |
5648 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
5649 } |
|
5650 |
|
5651 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol)) |
5184 { |
5652 { |
5185 |
5653 |
5186 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name; |
5654 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name; |
5187 return return_type_symbol; |
5655 return return_type_symbol; |
5188 |
5656 |
5204 |
5672 |
5205 { |
5673 { |
5206 identifier_c param_name("IN"); |
5674 identifier_c param_name("IN"); |
5207 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
5675 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
5208 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
5676 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
5209 |
5677 symbol_c *IN_type_symbol = NULL; |
5210 /* Get the value from a foo(<param_value>) style call */ |
5678 |
5211 if (IN_param_value == NULL) |
5679 /* Get the value from a foo(<param_value>) style call */ |
5212 IN_param_value = function_call_param_iterator.next(); |
5680 if (IN_param_value == NULL) |
5213 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
5681 IN_param_value = function_call_param_iterator.next(); |
5214 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
5682 if (IN_param_value != NULL) { |
5215 |
5683 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
5216 if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol)) |
5684 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
5685 } |
|
5686 |
|
5687 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol)) |
5217 { |
5688 { |
5218 |
5689 |
5219 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name; |
5690 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name; |
5220 return return_type_symbol; |
5691 return return_type_symbol; |
5221 |
5692 |
5237 |
5708 |
5238 { |
5709 { |
5239 identifier_c param_name("IN"); |
5710 identifier_c param_name("IN"); |
5240 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
5711 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
5241 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
5712 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
5242 |
5713 symbol_c *IN_type_symbol = NULL; |
5243 /* Get the value from a foo(<param_value>) style call */ |
5714 |
5244 if (IN_param_value == NULL) |
5715 /* Get the value from a foo(<param_value>) style call */ |
5245 IN_param_value = function_call_param_iterator.next(); |
5716 if (IN_param_value == NULL) |
5246 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
5717 IN_param_value = function_call_param_iterator.next(); |
5247 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
5718 if (IN_param_value != NULL) { |
5248 |
5719 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
5249 if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol)) |
5720 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
5721 } |
|
5722 |
|
5723 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol)) |
5250 { |
5724 { |
5251 |
5725 |
5252 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
5726 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
5253 return return_type_symbol; |
5727 return return_type_symbol; |
5254 |
5728 |
5270 |
5744 |
5271 { |
5745 { |
5272 identifier_c param_name("IN"); |
5746 identifier_c param_name("IN"); |
5273 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
5747 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
5274 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
5748 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
5275 |
5749 symbol_c *IN_type_symbol = NULL; |
5276 /* Get the value from a foo(<param_value>) style call */ |
5750 |
5277 if (IN_param_value == NULL) |
5751 /* Get the value from a foo(<param_value>) style call */ |
5278 IN_param_value = function_call_param_iterator.next(); |
5752 if (IN_param_value == NULL) |
5279 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
5753 IN_param_value = function_call_param_iterator.next(); |
5280 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
5754 if (IN_param_value != NULL) { |
5281 |
5755 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
5282 if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol)) |
5756 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
5757 } |
|
5758 |
|
5759 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol)) |
5283 { |
5760 { |
5284 |
5761 |
5285 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name; |
5762 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name; |
5286 return return_type_symbol; |
5763 return return_type_symbol; |
5287 |
5764 |
5303 |
5780 |
5304 { |
5781 { |
5305 identifier_c param_name("IN"); |
5782 identifier_c param_name("IN"); |
5306 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
5783 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
5307 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
5784 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
5308 |
5785 symbol_c *IN_type_symbol = NULL; |
5309 /* Get the value from a foo(<param_value>) style call */ |
5786 |
5310 if (IN_param_value == NULL) |
5787 /* Get the value from a foo(<param_value>) style call */ |
5311 IN_param_value = function_call_param_iterator.next(); |
5788 if (IN_param_value == NULL) |
5312 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
5789 IN_param_value = function_call_param_iterator.next(); |
5313 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
5790 if (IN_param_value != NULL) { |
5314 |
5791 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
5315 if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol)) |
5792 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
5793 } |
|
5794 |
|
5795 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol)) |
5316 { |
5796 { |
5317 |
5797 |
5318 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name; |
5798 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name; |
5319 return return_type_symbol; |
5799 return return_type_symbol; |
5320 |
5800 |
5336 |
5816 |
5337 { |
5817 { |
5338 identifier_c param_name("IN"); |
5818 identifier_c param_name("IN"); |
5339 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
5819 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
5340 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
5820 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
5341 |
5821 symbol_c *IN_type_symbol = NULL; |
5342 /* Get the value from a foo(<param_value>) style call */ |
5822 |
5343 if (IN_param_value == NULL) |
5823 /* Get the value from a foo(<param_value>) style call */ |
5344 IN_param_value = function_call_param_iterator.next(); |
5824 if (IN_param_value == NULL) |
5345 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
5825 IN_param_value = function_call_param_iterator.next(); |
5346 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
5826 if (IN_param_value != NULL) { |
5347 |
5827 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
5348 if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol)) |
5828 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
5829 } |
|
5830 |
|
5831 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol)) |
5349 { |
5832 { |
5350 |
5833 |
5351 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name; |
5834 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name; |
5352 return return_type_symbol; |
5835 return return_type_symbol; |
5353 |
5836 |
5369 |
5852 |
5370 { |
5853 { |
5371 identifier_c param_name("IN"); |
5854 identifier_c param_name("IN"); |
5372 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
5855 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
5373 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
5856 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
5374 |
5857 symbol_c *IN_type_symbol = NULL; |
5375 /* Get the value from a foo(<param_value>) style call */ |
5858 |
5376 if (IN_param_value == NULL) |
5859 /* Get the value from a foo(<param_value>) style call */ |
5377 IN_param_value = function_call_param_iterator.next(); |
5860 if (IN_param_value == NULL) |
5378 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
5861 IN_param_value = function_call_param_iterator.next(); |
5379 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
5862 if (IN_param_value != NULL) { |
5380 |
5863 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
5381 if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol)) |
5864 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
5865 } |
|
5866 |
|
5867 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol)) |
5382 { |
5868 { |
5383 |
5869 |
5384 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name; |
5870 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name; |
5385 return return_type_symbol; |
5871 return return_type_symbol; |
5386 |
5872 |
5402 |
5888 |
5403 { |
5889 { |
5404 identifier_c param_name("IN"); |
5890 identifier_c param_name("IN"); |
5405 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
5891 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
5406 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
5892 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
5407 |
5893 symbol_c *IN_type_symbol = NULL; |
5408 /* Get the value from a foo(<param_value>) style call */ |
5894 |
5409 if (IN_param_value == NULL) |
5895 /* Get the value from a foo(<param_value>) style call */ |
5410 IN_param_value = function_call_param_iterator.next(); |
5896 if (IN_param_value == NULL) |
5411 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
5897 IN_param_value = function_call_param_iterator.next(); |
5412 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
5898 if (IN_param_value != NULL) { |
5413 |
5899 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
5414 if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol)) |
5900 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
5901 } |
|
5902 |
|
5903 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol)) |
5415 { |
5904 { |
5416 |
5905 |
5417 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name; |
5906 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name; |
5418 return return_type_symbol; |
5907 return return_type_symbol; |
5419 |
5908 |
5435 |
5924 |
5436 { |
5925 { |
5437 identifier_c param_name("IN"); |
5926 identifier_c param_name("IN"); |
5438 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
5927 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
5439 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
5928 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
5440 |
5929 symbol_c *IN_type_symbol = NULL; |
5441 /* Get the value from a foo(<param_value>) style call */ |
5930 |
5442 if (IN_param_value == NULL) |
5931 /* Get the value from a foo(<param_value>) style call */ |
5443 IN_param_value = function_call_param_iterator.next(); |
5932 if (IN_param_value == NULL) |
5444 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
5933 IN_param_value = function_call_param_iterator.next(); |
5445 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
5934 if (IN_param_value != NULL) { |
5446 |
5935 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
5447 if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol)) |
5936 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
5937 } |
|
5938 |
|
5939 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol)) |
5448 { |
5940 { |
5449 |
5941 |
5450 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name; |
5942 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name; |
5451 return return_type_symbol; |
5943 return return_type_symbol; |
5452 |
5944 |
5468 |
5960 |
5469 { |
5961 { |
5470 identifier_c param_name("IN"); |
5962 identifier_c param_name("IN"); |
5471 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
5963 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
5472 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
5964 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
5473 |
5965 symbol_c *IN_type_symbol = NULL; |
5474 /* Get the value from a foo(<param_value>) style call */ |
5966 |
5475 if (IN_param_value == NULL) |
5967 /* Get the value from a foo(<param_value>) style call */ |
5476 IN_param_value = function_call_param_iterator.next(); |
5968 if (IN_param_value == NULL) |
5477 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
5969 IN_param_value = function_call_param_iterator.next(); |
5478 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
5970 if (IN_param_value != NULL) { |
5479 |
5971 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
5480 if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol)) |
5972 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
5973 } |
|
5974 |
|
5975 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol)) |
5481 { |
5976 { |
5482 |
5977 |
5483 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name; |
5978 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name; |
5484 return return_type_symbol; |
5979 return return_type_symbol; |
5485 |
5980 |
5501 |
5996 |
5502 { |
5997 { |
5503 identifier_c param_name("IN"); |
5998 identifier_c param_name("IN"); |
5504 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
5999 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
5505 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6000 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
5506 |
6001 symbol_c *IN_type_symbol = NULL; |
5507 /* Get the value from a foo(<param_value>) style call */ |
6002 |
5508 if (IN_param_value == NULL) |
6003 /* Get the value from a foo(<param_value>) style call */ |
5509 IN_param_value = function_call_param_iterator.next(); |
6004 if (IN_param_value == NULL) |
5510 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6005 IN_param_value = function_call_param_iterator.next(); |
5511 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
6006 if (IN_param_value != NULL) { |
5512 |
6007 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
5513 if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol)) |
6008 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
6009 } |
|
6010 |
|
6011 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol)) |
5514 { |
6012 { |
5515 |
6013 |
5516 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name; |
6014 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name; |
5517 return return_type_symbol; |
6015 return return_type_symbol; |
5518 |
6016 |
5534 |
6032 |
5535 { |
6033 { |
5536 identifier_c param_name("IN"); |
6034 identifier_c param_name("IN"); |
5537 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
6035 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
5538 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6036 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
5539 |
6037 symbol_c *IN_type_symbol = NULL; |
5540 /* Get the value from a foo(<param_value>) style call */ |
6038 |
5541 if (IN_param_value == NULL) |
6039 /* Get the value from a foo(<param_value>) style call */ |
5542 IN_param_value = function_call_param_iterator.next(); |
6040 if (IN_param_value == NULL) |
5543 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6041 IN_param_value = function_call_param_iterator.next(); |
5544 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
6042 if (IN_param_value != NULL) { |
5545 |
6043 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
5546 if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol)) |
6044 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
6045 } |
|
6046 |
|
6047 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol)) |
5547 { |
6048 { |
5548 |
6049 |
5549 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name; |
6050 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name; |
5550 return return_type_symbol; |
6051 return return_type_symbol; |
5551 |
6052 |
5567 |
6068 |
5568 { |
6069 { |
5569 identifier_c param_name("IN"); |
6070 identifier_c param_name("IN"); |
5570 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
6071 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
5571 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6072 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
5572 |
6073 symbol_c *IN_type_symbol = NULL; |
5573 /* Get the value from a foo(<param_value>) style call */ |
6074 |
5574 if (IN_param_value == NULL) |
6075 /* Get the value from a foo(<param_value>) style call */ |
5575 IN_param_value = function_call_param_iterator.next(); |
6076 if (IN_param_value == NULL) |
5576 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6077 IN_param_value = function_call_param_iterator.next(); |
5577 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
6078 if (IN_param_value != NULL) { |
5578 |
6079 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
5579 if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol)) |
6080 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
6081 } |
|
6082 |
|
6083 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol)) |
5580 { |
6084 { |
5581 |
6085 |
5582 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name; |
6086 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name; |
5583 return return_type_symbol; |
6087 return return_type_symbol; |
5584 |
6088 |
5600 |
6104 |
5601 { |
6105 { |
5602 identifier_c param_name("IN"); |
6106 identifier_c param_name("IN"); |
5603 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
6107 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
5604 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6108 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
5605 |
6109 symbol_c *IN_type_symbol = NULL; |
5606 /* Get the value from a foo(<param_value>) style call */ |
6110 |
5607 if (IN_param_value == NULL) |
6111 /* Get the value from a foo(<param_value>) style call */ |
5608 IN_param_value = function_call_param_iterator.next(); |
6112 if (IN_param_value == NULL) |
5609 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6113 IN_param_value = function_call_param_iterator.next(); |
5610 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
6114 if (IN_param_value != NULL) { |
5611 |
6115 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
5612 if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol)) |
6116 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
6117 } |
|
6118 |
|
6119 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol)) |
5613 { |
6120 { |
5614 |
6121 |
5615 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
6122 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
5616 return return_type_symbol; |
6123 return return_type_symbol; |
5617 |
6124 |
5633 |
6140 |
5634 { |
6141 { |
5635 identifier_c param_name("IN"); |
6142 identifier_c param_name("IN"); |
5636 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
6143 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
5637 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6144 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
5638 |
6145 symbol_c *IN_type_symbol = NULL; |
5639 /* Get the value from a foo(<param_value>) style call */ |
6146 |
5640 if (IN_param_value == NULL) |
6147 /* Get the value from a foo(<param_value>) style call */ |
5641 IN_param_value = function_call_param_iterator.next(); |
6148 if (IN_param_value == NULL) |
5642 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6149 IN_param_value = function_call_param_iterator.next(); |
5643 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
6150 if (IN_param_value != NULL) { |
5644 |
6151 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
5645 if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol)) |
6152 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
6153 } |
|
6154 |
|
6155 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol)) |
5646 { |
6156 { |
5647 |
6157 |
5648 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name; |
6158 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name; |
5649 return return_type_symbol; |
6159 return return_type_symbol; |
5650 |
6160 |
5666 |
6176 |
5667 { |
6177 { |
5668 identifier_c param_name("IN"); |
6178 identifier_c param_name("IN"); |
5669 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
6179 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
5670 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6180 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
5671 |
6181 symbol_c *IN_type_symbol = NULL; |
5672 /* Get the value from a foo(<param_value>) style call */ |
6182 |
5673 if (IN_param_value == NULL) |
6183 /* Get the value from a foo(<param_value>) style call */ |
5674 IN_param_value = function_call_param_iterator.next(); |
6184 if (IN_param_value == NULL) |
5675 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6185 IN_param_value = function_call_param_iterator.next(); |
5676 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
6186 if (IN_param_value != NULL) { |
5677 |
6187 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
5678 if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol)) |
6188 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
6189 } |
|
6190 |
|
6191 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol)) |
5679 { |
6192 { |
5680 |
6193 |
5681 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name; |
6194 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name; |
5682 return return_type_symbol; |
6195 return return_type_symbol; |
5683 |
6196 |
5699 |
6212 |
5700 { |
6213 { |
5701 identifier_c param_name("IN"); |
6214 identifier_c param_name("IN"); |
5702 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
6215 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
5703 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6216 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
5704 |
6217 symbol_c *IN_type_symbol = NULL; |
5705 /* Get the value from a foo(<param_value>) style call */ |
6218 |
5706 if (IN_param_value == NULL) |
6219 /* Get the value from a foo(<param_value>) style call */ |
5707 IN_param_value = function_call_param_iterator.next(); |
6220 if (IN_param_value == NULL) |
5708 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6221 IN_param_value = function_call_param_iterator.next(); |
5709 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
6222 if (IN_param_value != NULL) { |
5710 |
6223 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
5711 if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol)) |
6224 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
6225 } |
|
6226 |
|
6227 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol)) |
5712 { |
6228 { |
5713 |
6229 |
5714 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name; |
6230 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name; |
5715 return return_type_symbol; |
6231 return return_type_symbol; |
5716 |
6232 |
5732 |
6248 |
5733 { |
6249 { |
5734 identifier_c param_name("IN"); |
6250 identifier_c param_name("IN"); |
5735 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
6251 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
5736 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6252 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
5737 |
6253 symbol_c *IN_type_symbol = NULL; |
5738 /* Get the value from a foo(<param_value>) style call */ |
6254 |
5739 if (IN_param_value == NULL) |
6255 /* Get the value from a foo(<param_value>) style call */ |
5740 IN_param_value = function_call_param_iterator.next(); |
6256 if (IN_param_value == NULL) |
5741 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6257 IN_param_value = function_call_param_iterator.next(); |
5742 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
6258 if (IN_param_value != NULL) { |
5743 |
6259 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
5744 if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol)) |
6260 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
6261 } |
|
6262 |
|
6263 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol)) |
5745 { |
6264 { |
5746 |
6265 |
5747 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name; |
6266 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name; |
5748 return return_type_symbol; |
6267 return return_type_symbol; |
5749 |
6268 |
5765 |
6284 |
5766 { |
6285 { |
5767 identifier_c param_name("IN"); |
6286 identifier_c param_name("IN"); |
5768 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
6287 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
5769 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6288 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
5770 |
6289 symbol_c *IN_type_symbol = NULL; |
5771 /* Get the value from a foo(<param_value>) style call */ |
6290 |
5772 if (IN_param_value == NULL) |
6291 /* Get the value from a foo(<param_value>) style call */ |
5773 IN_param_value = function_call_param_iterator.next(); |
6292 if (IN_param_value == NULL) |
5774 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6293 IN_param_value = function_call_param_iterator.next(); |
5775 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
6294 if (IN_param_value != NULL) { |
5776 |
6295 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
5777 if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol)) |
6296 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
6297 } |
|
6298 |
|
6299 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol)) |
5778 { |
6300 { |
5779 |
6301 |
5780 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name; |
6302 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name; |
5781 return return_type_symbol; |
6303 return return_type_symbol; |
5782 |
6304 |
5798 |
6320 |
5799 { |
6321 { |
5800 identifier_c param_name("IN"); |
6322 identifier_c param_name("IN"); |
5801 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
6323 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
5802 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6324 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
5803 |
6325 symbol_c *IN_type_symbol = NULL; |
5804 /* Get the value from a foo(<param_value>) style call */ |
6326 |
5805 if (IN_param_value == NULL) |
6327 /* Get the value from a foo(<param_value>) style call */ |
5806 IN_param_value = function_call_param_iterator.next(); |
6328 if (IN_param_value == NULL) |
5807 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6329 IN_param_value = function_call_param_iterator.next(); |
5808 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
6330 if (IN_param_value != NULL) { |
5809 |
6331 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
5810 if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol)) |
6332 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
6333 } |
|
6334 |
|
6335 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol)) |
5811 { |
6336 { |
5812 |
6337 |
5813 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name; |
6338 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name; |
5814 return return_type_symbol; |
6339 return return_type_symbol; |
5815 |
6340 |
5831 |
6356 |
5832 { |
6357 { |
5833 identifier_c param_name("IN"); |
6358 identifier_c param_name("IN"); |
5834 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
6359 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
5835 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6360 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
5836 |
6361 symbol_c *IN_type_symbol = NULL; |
5837 /* Get the value from a foo(<param_value>) style call */ |
6362 |
5838 if (IN_param_value == NULL) |
6363 /* Get the value from a foo(<param_value>) style call */ |
5839 IN_param_value = function_call_param_iterator.next(); |
6364 if (IN_param_value == NULL) |
5840 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6365 IN_param_value = function_call_param_iterator.next(); |
5841 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
6366 if (IN_param_value != NULL) { |
5842 |
6367 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
5843 if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol)) |
6368 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
6369 } |
|
6370 |
|
6371 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol)) |
5844 { |
6372 { |
5845 |
6373 |
5846 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name; |
6374 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name; |
5847 return return_type_symbol; |
6375 return return_type_symbol; |
5848 |
6376 |
5864 |
6392 |
5865 { |
6393 { |
5866 identifier_c param_name("IN"); |
6394 identifier_c param_name("IN"); |
5867 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
6395 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
5868 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6396 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
5869 |
6397 symbol_c *IN_type_symbol = NULL; |
5870 /* Get the value from a foo(<param_value>) style call */ |
6398 |
5871 if (IN_param_value == NULL) |
6399 /* Get the value from a foo(<param_value>) style call */ |
5872 IN_param_value = function_call_param_iterator.next(); |
6400 if (IN_param_value == NULL) |
5873 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6401 IN_param_value = function_call_param_iterator.next(); |
5874 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
6402 if (IN_param_value != NULL) { |
5875 |
6403 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
5876 if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol)) |
6404 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
6405 } |
|
6406 |
|
6407 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol)) |
5877 { |
6408 { |
5878 |
6409 |
5879 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
6410 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
5880 return return_type_symbol; |
6411 return return_type_symbol; |
5881 |
6412 |
5897 |
6428 |
5898 { |
6429 { |
5899 identifier_c param_name("IN"); |
6430 identifier_c param_name("IN"); |
5900 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
6431 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
5901 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6432 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
5902 |
6433 symbol_c *IN_type_symbol = NULL; |
5903 /* Get the value from a foo(<param_value>) style call */ |
6434 |
5904 if (IN_param_value == NULL) |
6435 /* Get the value from a foo(<param_value>) style call */ |
5905 IN_param_value = function_call_param_iterator.next(); |
6436 if (IN_param_value == NULL) |
5906 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6437 IN_param_value = function_call_param_iterator.next(); |
5907 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
6438 if (IN_param_value != NULL) { |
5908 |
6439 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
5909 if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol)) |
6440 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
6441 } |
|
6442 |
|
6443 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol)) |
5910 { |
6444 { |
5911 |
6445 |
5912 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name; |
6446 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name; |
5913 return return_type_symbol; |
6447 return return_type_symbol; |
5914 |
6448 |
5930 |
6464 |
5931 { |
6465 { |
5932 identifier_c param_name("IN"); |
6466 identifier_c param_name("IN"); |
5933 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
6467 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
5934 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6468 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
5935 |
6469 symbol_c *IN_type_symbol = NULL; |
5936 /* Get the value from a foo(<param_value>) style call */ |
6470 |
5937 if (IN_param_value == NULL) |
6471 /* Get the value from a foo(<param_value>) style call */ |
5938 IN_param_value = function_call_param_iterator.next(); |
6472 if (IN_param_value == NULL) |
5939 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6473 IN_param_value = function_call_param_iterator.next(); |
5940 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
6474 if (IN_param_value != NULL) { |
5941 |
6475 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
5942 if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
6476 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
6477 } |
|
6478 |
|
6479 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
5943 { |
6480 { |
5944 |
6481 |
5945 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name; |
6482 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name; |
5946 return return_type_symbol; |
6483 return return_type_symbol; |
5947 |
6484 |
5963 |
6500 |
5964 { |
6501 { |
5965 identifier_c param_name("IN"); |
6502 identifier_c param_name("IN"); |
5966 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
6503 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
5967 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6504 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
5968 |
6505 symbol_c *IN_type_symbol = NULL; |
5969 /* Get the value from a foo(<param_value>) style call */ |
6506 |
5970 if (IN_param_value == NULL) |
6507 /* Get the value from a foo(<param_value>) style call */ |
5971 IN_param_value = function_call_param_iterator.next(); |
6508 if (IN_param_value == NULL) |
5972 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6509 IN_param_value = function_call_param_iterator.next(); |
5973 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
6510 if (IN_param_value != NULL) { |
5974 |
6511 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
5975 if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
6512 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
6513 } |
|
6514 |
|
6515 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
5976 { |
6516 { |
5977 |
6517 |
5978 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name; |
6518 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name; |
5979 return return_type_symbol; |
6519 return return_type_symbol; |
5980 |
6520 |
5996 |
6536 |
5997 { |
6537 { |
5998 identifier_c param_name("IN"); |
6538 identifier_c param_name("IN"); |
5999 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
6539 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
6000 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6540 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6001 |
6541 symbol_c *IN_type_symbol = NULL; |
6002 /* Get the value from a foo(<param_value>) style call */ |
6542 |
6003 if (IN_param_value == NULL) |
6543 /* Get the value from a foo(<param_value>) style call */ |
6004 IN_param_value = function_call_param_iterator.next(); |
6544 if (IN_param_value == NULL) |
6005 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6545 IN_param_value = function_call_param_iterator.next(); |
6006 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
6546 if (IN_param_value != NULL) { |
6007 |
6547 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6008 if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
6548 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
6549 } |
|
6550 |
|
6551 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
6009 { |
6552 { |
6010 |
6553 |
6011 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name; |
6554 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name; |
6012 return return_type_symbol; |
6555 return return_type_symbol; |
6013 |
6556 |
6029 |
6572 |
6030 { |
6573 { |
6031 identifier_c param_name("IN"); |
6574 identifier_c param_name("IN"); |
6032 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
6575 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
6033 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6576 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6034 |
6577 symbol_c *IN_type_symbol = NULL; |
6035 /* Get the value from a foo(<param_value>) style call */ |
6578 |
6036 if (IN_param_value == NULL) |
6579 /* Get the value from a foo(<param_value>) style call */ |
6037 IN_param_value = function_call_param_iterator.next(); |
6580 if (IN_param_value == NULL) |
6038 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6581 IN_param_value = function_call_param_iterator.next(); |
6039 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
6582 if (IN_param_value != NULL) { |
6040 |
6583 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6041 if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
6584 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
6585 } |
|
6586 |
|
6587 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
6042 { |
6588 { |
6043 |
6589 |
6044 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name; |
6590 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name; |
6045 return return_type_symbol; |
6591 return return_type_symbol; |
6046 |
6592 |
6062 |
6608 |
6063 { |
6609 { |
6064 identifier_c param_name("IN"); |
6610 identifier_c param_name("IN"); |
6065 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
6611 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
6066 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6612 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6067 |
6613 symbol_c *IN_type_symbol = NULL; |
6068 /* Get the value from a foo(<param_value>) style call */ |
6614 |
6069 if (IN_param_value == NULL) |
6615 /* Get the value from a foo(<param_value>) style call */ |
6070 IN_param_value = function_call_param_iterator.next(); |
6616 if (IN_param_value == NULL) |
6071 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6617 IN_param_value = function_call_param_iterator.next(); |
6072 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
6618 if (IN_param_value != NULL) { |
6073 |
6619 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6074 if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
6620 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
6621 } |
|
6622 |
|
6623 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
6075 { |
6624 { |
6076 |
6625 |
6077 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name; |
6626 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name; |
6078 return return_type_symbol; |
6627 return return_type_symbol; |
6079 |
6628 |
6095 |
6644 |
6096 { |
6645 { |
6097 identifier_c param_name("IN"); |
6646 identifier_c param_name("IN"); |
6098 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
6647 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
6099 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6648 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6100 |
6649 symbol_c *IN_type_symbol = NULL; |
6101 /* Get the value from a foo(<param_value>) style call */ |
6650 |
6102 if (IN_param_value == NULL) |
6651 /* Get the value from a foo(<param_value>) style call */ |
6103 IN_param_value = function_call_param_iterator.next(); |
6652 if (IN_param_value == NULL) |
6104 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6653 IN_param_value = function_call_param_iterator.next(); |
6105 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
6654 if (IN_param_value != NULL) { |
6106 |
6655 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6107 if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
6656 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
6657 } |
|
6658 |
|
6659 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
6108 { |
6660 { |
6109 |
6661 |
6110 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name; |
6662 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name; |
6111 return return_type_symbol; |
6663 return return_type_symbol; |
6112 |
6664 |
6128 |
6680 |
6129 { |
6681 { |
6130 identifier_c param_name("IN"); |
6682 identifier_c param_name("IN"); |
6131 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
6683 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
6132 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6684 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6133 |
6685 symbol_c *IN_type_symbol = NULL; |
6134 /* Get the value from a foo(<param_value>) style call */ |
6686 |
6135 if (IN_param_value == NULL) |
6687 /* Get the value from a foo(<param_value>) style call */ |
6136 IN_param_value = function_call_param_iterator.next(); |
6688 if (IN_param_value == NULL) |
6137 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6689 IN_param_value = function_call_param_iterator.next(); |
6138 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
6690 if (IN_param_value != NULL) { |
6139 |
6691 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6140 if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
6692 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
6693 } |
|
6694 |
|
6695 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
6141 { |
6696 { |
6142 |
6697 |
6143 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name; |
6698 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name; |
6144 return return_type_symbol; |
6699 return return_type_symbol; |
6145 |
6700 |
6161 |
6716 |
6162 { |
6717 { |
6163 identifier_c param_name("IN"); |
6718 identifier_c param_name("IN"); |
6164 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
6719 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
6165 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6720 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6166 |
6721 symbol_c *IN_type_symbol = NULL; |
6167 /* Get the value from a foo(<param_value>) style call */ |
6722 |
6168 if (IN_param_value == NULL) |
6723 /* Get the value from a foo(<param_value>) style call */ |
6169 IN_param_value = function_call_param_iterator.next(); |
6724 if (IN_param_value == NULL) |
6170 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6725 IN_param_value = function_call_param_iterator.next(); |
6171 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
6726 if (IN_param_value != NULL) { |
6172 |
6727 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6173 if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
6728 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
6729 } |
|
6730 |
|
6731 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
6174 { |
6732 { |
6175 |
6733 |
6176 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name; |
6734 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name; |
6177 return return_type_symbol; |
6735 return return_type_symbol; |
6178 |
6736 |
6194 |
6752 |
6195 { |
6753 { |
6196 identifier_c param_name("IN"); |
6754 identifier_c param_name("IN"); |
6197 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
6755 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
6198 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6756 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6199 |
6757 symbol_c *IN_type_symbol = NULL; |
6200 /* Get the value from a foo(<param_value>) style call */ |
6758 |
6201 if (IN_param_value == NULL) |
6759 /* Get the value from a foo(<param_value>) style call */ |
6202 IN_param_value = function_call_param_iterator.next(); |
6760 if (IN_param_value == NULL) |
6203 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6761 IN_param_value = function_call_param_iterator.next(); |
6204 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
6762 if (IN_param_value != NULL) { |
6205 |
6763 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6206 if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
6764 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
6765 } |
|
6766 |
|
6767 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
6207 { |
6768 { |
6208 |
6769 |
6209 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name; |
6770 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name; |
6210 return return_type_symbol; |
6771 return return_type_symbol; |
6211 |
6772 |
6227 |
6788 |
6228 { |
6789 { |
6229 identifier_c param_name("IN"); |
6790 identifier_c param_name("IN"); |
6230 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
6791 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
6231 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6792 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6232 |
6793 symbol_c *IN_type_symbol = NULL; |
6233 /* Get the value from a foo(<param_value>) style call */ |
6794 |
6234 if (IN_param_value == NULL) |
6795 /* Get the value from a foo(<param_value>) style call */ |
6235 IN_param_value = function_call_param_iterator.next(); |
6796 if (IN_param_value == NULL) |
6236 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6797 IN_param_value = function_call_param_iterator.next(); |
6237 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
6798 if (IN_param_value != NULL) { |
6238 |
6799 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6239 if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
6800 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
6801 } |
|
6802 |
|
6803 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
6240 { |
6804 { |
6241 |
6805 |
6242 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name; |
6806 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name; |
6243 return return_type_symbol; |
6807 return return_type_symbol; |
6244 |
6808 |
6260 |
6824 |
6261 { |
6825 { |
6262 identifier_c param_name("IN"); |
6826 identifier_c param_name("IN"); |
6263 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
6827 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
6264 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6828 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6265 |
6829 symbol_c *IN_type_symbol = NULL; |
6266 /* Get the value from a foo(<param_value>) style call */ |
6830 |
6267 if (IN_param_value == NULL) |
6831 /* Get the value from a foo(<param_value>) style call */ |
6268 IN_param_value = function_call_param_iterator.next(); |
6832 if (IN_param_value == NULL) |
6269 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6833 IN_param_value = function_call_param_iterator.next(); |
6270 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
6834 if (IN_param_value != NULL) { |
6271 |
6835 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6272 if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
6836 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
6837 } |
|
6838 |
|
6839 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
6273 { |
6840 { |
6274 |
6841 |
6275 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name; |
6842 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name; |
6276 return return_type_symbol; |
6843 return return_type_symbol; |
6277 |
6844 |
6293 |
6860 |
6294 { |
6861 { |
6295 identifier_c param_name("IN"); |
6862 identifier_c param_name("IN"); |
6296 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
6863 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
6297 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6864 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6298 |
6865 symbol_c *IN_type_symbol = NULL; |
6299 /* Get the value from a foo(<param_value>) style call */ |
6866 |
6300 if (IN_param_value == NULL) |
6867 /* Get the value from a foo(<param_value>) style call */ |
6301 IN_param_value = function_call_param_iterator.next(); |
6868 if (IN_param_value == NULL) |
6302 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6869 IN_param_value = function_call_param_iterator.next(); |
6303 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
6870 if (IN_param_value != NULL) { |
6304 |
6871 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6305 if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
6872 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
6873 } |
|
6874 |
|
6875 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
6306 { |
6876 { |
6307 |
6877 |
6308 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name; |
6878 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name; |
6309 return return_type_symbol; |
6879 return return_type_symbol; |
6310 |
6880 |
6326 |
6896 |
6327 { |
6897 { |
6328 identifier_c param_name("IN"); |
6898 identifier_c param_name("IN"); |
6329 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
6899 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
6330 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6900 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6331 |
6901 symbol_c *IN_type_symbol = NULL; |
6332 /* Get the value from a foo(<param_value>) style call */ |
6902 |
6333 if (IN_param_value == NULL) |
6903 /* Get the value from a foo(<param_value>) style call */ |
6334 IN_param_value = function_call_param_iterator.next(); |
6904 if (IN_param_value == NULL) |
6335 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6905 IN_param_value = function_call_param_iterator.next(); |
6336 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
6906 if (IN_param_value != NULL) { |
6337 |
6907 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6338 if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
6908 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
6909 } |
|
6910 |
|
6911 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
6339 { |
6912 { |
6340 |
6913 |
6341 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name; |
6914 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name; |
6342 return return_type_symbol; |
6915 return return_type_symbol; |
6343 |
6916 |
6359 |
6932 |
6360 { |
6933 { |
6361 identifier_c param_name("IN"); |
6934 identifier_c param_name("IN"); |
6362 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
6935 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
6363 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6936 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6364 |
6937 symbol_c *IN_type_symbol = NULL; |
6365 /* Get the value from a foo(<param_value>) style call */ |
6938 |
6366 if (IN_param_value == NULL) |
6939 /* Get the value from a foo(<param_value>) style call */ |
6367 IN_param_value = function_call_param_iterator.next(); |
6940 if (IN_param_value == NULL) |
6368 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6941 IN_param_value = function_call_param_iterator.next(); |
6369 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
6942 if (IN_param_value != NULL) { |
6370 |
6943 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6371 if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
6944 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
6945 } |
|
6946 |
|
6947 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
6372 { |
6948 { |
6373 |
6949 |
6374 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name; |
6950 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name; |
6375 return return_type_symbol; |
6951 return return_type_symbol; |
6376 |
6952 |
6392 |
6968 |
6393 { |
6969 { |
6394 identifier_c param_name("IN"); |
6970 identifier_c param_name("IN"); |
6395 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
6971 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
6396 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6972 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6397 |
6973 symbol_c *IN_type_symbol = NULL; |
6398 /* Get the value from a foo(<param_value>) style call */ |
6974 |
6399 if (IN_param_value == NULL) |
6975 /* Get the value from a foo(<param_value>) style call */ |
6400 IN_param_value = function_call_param_iterator.next(); |
6976 if (IN_param_value == NULL) |
6401 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6977 IN_param_value = function_call_param_iterator.next(); |
6402 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
6978 if (IN_param_value != NULL) { |
6403 |
6979 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6404 if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
6980 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
6981 } |
|
6982 |
|
6983 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
6405 { |
6984 { |
6406 |
6985 |
6407 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name; |
6986 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name; |
6408 return return_type_symbol; |
6987 return return_type_symbol; |
6409 |
6988 |
6425 |
7004 |
6426 { |
7005 { |
6427 identifier_c param_name("IN"); |
7006 identifier_c param_name("IN"); |
6428 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
7007 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
6429 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
7008 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6430 |
7009 symbol_c *IN_type_symbol = NULL; |
6431 /* Get the value from a foo(<param_value>) style call */ |
7010 |
6432 if (IN_param_value == NULL) |
7011 /* Get the value from a foo(<param_value>) style call */ |
6433 IN_param_value = function_call_param_iterator.next(); |
7012 if (IN_param_value == NULL) |
6434 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
7013 IN_param_value = function_call_param_iterator.next(); |
6435 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
7014 if (IN_param_value != NULL) { |
6436 |
7015 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6437 if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
7016 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
7017 } |
|
7018 |
|
7019 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
6438 { |
7020 { |
6439 |
7021 |
6440 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name; |
7022 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name; |
6441 return return_type_symbol; |
7023 return return_type_symbol; |
6442 |
7024 |
6458 |
7040 |
6459 { |
7041 { |
6460 identifier_c param_name("IN"); |
7042 identifier_c param_name("IN"); |
6461 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
7043 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
6462 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
7044 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6463 |
7045 symbol_c *IN_type_symbol = NULL; |
6464 /* Get the value from a foo(<param_value>) style call */ |
7046 |
6465 if (IN_param_value == NULL) |
7047 /* Get the value from a foo(<param_value>) style call */ |
6466 IN_param_value = function_call_param_iterator.next(); |
7048 if (IN_param_value == NULL) |
6467 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
7049 IN_param_value = function_call_param_iterator.next(); |
6468 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
7050 if (IN_param_value != NULL) { |
6469 |
7051 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6470 if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
7052 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
7053 } |
|
7054 |
|
7055 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
6471 { |
7056 { |
6472 |
7057 |
6473 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name; |
7058 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name; |
6474 return return_type_symbol; |
7059 return return_type_symbol; |
6475 |
7060 |
6491 |
7076 |
6492 { |
7077 { |
6493 identifier_c param_name("IN"); |
7078 identifier_c param_name("IN"); |
6494 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
7079 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
6495 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
7080 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6496 |
7081 symbol_c *IN_type_symbol = NULL; |
6497 /* Get the value from a foo(<param_value>) style call */ |
7082 |
6498 if (IN_param_value == NULL) |
7083 /* Get the value from a foo(<param_value>) style call */ |
6499 IN_param_value = function_call_param_iterator.next(); |
7084 if (IN_param_value == NULL) |
6500 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
7085 IN_param_value = function_call_param_iterator.next(); |
6501 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
7086 if (IN_param_value != NULL) { |
6502 |
7087 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6503 if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
7088 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
7089 } |
|
7090 |
|
7091 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
6504 { |
7092 { |
6505 |
7093 |
6506 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
7094 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
6507 return return_type_symbol; |
7095 return return_type_symbol; |
6508 |
7096 |
6524 |
7112 |
6525 { |
7113 { |
6526 identifier_c param_name("IN"); |
7114 identifier_c param_name("IN"); |
6527 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
7115 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
6528 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
7116 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6529 |
7117 symbol_c *IN_type_symbol = NULL; |
6530 /* Get the value from a foo(<param_value>) style call */ |
7118 |
6531 if (IN_param_value == NULL) |
7119 /* Get the value from a foo(<param_value>) style call */ |
6532 IN_param_value = function_call_param_iterator.next(); |
7120 if (IN_param_value == NULL) |
6533 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
7121 IN_param_value = function_call_param_iterator.next(); |
6534 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
7122 if (IN_param_value != NULL) { |
6535 |
7123 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6536 if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
7124 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
7125 } |
|
7126 |
|
7127 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
6537 { |
7128 { |
6538 |
7129 |
6539 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name; |
7130 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name; |
6540 return return_type_symbol; |
7131 return return_type_symbol; |
6541 |
7132 |
6557 |
7148 |
6558 { |
7149 { |
6559 identifier_c param_name("IN"); |
7150 identifier_c param_name("IN"); |
6560 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
7151 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
6561 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
7152 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6562 |
7153 symbol_c *IN_type_symbol = NULL; |
6563 /* Get the value from a foo(<param_value>) style call */ |
7154 |
6564 if (IN_param_value == NULL) |
7155 /* Get the value from a foo(<param_value>) style call */ |
6565 IN_param_value = function_call_param_iterator.next(); |
7156 if (IN_param_value == NULL) |
6566 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
7157 IN_param_value = function_call_param_iterator.next(); |
6567 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
7158 if (IN_param_value != NULL) { |
6568 |
7159 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6569 if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol)) |
7160 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
7161 } |
|
7162 |
|
7163 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol)) |
6570 { |
7164 { |
6571 |
7165 |
6572 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name; |
7166 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name; |
6573 return return_type_symbol; |
7167 return return_type_symbol; |
6574 |
7168 |
6590 |
7184 |
6591 { |
7185 { |
6592 identifier_c param_name("IN"); |
7186 identifier_c param_name("IN"); |
6593 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
7187 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
6594 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
7188 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6595 |
7189 symbol_c *IN_type_symbol = NULL; |
6596 /* Get the value from a foo(<param_value>) style call */ |
7190 |
6597 if (IN_param_value == NULL) |
7191 /* Get the value from a foo(<param_value>) style call */ |
6598 IN_param_value = function_call_param_iterator.next(); |
7192 if (IN_param_value == NULL) |
6599 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
7193 IN_param_value = function_call_param_iterator.next(); |
6600 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
7194 if (IN_param_value != NULL) { |
6601 |
7195 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6602 if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol)) |
7196 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
7197 } |
|
7198 |
|
7199 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol)) |
6603 { |
7200 { |
6604 |
7201 |
6605 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name; |
7202 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name; |
6606 return return_type_symbol; |
7203 return return_type_symbol; |
6607 |
7204 |
6623 |
7220 |
6624 { |
7221 { |
6625 identifier_c param_name("IN"); |
7222 identifier_c param_name("IN"); |
6626 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
7223 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
6627 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
7224 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6628 |
7225 symbol_c *IN_type_symbol = NULL; |
6629 /* Get the value from a foo(<param_value>) style call */ |
7226 |
6630 if (IN_param_value == NULL) |
7227 /* Get the value from a foo(<param_value>) style call */ |
6631 IN_param_value = function_call_param_iterator.next(); |
7228 if (IN_param_value == NULL) |
6632 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
7229 IN_param_value = function_call_param_iterator.next(); |
6633 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
7230 if (IN_param_value != NULL) { |
6634 |
7231 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6635 if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol)) |
7232 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
7233 } |
|
7234 |
|
7235 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol)) |
6636 { |
7236 { |
6637 |
7237 |
6638 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name; |
7238 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name; |
6639 return return_type_symbol; |
7239 return return_type_symbol; |
6640 |
7240 |
6656 |
7256 |
6657 { |
7257 { |
6658 identifier_c param_name("IN"); |
7258 identifier_c param_name("IN"); |
6659 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
7259 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
6660 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
7260 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6661 |
7261 symbol_c *IN_type_symbol = NULL; |
6662 /* Get the value from a foo(<param_value>) style call */ |
7262 |
6663 if (IN_param_value == NULL) |
7263 /* Get the value from a foo(<param_value>) style call */ |
6664 IN_param_value = function_call_param_iterator.next(); |
7264 if (IN_param_value == NULL) |
6665 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
7265 IN_param_value = function_call_param_iterator.next(); |
6666 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
7266 if (IN_param_value != NULL) { |
6667 |
7267 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6668 if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol)) |
7268 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
7269 } |
|
7270 |
|
7271 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol)) |
6669 { |
7272 { |
6670 |
7273 |
6671 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name; |
7274 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name; |
6672 return return_type_symbol; |
7275 return return_type_symbol; |
6673 |
7276 |
6689 |
7292 |
6690 { |
7293 { |
6691 identifier_c param_name("IN"); |
7294 identifier_c param_name("IN"); |
6692 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
7295 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
6693 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
7296 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6694 |
7297 symbol_c *IN_type_symbol = NULL; |
6695 /* Get the value from a foo(<param_value>) style call */ |
7298 |
6696 if (IN_param_value == NULL) |
7299 /* Get the value from a foo(<param_value>) style call */ |
6697 IN_param_value = function_call_param_iterator.next(); |
7300 if (IN_param_value == NULL) |
6698 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
7301 IN_param_value = function_call_param_iterator.next(); |
6699 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
7302 if (IN_param_value != NULL) { |
6700 |
7303 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6701 if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol)) |
7304 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
7305 } |
|
7306 |
|
7307 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol)) |
6702 { |
7308 { |
6703 |
7309 |
6704 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name; |
7310 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name; |
6705 return return_type_symbol; |
7311 return return_type_symbol; |
6706 |
7312 |
6722 |
7328 |
6723 { |
7329 { |
6724 identifier_c param_name("IN"); |
7330 identifier_c param_name("IN"); |
6725 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
7331 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
6726 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
7332 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6727 |
7333 symbol_c *IN_type_symbol = NULL; |
6728 /* Get the value from a foo(<param_value>) style call */ |
7334 |
6729 if (IN_param_value == NULL) |
7335 /* Get the value from a foo(<param_value>) style call */ |
6730 IN_param_value = function_call_param_iterator.next(); |
7336 if (IN_param_value == NULL) |
6731 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
7337 IN_param_value = function_call_param_iterator.next(); |
6732 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
7338 if (IN_param_value != NULL) { |
6733 |
7339 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6734 if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol)) |
7340 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
7341 } |
|
7342 |
|
7343 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol)) |
6735 { |
7344 { |
6736 |
7345 |
6737 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name; |
7346 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name; |
6738 return return_type_symbol; |
7347 return return_type_symbol; |
6739 |
7348 |
6755 |
7364 |
6756 { |
7365 { |
6757 identifier_c param_name("IN"); |
7366 identifier_c param_name("IN"); |
6758 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
7367 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
6759 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
7368 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6760 |
7369 symbol_c *IN_type_symbol = NULL; |
6761 /* Get the value from a foo(<param_value>) style call */ |
7370 |
6762 if (IN_param_value == NULL) |
7371 /* Get the value from a foo(<param_value>) style call */ |
6763 IN_param_value = function_call_param_iterator.next(); |
7372 if (IN_param_value == NULL) |
6764 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
7373 IN_param_value = function_call_param_iterator.next(); |
6765 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
7374 if (IN_param_value != NULL) { |
6766 |
7375 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6767 if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol)) |
7376 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
7377 } |
|
7378 |
|
7379 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol)) |
6768 { |
7380 { |
6769 |
7381 |
6770 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name; |
7382 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name; |
6771 return return_type_symbol; |
7383 return return_type_symbol; |
6772 |
7384 |
6788 |
7400 |
6789 { |
7401 { |
6790 identifier_c param_name("IN"); |
7402 identifier_c param_name("IN"); |
6791 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
7403 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
6792 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
7404 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6793 |
7405 symbol_c *IN_type_symbol = NULL; |
6794 /* Get the value from a foo(<param_value>) style call */ |
7406 |
6795 if (IN_param_value == NULL) |
7407 /* Get the value from a foo(<param_value>) style call */ |
6796 IN_param_value = function_call_param_iterator.next(); |
7408 if (IN_param_value == NULL) |
6797 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
7409 IN_param_value = function_call_param_iterator.next(); |
6798 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
7410 if (IN_param_value != NULL) { |
6799 |
7411 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6800 if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol)) |
7412 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
7413 } |
|
7414 |
|
7415 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol)) |
6801 { |
7416 { |
6802 |
7417 |
6803 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name; |
7418 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name; |
6804 return return_type_symbol; |
7419 return return_type_symbol; |
6805 |
7420 |
6821 |
7436 |
6822 { |
7437 { |
6823 identifier_c param_name("IN"); |
7438 identifier_c param_name("IN"); |
6824 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
7439 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
6825 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
7440 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6826 |
7441 symbol_c *IN_type_symbol = NULL; |
6827 /* Get the value from a foo(<param_value>) style call */ |
7442 |
6828 if (IN_param_value == NULL) |
7443 /* Get the value from a foo(<param_value>) style call */ |
6829 IN_param_value = function_call_param_iterator.next(); |
7444 if (IN_param_value == NULL) |
6830 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
7445 IN_param_value = function_call_param_iterator.next(); |
6831 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
7446 if (IN_param_value != NULL) { |
6832 |
7447 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6833 if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol)) |
7448 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
7449 } |
|
7450 |
|
7451 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol)) |
6834 { |
7452 { |
6835 |
7453 |
6836 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name; |
7454 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name; |
6837 return return_type_symbol; |
7455 return return_type_symbol; |
6838 |
7456 |
6854 |
7472 |
6855 { |
7473 { |
6856 identifier_c param_name("IN"); |
7474 identifier_c param_name("IN"); |
6857 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
7475 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
6858 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
7476 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6859 |
7477 symbol_c *IN_type_symbol = NULL; |
6860 /* Get the value from a foo(<param_value>) style call */ |
7478 |
6861 if (IN_param_value == NULL) |
7479 /* Get the value from a foo(<param_value>) style call */ |
6862 IN_param_value = function_call_param_iterator.next(); |
7480 if (IN_param_value == NULL) |
6863 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
7481 IN_param_value = function_call_param_iterator.next(); |
6864 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
7482 if (IN_param_value != NULL) { |
6865 |
7483 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6866 if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol)) |
7484 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
7485 } |
|
7486 |
|
7487 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol)) |
6867 { |
7488 { |
6868 |
7489 |
6869 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name; |
7490 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name; |
6870 return return_type_symbol; |
7491 return return_type_symbol; |
6871 |
7492 |
6887 |
7508 |
6888 { |
7509 { |
6889 identifier_c param_name("IN"); |
7510 identifier_c param_name("IN"); |
6890 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
7511 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
6891 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
7512 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6892 |
7513 symbol_c *IN_type_symbol = NULL; |
6893 /* Get the value from a foo(<param_value>) style call */ |
7514 |
6894 if (IN_param_value == NULL) |
7515 /* Get the value from a foo(<param_value>) style call */ |
6895 IN_param_value = function_call_param_iterator.next(); |
7516 if (IN_param_value == NULL) |
6896 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
7517 IN_param_value = function_call_param_iterator.next(); |
6897 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
7518 if (IN_param_value != NULL) { |
6898 |
7519 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6899 if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol)) |
7520 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
7521 } |
|
7522 |
|
7523 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol)) |
6900 { |
7524 { |
6901 |
7525 |
6902 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
7526 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
6903 return return_type_symbol; |
7527 return return_type_symbol; |
6904 |
7528 |
6920 |
7544 |
6921 { |
7545 { |
6922 identifier_c param_name("IN"); |
7546 identifier_c param_name("IN"); |
6923 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
7547 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
6924 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
7548 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6925 |
7549 symbol_c *IN_type_symbol = NULL; |
6926 /* Get the value from a foo(<param_value>) style call */ |
7550 |
6927 if (IN_param_value == NULL) |
7551 /* Get the value from a foo(<param_value>) style call */ |
6928 IN_param_value = function_call_param_iterator.next(); |
7552 if (IN_param_value == NULL) |
6929 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
7553 IN_param_value = function_call_param_iterator.next(); |
6930 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
7554 if (IN_param_value != NULL) { |
6931 |
7555 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6932 if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol)) |
7556 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
7557 } |
|
7558 |
|
7559 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol)) |
6933 { |
7560 { |
6934 |
7561 |
6935 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name; |
7562 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name; |
6936 return return_type_symbol; |
7563 return return_type_symbol; |
6937 |
7564 |
6953 |
7580 |
6954 { |
7581 { |
6955 identifier_c param_name("IN"); |
7582 identifier_c param_name("IN"); |
6956 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
7583 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
6957 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
7584 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6958 |
7585 symbol_c *IN_type_symbol = NULL; |
6959 /* Get the value from a foo(<param_value>) style call */ |
7586 |
6960 if (IN_param_value == NULL) |
7587 /* Get the value from a foo(<param_value>) style call */ |
6961 IN_param_value = function_call_param_iterator.next(); |
7588 if (IN_param_value == NULL) |
6962 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
7589 IN_param_value = function_call_param_iterator.next(); |
6963 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
7590 if (IN_param_value != NULL) { |
6964 |
7591 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6965 if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol)) |
7592 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
7593 } |
|
7594 |
|
7595 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol)) |
6966 { |
7596 { |
6967 |
7597 |
6968 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name; |
7598 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name; |
6969 return return_type_symbol; |
7599 return return_type_symbol; |
6970 |
7600 |
6986 |
7616 |
6987 { |
7617 { |
6988 identifier_c param_name("IN"); |
7618 identifier_c param_name("IN"); |
6989 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
7619 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
6990 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
7620 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
6991 |
7621 symbol_c *IN_type_symbol = NULL; |
6992 /* Get the value from a foo(<param_value>) style call */ |
7622 |
6993 if (IN_param_value == NULL) |
7623 /* Get the value from a foo(<param_value>) style call */ |
6994 IN_param_value = function_call_param_iterator.next(); |
7624 if (IN_param_value == NULL) |
6995 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
7625 IN_param_value = function_call_param_iterator.next(); |
6996 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
7626 if (IN_param_value != NULL) { |
6997 |
7627 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
6998 if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol)) |
7628 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
7629 } |
|
7630 |
|
7631 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol)) |
6999 { |
7632 { |
7000 |
7633 |
7001 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name; |
7634 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name; |
7002 return return_type_symbol; |
7635 return return_type_symbol; |
7003 |
7636 |
7019 |
7652 |
7020 { |
7653 { |
7021 identifier_c param_name("IN"); |
7654 identifier_c param_name("IN"); |
7022 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
7655 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
7023 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
7656 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
7024 |
7657 symbol_c *IN_type_symbol = NULL; |
7025 /* Get the value from a foo(<param_value>) style call */ |
7658 |
7026 if (IN_param_value == NULL) |
7659 /* Get the value from a foo(<param_value>) style call */ |
7027 IN_param_value = function_call_param_iterator.next(); |
7660 if (IN_param_value == NULL) |
7028 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
7661 IN_param_value = function_call_param_iterator.next(); |
7029 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
7662 if (IN_param_value != NULL) { |
7030 |
7663 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
7031 if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol)) |
7664 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
7665 } |
|
7666 |
|
7667 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol)) |
7032 { |
7668 { |
7033 |
7669 |
7034 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name; |
7670 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name; |
7035 return return_type_symbol; |
7671 return return_type_symbol; |
7036 |
7672 |
7052 |
7688 |
7053 { |
7689 { |
7054 identifier_c param_name("IN"); |
7690 identifier_c param_name("IN"); |
7055 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
7691 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
7056 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
7692 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
7057 |
7693 symbol_c *IN_type_symbol = NULL; |
7058 /* Get the value from a foo(<param_value>) style call */ |
7694 |
7059 if (IN_param_value == NULL) |
7695 /* Get the value from a foo(<param_value>) style call */ |
7060 IN_param_value = function_call_param_iterator.next(); |
7696 if (IN_param_value == NULL) |
7061 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
7697 IN_param_value = function_call_param_iterator.next(); |
7062 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
7698 if (IN_param_value != NULL) { |
7063 |
7699 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
7064 if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol)) |
7700 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
7701 } |
|
7702 |
|
7703 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol)) |
7065 { |
7704 { |
7066 |
7705 |
7067 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name; |
7706 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name; |
7068 return return_type_symbol; |
7707 return return_type_symbol; |
7069 |
7708 |
7085 |
7724 |
7086 { |
7725 { |
7087 identifier_c param_name("IN"); |
7726 identifier_c param_name("IN"); |
7088 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
7727 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
7089 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
7728 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
7090 |
7729 symbol_c *IN_type_symbol = NULL; |
7091 /* Get the value from a foo(<param_value>) style call */ |
7730 |
7092 if (IN_param_value == NULL) |
7731 /* Get the value from a foo(<param_value>) style call */ |
7093 IN_param_value = function_call_param_iterator.next(); |
7732 if (IN_param_value == NULL) |
7094 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
7733 IN_param_value = function_call_param_iterator.next(); |
7095 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
7734 if (IN_param_value != NULL) { |
7096 |
7735 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
7097 if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol)) |
7736 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
7737 } |
|
7738 |
|
7739 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol)) |
7098 { |
7740 { |
7099 |
7741 |
7100 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name; |
7742 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name; |
7101 return return_type_symbol; |
7743 return return_type_symbol; |
7102 |
7744 |
7118 |
7760 |
7119 { |
7761 { |
7120 identifier_c param_name("IN"); |
7762 identifier_c param_name("IN"); |
7121 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
7763 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
7122 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
7764 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
7123 |
7765 symbol_c *IN_type_symbol = NULL; |
7124 /* Get the value from a foo(<param_value>) style call */ |
7766 |
7125 if (IN_param_value == NULL) |
7767 /* Get the value from a foo(<param_value>) style call */ |
7126 IN_param_value = function_call_param_iterator.next(); |
7768 if (IN_param_value == NULL) |
7127 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
7769 IN_param_value = function_call_param_iterator.next(); |
7128 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
7770 if (IN_param_value != NULL) { |
7129 |
7771 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
7130 if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol)) |
7772 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
7773 } |
|
7774 |
|
7775 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol)) |
7131 { |
7776 { |
7132 |
7777 |
7133 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
7778 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
7134 return return_type_symbol; |
7779 return return_type_symbol; |
7135 |
7780 |
7151 |
7796 |
7152 { |
7797 { |
7153 identifier_c param_name("IN"); |
7798 identifier_c param_name("IN"); |
7154 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
7799 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
7155 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
7800 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
7156 |
7801 symbol_c *IN_type_symbol = NULL; |
7157 /* Get the value from a foo(<param_value>) style call */ |
7802 |
7158 if (IN_param_value == NULL) |
7803 /* Get the value from a foo(<param_value>) style call */ |
7159 IN_param_value = function_call_param_iterator.next(); |
7804 if (IN_param_value == NULL) |
7160 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
7805 IN_param_value = function_call_param_iterator.next(); |
7161 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
7806 if (IN_param_value != NULL) { |
7162 |
7807 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
7163 if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol)) |
7808 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
7809 } |
|
7810 |
|
7811 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol)) |
7164 { |
7812 { |
7165 |
7813 |
7166 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name; |
7814 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name; |
7167 return return_type_symbol; |
7815 return return_type_symbol; |
7168 |
7816 |
7184 |
7832 |
7185 { |
7833 { |
7186 identifier_c param_name("IN"); |
7834 identifier_c param_name("IN"); |
7187 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
7835 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
7188 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
7836 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
7189 |
7837 symbol_c *IN_type_symbol = NULL; |
7190 /* Get the value from a foo(<param_value>) style call */ |
7838 |
7191 if (IN_param_value == NULL) |
7839 /* Get the value from a foo(<param_value>) style call */ |
7192 IN_param_value = function_call_param_iterator.next(); |
7840 if (IN_param_value == NULL) |
7193 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
7841 IN_param_value = function_call_param_iterator.next(); |
7194 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
7842 if (IN_param_value != NULL) { |
7195 |
7843 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
7196 if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol)) |
7844 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
7845 } |
|
7846 |
|
7847 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol)) |
7197 { |
7848 { |
7198 |
7849 |
7199 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name; |
7850 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name; |
7200 return return_type_symbol; |
7851 return return_type_symbol; |
7201 |
7852 |
7217 |
7868 |
7218 { |
7869 { |
7219 identifier_c param_name("IN"); |
7870 identifier_c param_name("IN"); |
7220 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
7871 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
7221 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
7872 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
7222 |
7873 symbol_c *IN_type_symbol = NULL; |
7223 /* Get the value from a foo(<param_value>) style call */ |
7874 |
7224 if (IN_param_value == NULL) |
7875 /* Get the value from a foo(<param_value>) style call */ |
7225 IN_param_value = function_call_param_iterator.next(); |
7876 if (IN_param_value == NULL) |
7226 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
7877 IN_param_value = function_call_param_iterator.next(); |
7227 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
7878 if (IN_param_value != NULL) { |
7228 |
7879 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
7229 if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol)) |
7880 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
7881 } |
|
7882 |
|
7883 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol)) |
7230 { |
7884 { |
7231 |
7885 |
7232 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name; |
7886 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name; |
7233 return return_type_symbol; |
7887 return return_type_symbol; |
7234 |
7888 |
7250 |
7904 |
7251 { |
7905 { |
7252 identifier_c param_name("IN"); |
7906 identifier_c param_name("IN"); |
7253 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
7907 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
7254 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
7908 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
7255 |
7909 symbol_c *IN_type_symbol = NULL; |
7256 /* Get the value from a foo(<param_value>) style call */ |
7910 |
7257 if (IN_param_value == NULL) |
7911 /* Get the value from a foo(<param_value>) style call */ |
7258 IN_param_value = function_call_param_iterator.next(); |
7912 if (IN_param_value == NULL) |
7259 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
7913 IN_param_value = function_call_param_iterator.next(); |
7260 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
7914 if (IN_param_value != NULL) { |
7261 |
7915 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
7262 if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol)) |
7916 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
7917 } |
|
7918 |
|
7919 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol)) |
7263 { |
7920 { |
7264 |
7921 |
7265 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name; |
7922 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name; |
7266 return return_type_symbol; |
7923 return return_type_symbol; |
7267 |
7924 |
7283 |
7940 |
7284 { |
7941 { |
7285 identifier_c param_name("IN"); |
7942 identifier_c param_name("IN"); |
7286 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
7943 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
7287 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
7944 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
7288 |
7945 symbol_c *IN_type_symbol = NULL; |
7289 /* Get the value from a foo(<param_value>) style call */ |
7946 |
7290 if (IN_param_value == NULL) |
7947 /* Get the value from a foo(<param_value>) style call */ |
7291 IN_param_value = function_call_param_iterator.next(); |
7948 if (IN_param_value == NULL) |
7292 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
7949 IN_param_value = function_call_param_iterator.next(); |
7293 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
7950 if (IN_param_value != NULL) { |
7294 |
7951 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
7295 if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol)) |
7952 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
7953 } |
|
7954 |
|
7955 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol)) |
7296 { |
7956 { |
7297 |
7957 |
7298 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name; |
7958 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name; |
7299 return return_type_symbol; |
7959 return return_type_symbol; |
7300 |
7960 |
7316 |
7976 |
7317 { |
7977 { |
7318 identifier_c param_name("IN"); |
7978 identifier_c param_name("IN"); |
7319 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
7979 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
7320 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
7980 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
7321 |
7981 symbol_c *IN_type_symbol = NULL; |
7322 /* Get the value from a foo(<param_value>) style call */ |
7982 |
7323 if (IN_param_value == NULL) |
7983 /* Get the value from a foo(<param_value>) style call */ |
7324 IN_param_value = function_call_param_iterator.next(); |
7984 if (IN_param_value == NULL) |
7325 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
7985 IN_param_value = function_call_param_iterator.next(); |
7326 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
7986 if (IN_param_value != NULL) { |
7327 |
7987 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
7328 if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol)) |
7988 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
7989 } |
|
7990 |
|
7991 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol)) |
7329 { |
7992 { |
7330 |
7993 |
7331 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name; |
7994 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name; |
7332 return return_type_symbol; |
7995 return return_type_symbol; |
7333 |
7996 |
7349 |
8012 |
7350 { |
8013 { |
7351 identifier_c param_name("IN"); |
8014 identifier_c param_name("IN"); |
7352 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
8015 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
7353 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
8016 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
7354 |
8017 symbol_c *IN_type_symbol = NULL; |
7355 /* Get the value from a foo(<param_value>) style call */ |
8018 |
7356 if (IN_param_value == NULL) |
8019 /* Get the value from a foo(<param_value>) style call */ |
7357 IN_param_value = function_call_param_iterator.next(); |
8020 if (IN_param_value == NULL) |
7358 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
8021 IN_param_value = function_call_param_iterator.next(); |
7359 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
8022 if (IN_param_value != NULL) { |
7360 |
8023 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
7361 if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol)) |
8024 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
8025 } |
|
8026 |
|
8027 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol)) |
7362 { |
8028 { |
7363 |
8029 |
7364 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name; |
8030 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name; |
7365 return return_type_symbol; |
8031 return return_type_symbol; |
7366 |
8032 |
7382 |
8048 |
7383 { |
8049 { |
7384 identifier_c param_name("IN"); |
8050 identifier_c param_name("IN"); |
7385 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
8051 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
7386 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
8052 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
7387 |
8053 symbol_c *IN_type_symbol = NULL; |
7388 /* Get the value from a foo(<param_value>) style call */ |
8054 |
7389 if (IN_param_value == NULL) |
8055 /* Get the value from a foo(<param_value>) style call */ |
7390 IN_param_value = function_call_param_iterator.next(); |
8056 if (IN_param_value == NULL) |
7391 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
8057 IN_param_value = function_call_param_iterator.next(); |
7392 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
8058 if (IN_param_value != NULL) { |
7393 |
8059 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
7394 if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol)) |
8060 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
8061 } |
|
8062 |
|
8063 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol)) |
7395 { |
8064 { |
7396 |
8065 |
7397 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name; |
8066 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name; |
7398 return return_type_symbol; |
8067 return return_type_symbol; |
7399 |
8068 |
7415 |
8084 |
7416 { |
8085 { |
7417 identifier_c param_name("IN"); |
8086 identifier_c param_name("IN"); |
7418 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
8087 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
7419 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
8088 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
7420 |
8089 symbol_c *IN_type_symbol = NULL; |
7421 /* Get the value from a foo(<param_value>) style call */ |
8090 |
7422 if (IN_param_value == NULL) |
8091 /* Get the value from a foo(<param_value>) style call */ |
7423 IN_param_value = function_call_param_iterator.next(); |
8092 if (IN_param_value == NULL) |
7424 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
8093 IN_param_value = function_call_param_iterator.next(); |
7425 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
8094 if (IN_param_value != NULL) { |
7426 |
8095 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
7427 if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol)) |
8096 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
8097 } |
|
8098 |
|
8099 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol)) |
7428 { |
8100 { |
7429 |
8101 |
7430 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name; |
8102 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name; |
7431 return return_type_symbol; |
8103 return return_type_symbol; |
7432 |
8104 |
7448 |
8120 |
7449 { |
8121 { |
7450 identifier_c param_name("IN"); |
8122 identifier_c param_name("IN"); |
7451 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
8123 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
7452 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
8124 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
7453 |
8125 symbol_c *IN_type_symbol = NULL; |
7454 /* Get the value from a foo(<param_value>) style call */ |
8126 |
7455 if (IN_param_value == NULL) |
8127 /* Get the value from a foo(<param_value>) style call */ |
7456 IN_param_value = function_call_param_iterator.next(); |
8128 if (IN_param_value == NULL) |
7457 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
8129 IN_param_value = function_call_param_iterator.next(); |
7458 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
8130 if (IN_param_value != NULL) { |
7459 |
8131 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
7460 if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol)) |
8132 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
8133 } |
|
8134 |
|
8135 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol)) |
7461 { |
8136 { |
7462 |
8137 |
7463 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name; |
8138 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name; |
7464 return return_type_symbol; |
8139 return return_type_symbol; |
7465 |
8140 |
7481 |
8156 |
7482 { |
8157 { |
7483 identifier_c param_name("IN"); |
8158 identifier_c param_name("IN"); |
7484 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
8159 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
7485 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
8160 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
7486 |
8161 symbol_c *IN_type_symbol = NULL; |
7487 /* Get the value from a foo(<param_value>) style call */ |
8162 |
7488 if (IN_param_value == NULL) |
8163 /* Get the value from a foo(<param_value>) style call */ |
7489 IN_param_value = function_call_param_iterator.next(); |
8164 if (IN_param_value == NULL) |
7490 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
8165 IN_param_value = function_call_param_iterator.next(); |
7491 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
8166 if (IN_param_value != NULL) { |
7492 |
8167 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
7493 if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol)) |
8168 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
8169 } |
|
8170 |
|
8171 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol)) |
7494 { |
8172 { |
7495 |
8173 |
7496 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name; |
8174 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name; |
7497 return return_type_symbol; |
8175 return return_type_symbol; |
7498 |
8176 |
7514 |
8192 |
7515 { |
8193 { |
7516 identifier_c param_name("IN"); |
8194 identifier_c param_name("IN"); |
7517 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
8195 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
7518 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
8196 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
7519 |
8197 symbol_c *IN_type_symbol = NULL; |
7520 /* Get the value from a foo(<param_value>) style call */ |
8198 |
7521 if (IN_param_value == NULL) |
8199 /* Get the value from a foo(<param_value>) style call */ |
7522 IN_param_value = function_call_param_iterator.next(); |
8200 if (IN_param_value == NULL) |
7523 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
8201 IN_param_value = function_call_param_iterator.next(); |
7524 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
8202 if (IN_param_value != NULL) { |
7525 |
8203 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
7526 if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol)) |
8204 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
8205 } |
|
8206 |
|
8207 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol)) |
7527 { |
8208 { |
7528 |
8209 |
7529 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
8210 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
7530 return return_type_symbol; |
8211 return return_type_symbol; |
7531 |
8212 |
7547 |
8228 |
7548 { |
8229 { |
7549 identifier_c param_name("IN"); |
8230 identifier_c param_name("IN"); |
7550 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
8231 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
7551 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
8232 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
7552 |
8233 symbol_c *IN_type_symbol = NULL; |
7553 /* Get the value from a foo(<param_value>) style call */ |
8234 |
7554 if (IN_param_value == NULL) |
8235 /* Get the value from a foo(<param_value>) style call */ |
7555 IN_param_value = function_call_param_iterator.next(); |
8236 if (IN_param_value == NULL) |
7556 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
8237 IN_param_value = function_call_param_iterator.next(); |
7557 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
8238 if (IN_param_value != NULL) { |
7558 |
8239 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
7559 if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol)) |
8240 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
8241 } |
|
8242 |
|
8243 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol)) |
7560 { |
8244 { |
7561 |
8245 |
7562 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name; |
8246 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name; |
7563 return return_type_symbol; |
8247 return return_type_symbol; |
7564 |
8248 |
7580 |
8264 |
7581 { |
8265 { |
7582 identifier_c param_name("IN"); |
8266 identifier_c param_name("IN"); |
7583 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
8267 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
7584 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
8268 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
7585 |
8269 symbol_c *IN_type_symbol = NULL; |
7586 /* Get the value from a foo(<param_value>) style call */ |
8270 |
7587 if (IN_param_value == NULL) |
8271 /* Get the value from a foo(<param_value>) style call */ |
7588 IN_param_value = function_call_param_iterator.next(); |
8272 if (IN_param_value == NULL) |
7589 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
8273 IN_param_value = function_call_param_iterator.next(); |
7590 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
8274 if (IN_param_value != NULL) { |
7591 |
8275 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
7592 if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol)) |
8276 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
8277 } |
|
8278 |
|
8279 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol)) |
7593 { |
8280 { |
7594 |
8281 |
7595 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name; |
8282 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name; |
7596 return return_type_symbol; |
8283 return return_type_symbol; |
7597 |
8284 |
7613 |
8300 |
7614 { |
8301 { |
7615 identifier_c param_name("IN"); |
8302 identifier_c param_name("IN"); |
7616 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
8303 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
7617 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
8304 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
7618 |
8305 symbol_c *IN_type_symbol = NULL; |
7619 /* Get the value from a foo(<param_value>) style call */ |
8306 |
7620 if (IN_param_value == NULL) |
8307 /* Get the value from a foo(<param_value>) style call */ |
7621 IN_param_value = function_call_param_iterator.next(); |
8308 if (IN_param_value == NULL) |
7622 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
8309 IN_param_value = function_call_param_iterator.next(); |
7623 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
8310 if (IN_param_value != NULL) { |
7624 |
8311 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
7625 if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol)) |
8312 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
8313 } |
|
8314 |
|
8315 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol)) |
7626 { |
8316 { |
7627 |
8317 |
7628 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name; |
8318 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name; |
7629 return return_type_symbol; |
8319 return return_type_symbol; |
7630 |
8320 |
7646 |
8336 |
7647 { |
8337 { |
7648 identifier_c param_name("IN"); |
8338 identifier_c param_name("IN"); |
7649 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
8339 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
7650 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
8340 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
7651 |
8341 symbol_c *IN_type_symbol = NULL; |
7652 /* Get the value from a foo(<param_value>) style call */ |
8342 |
7653 if (IN_param_value == NULL) |
8343 /* Get the value from a foo(<param_value>) style call */ |
7654 IN_param_value = function_call_param_iterator.next(); |
8344 if (IN_param_value == NULL) |
7655 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
8345 IN_param_value = function_call_param_iterator.next(); |
7656 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
8346 if (IN_param_value != NULL) { |
7657 |
8347 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
7658 if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol)) |
8348 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
8349 } |
|
8350 |
|
8351 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol)) |
7659 { |
8352 { |
7660 |
8353 |
7661 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name; |
8354 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name; |
7662 return return_type_symbol; |
8355 return return_type_symbol; |
7663 |
8356 |
7679 |
8372 |
7680 { |
8373 { |
7681 identifier_c param_name("IN"); |
8374 identifier_c param_name("IN"); |
7682 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
8375 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
7683 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
8376 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
7684 |
8377 symbol_c *IN_type_symbol = NULL; |
7685 /* Get the value from a foo(<param_value>) style call */ |
8378 |
7686 if (IN_param_value == NULL) |
8379 /* Get the value from a foo(<param_value>) style call */ |
7687 IN_param_value = function_call_param_iterator.next(); |
8380 if (IN_param_value == NULL) |
7688 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
8381 IN_param_value = function_call_param_iterator.next(); |
7689 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
8382 if (IN_param_value != NULL) { |
7690 |
8383 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
7691 if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol)) |
8384 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
8385 } |
|
8386 |
|
8387 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol)) |
7692 { |
8388 { |
7693 |
8389 |
7694 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name; |
8390 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name; |
7695 return return_type_symbol; |
8391 return return_type_symbol; |
7696 |
8392 |
7712 |
8408 |
7713 { |
8409 { |
7714 identifier_c param_name("IN"); |
8410 identifier_c param_name("IN"); |
7715 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
8411 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
7716 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
8412 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
7717 |
8413 symbol_c *IN_type_symbol = NULL; |
7718 /* Get the value from a foo(<param_value>) style call */ |
8414 |
7719 if (IN_param_value == NULL) |
8415 /* Get the value from a foo(<param_value>) style call */ |
7720 IN_param_value = function_call_param_iterator.next(); |
8416 if (IN_param_value == NULL) |
7721 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
8417 IN_param_value = function_call_param_iterator.next(); |
7722 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
8418 if (IN_param_value != NULL) { |
7723 |
8419 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
7724 if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol)) |
8420 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
8421 } |
|
8422 |
|
8423 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol)) |
7725 { |
8424 { |
7726 |
8425 |
7727 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name; |
8426 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name; |
7728 return return_type_symbol; |
8427 return return_type_symbol; |
7729 |
8428 |
7745 |
8444 |
7746 { |
8445 { |
7747 identifier_c param_name("IN"); |
8446 identifier_c param_name("IN"); |
7748 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
8447 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
7749 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
8448 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
7750 |
8449 symbol_c *IN_type_symbol = NULL; |
7751 /* Get the value from a foo(<param_value>) style call */ |
8450 |
7752 if (IN_param_value == NULL) |
8451 /* Get the value from a foo(<param_value>) style call */ |
7753 IN_param_value = function_call_param_iterator.next(); |
8452 if (IN_param_value == NULL) |
7754 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
8453 IN_param_value = function_call_param_iterator.next(); |
7755 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
8454 if (IN_param_value != NULL) { |
7756 |
8455 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
7757 if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol)) |
8456 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
8457 } |
|
8458 |
|
8459 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol)) |
7758 { |
8460 { |
7759 |
8461 |
7760 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
8462 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
7761 return return_type_symbol; |
8463 return return_type_symbol; |
7762 |
8464 |
7778 |
8480 |
7779 { |
8481 { |
7780 identifier_c param_name("IN"); |
8482 identifier_c param_name("IN"); |
7781 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
8483 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
7782 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
8484 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
7783 |
8485 symbol_c *IN_type_symbol = NULL; |
7784 /* Get the value from a foo(<param_value>) style call */ |
8486 |
7785 if (IN_param_value == NULL) |
8487 /* Get the value from a foo(<param_value>) style call */ |
7786 IN_param_value = function_call_param_iterator.next(); |
8488 if (IN_param_value == NULL) |
7787 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
8489 IN_param_value = function_call_param_iterator.next(); |
7788 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
8490 if (IN_param_value != NULL) { |
7789 |
8491 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
7790 if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol)) |
8492 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
8493 } |
|
8494 |
|
8495 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol)) |
7791 { |
8496 { |
7792 |
8497 |
7793 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name; |
8498 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name; |
7794 return return_type_symbol; |
8499 return return_type_symbol; |
7795 |
8500 |
7811 |
8516 |
7812 { |
8517 { |
7813 identifier_c param_name("IN"); |
8518 identifier_c param_name("IN"); |
7814 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
8519 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
7815 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
8520 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
7816 |
8521 symbol_c *IN_type_symbol = NULL; |
7817 /* Get the value from a foo(<param_value>) style call */ |
8522 |
7818 if (IN_param_value == NULL) |
8523 /* Get the value from a foo(<param_value>) style call */ |
7819 IN_param_value = function_call_param_iterator.next(); |
8524 if (IN_param_value == NULL) |
7820 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
8525 IN_param_value = function_call_param_iterator.next(); |
7821 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
8526 if (IN_param_value != NULL) { |
7822 |
8527 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
7823 if(search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol)) |
8528 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
8529 } |
|
8530 |
|
8531 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol)) |
7824 { |
8532 { |
7825 |
8533 |
7826 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name; |
8534 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name; |
7827 return return_type_symbol; |
8535 return return_type_symbol; |
7828 |
8536 |
7844 |
8552 |
7845 { |
8553 { |
7846 identifier_c param_name("IN"); |
8554 identifier_c param_name("IN"); |
7847 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
8555 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
7848 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
8556 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
7849 |
8557 symbol_c *IN_type_symbol = NULL; |
7850 /* Get the value from a foo(<param_value>) style call */ |
8558 |
7851 if (IN_param_value == NULL) |
8559 /* Get the value from a foo(<param_value>) style call */ |
7852 IN_param_value = function_call_param_iterator.next(); |
8560 if (IN_param_value == NULL) |
7853 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
8561 IN_param_value = function_call_param_iterator.next(); |
7854 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
8562 if (IN_param_value != NULL) { |
7855 |
8563 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
7856 if(search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol)) |
8564 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
8565 } |
|
8566 |
|
8567 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol)) |
7857 { |
8568 { |
7858 |
8569 |
7859 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name; |
8570 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name; |
7860 return return_type_symbol; |
8571 return return_type_symbol; |
7861 |
8572 |
7877 |
8588 |
7878 { |
8589 { |
7879 identifier_c param_name("IN"); |
8590 identifier_c param_name("IN"); |
7880 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
8591 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
7881 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
8592 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
7882 |
8593 symbol_c *IN_type_symbol = NULL; |
7883 /* Get the value from a foo(<param_value>) style call */ |
8594 |
7884 if (IN_param_value == NULL) |
8595 /* Get the value from a foo(<param_value>) style call */ |
7885 IN_param_value = function_call_param_iterator.next(); |
8596 if (IN_param_value == NULL) |
7886 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
8597 IN_param_value = function_call_param_iterator.next(); |
7887 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
8598 if (IN_param_value != NULL) { |
7888 |
8599 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
7889 if(search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol)) |
8600 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
8601 } |
|
8602 |
|
8603 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol)) |
7890 { |
8604 { |
7891 |
8605 |
7892 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name; |
8606 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name; |
7893 return return_type_symbol; |
8607 return return_type_symbol; |
7894 |
8608 |
7910 |
8624 |
7911 { |
8625 { |
7912 identifier_c param_name("IN"); |
8626 identifier_c param_name("IN"); |
7913 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
8627 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
7914 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
8628 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
7915 |
8629 symbol_c *IN_type_symbol = NULL; |
7916 /* Get the value from a foo(<param_value>) style call */ |
8630 |
7917 if (IN_param_value == NULL) |
8631 /* Get the value from a foo(<param_value>) style call */ |
7918 IN_param_value = function_call_param_iterator.next(); |
8632 if (IN_param_value == NULL) |
7919 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
8633 IN_param_value = function_call_param_iterator.next(); |
7920 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
8634 if (IN_param_value != NULL) { |
7921 |
8635 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
7922 if(search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol)) |
8636 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
8637 } |
|
8638 |
|
8639 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol)) |
7923 { |
8640 { |
7924 |
8641 |
7925 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name; |
8642 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name; |
7926 return return_type_symbol; |
8643 return return_type_symbol; |
7927 |
8644 |
7943 |
8660 |
7944 { |
8661 { |
7945 identifier_c param_name("IN"); |
8662 identifier_c param_name("IN"); |
7946 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
8663 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
7947 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
8664 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
7948 |
8665 symbol_c *IN_type_symbol = NULL; |
7949 /* Get the value from a foo(<param_value>) style call */ |
8666 |
7950 if (IN_param_value == NULL) |
8667 /* Get the value from a foo(<param_value>) style call */ |
7951 IN_param_value = function_call_param_iterator.next(); |
8668 if (IN_param_value == NULL) |
7952 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
8669 IN_param_value = function_call_param_iterator.next(); |
7953 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
8670 if (IN_param_value != NULL) { |
7954 |
8671 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
7955 if(search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol)) |
8672 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
8673 } |
|
8674 |
|
8675 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol)) |
7956 { |
8676 { |
7957 |
8677 |
7958 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name; |
8678 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name; |
7959 return return_type_symbol; |
8679 return return_type_symbol; |
7960 |
8680 |
7976 |
8696 |
7977 { |
8697 { |
7978 identifier_c param_name("IN"); |
8698 identifier_c param_name("IN"); |
7979 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
8699 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
7980 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
8700 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
7981 |
8701 symbol_c *IN_type_symbol = NULL; |
7982 /* Get the value from a foo(<param_value>) style call */ |
8702 |
7983 if (IN_param_value == NULL) |
8703 /* Get the value from a foo(<param_value>) style call */ |
7984 IN_param_value = function_call_param_iterator.next(); |
8704 if (IN_param_value == NULL) |
7985 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
8705 IN_param_value = function_call_param_iterator.next(); |
7986 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
8706 if (IN_param_value != NULL) { |
7987 |
8707 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
7988 if(search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol)) |
8708 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
8709 } |
|
8710 |
|
8711 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol)) |
7989 { |
8712 { |
7990 |
8713 |
7991 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name; |
8714 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name; |
7992 return return_type_symbol; |
8715 return return_type_symbol; |
7993 |
8716 |
8009 |
8732 |
8010 { |
8733 { |
8011 identifier_c param_name("IN"); |
8734 identifier_c param_name("IN"); |
8012 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
8735 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
8013 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
8736 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
8014 |
8737 symbol_c *IN_type_symbol = NULL; |
8015 /* Get the value from a foo(<param_value>) style call */ |
8738 |
8016 if (IN_param_value == NULL) |
8739 /* Get the value from a foo(<param_value>) style call */ |
8017 IN_param_value = function_call_param_iterator.next(); |
8740 if (IN_param_value == NULL) |
8018 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
8741 IN_param_value = function_call_param_iterator.next(); |
8019 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
8742 if (IN_param_value != NULL) { |
8020 |
8743 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
8021 if(search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol)) |
8744 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
8745 } |
|
8746 |
|
8747 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol)) |
8022 { |
8748 { |
8023 |
8749 |
8024 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name; |
8750 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name; |
8025 return return_type_symbol; |
8751 return return_type_symbol; |
8026 |
8752 |
8042 |
8768 |
8043 { |
8769 { |
8044 identifier_c param_name("IN"); |
8770 identifier_c param_name("IN"); |
8045 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
8771 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
8046 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
8772 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
8047 |
8773 symbol_c *IN_type_symbol = NULL; |
8048 /* Get the value from a foo(<param_value>) style call */ |
8774 |
8049 if (IN_param_value == NULL) |
8775 /* Get the value from a foo(<param_value>) style call */ |
8050 IN_param_value = function_call_param_iterator.next(); |
8776 if (IN_param_value == NULL) |
8051 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
8777 IN_param_value = function_call_param_iterator.next(); |
8052 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
8778 if (IN_param_value != NULL) { |
8053 |
8779 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
8054 if(search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol)) |
8780 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
8781 } |
|
8782 |
|
8783 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol)) |
8055 { |
8784 { |
8056 |
8785 |
8057 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name; |
8786 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name; |
8058 return return_type_symbol; |
8787 return return_type_symbol; |
8059 |
8788 |
8075 |
8804 |
8076 { |
8805 { |
8077 identifier_c param_name("IN"); |
8806 identifier_c param_name("IN"); |
8078 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
8807 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
8079 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
8808 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
8080 |
8809 symbol_c *IN_type_symbol = NULL; |
8081 /* Get the value from a foo(<param_value>) style call */ |
8810 |
8082 if (IN_param_value == NULL) |
8811 /* Get the value from a foo(<param_value>) style call */ |
8083 IN_param_value = function_call_param_iterator.next(); |
8812 if (IN_param_value == NULL) |
8084 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
8813 IN_param_value = function_call_param_iterator.next(); |
8085 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
8814 if (IN_param_value != NULL) { |
8086 |
8815 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
8087 if(search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol)) |
8816 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
8817 } |
|
8818 |
|
8819 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol)) |
8088 { |
8820 { |
8089 |
8821 |
8090 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name; |
8822 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name; |
8091 return return_type_symbol; |
8823 return return_type_symbol; |
8092 |
8824 |
8108 |
8840 |
8109 { |
8841 { |
8110 identifier_c param_name("IN"); |
8842 identifier_c param_name("IN"); |
8111 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
8843 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
8112 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
8844 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
8113 |
8845 symbol_c *IN_type_symbol = NULL; |
8114 /* Get the value from a foo(<param_value>) style call */ |
8846 |
8115 if (IN_param_value == NULL) |
8847 /* Get the value from a foo(<param_value>) style call */ |
8116 IN_param_value = function_call_param_iterator.next(); |
8848 if (IN_param_value == NULL) |
8117 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
8849 IN_param_value = function_call_param_iterator.next(); |
8118 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
8850 if (IN_param_value != NULL) { |
8119 |
8851 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
8120 if(search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol)) |
8852 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
8853 } |
|
8854 |
|
8855 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol)) |
8121 { |
8856 { |
8122 |
8857 |
8123 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name; |
8858 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name; |
8124 return return_type_symbol; |
8859 return return_type_symbol; |
8125 |
8860 |
8141 |
8876 |
8142 { |
8877 { |
8143 identifier_c param_name("IN"); |
8878 identifier_c param_name("IN"); |
8144 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
8879 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
8145 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
8880 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
8146 |
8881 symbol_c *IN_type_symbol = NULL; |
8147 /* Get the value from a foo(<param_value>) style call */ |
8882 |
8148 if (IN_param_value == NULL) |
8883 /* Get the value from a foo(<param_value>) style call */ |
8149 IN_param_value = function_call_param_iterator.next(); |
8884 if (IN_param_value == NULL) |
8150 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
8885 IN_param_value = function_call_param_iterator.next(); |
8151 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
8886 if (IN_param_value != NULL) { |
8152 |
8887 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
8153 if(search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol)) |
8888 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
8889 } |
|
8890 |
|
8891 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol)) |
8154 { |
8892 { |
8155 |
8893 |
8156 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
8894 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
8157 return return_type_symbol; |
8895 return return_type_symbol; |
8158 |
8896 |
8174 |
8912 |
8175 { |
8913 { |
8176 identifier_c param_name("IN"); |
8914 identifier_c param_name("IN"); |
8177 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
8915 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
8178 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
8916 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
8179 |
8917 symbol_c *IN_type_symbol = NULL; |
8180 /* Get the value from a foo(<param_value>) style call */ |
8918 |
8181 if (IN_param_value == NULL) |
8919 /* Get the value from a foo(<param_value>) style call */ |
8182 IN_param_value = function_call_param_iterator.next(); |
8920 if (IN_param_value == NULL) |
8183 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
8921 IN_param_value = function_call_param_iterator.next(); |
8184 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
8922 if (IN_param_value != NULL) { |
8185 |
8923 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
8186 if(search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol)) |
8924 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
8925 } |
|
8926 |
|
8927 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol)) |
8187 { |
8928 { |
8188 |
8929 |
8189 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name; |
8930 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name; |
8190 return return_type_symbol; |
8931 return return_type_symbol; |
8191 |
8932 |
8207 |
8948 |
8208 { |
8949 { |
8209 identifier_c param_name("IN"); |
8950 identifier_c param_name("IN"); |
8210 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
8951 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
8211 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
8952 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
8212 |
8953 symbol_c *IN_type_symbol = NULL; |
8213 /* Get the value from a foo(<param_value>) style call */ |
8954 |
8214 if (IN_param_value == NULL) |
8955 /* Get the value from a foo(<param_value>) style call */ |
8215 IN_param_value = function_call_param_iterator.next(); |
8956 if (IN_param_value == NULL) |
8216 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
8957 IN_param_value = function_call_param_iterator.next(); |
8217 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
8958 if (IN_param_value != NULL) { |
8218 |
8959 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
8219 if(search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol)) |
8960 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
8961 } |
|
8962 |
|
8963 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol)) |
8220 { |
8964 { |
8221 |
8965 |
8222 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name; |
8966 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name; |
8223 return return_type_symbol; |
8967 return return_type_symbol; |
8224 |
8968 |
8240 |
8984 |
8241 { |
8985 { |
8242 identifier_c param_name("IN"); |
8986 identifier_c param_name("IN"); |
8243 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
8987 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
8244 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
8988 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
8245 |
8989 symbol_c *IN_type_symbol = NULL; |
8246 /* Get the value from a foo(<param_value>) style call */ |
8990 |
8247 if (IN_param_value == NULL) |
8991 /* Get the value from a foo(<param_value>) style call */ |
8248 IN_param_value = function_call_param_iterator.next(); |
8992 if (IN_param_value == NULL) |
8249 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
8993 IN_param_value = function_call_param_iterator.next(); |
8250 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
8994 if (IN_param_value != NULL) { |
8251 |
8995 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
8252 if(search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol)) |
8996 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
8997 } |
|
8998 |
|
8999 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol)) |
8253 { |
9000 { |
8254 |
9001 |
8255 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name; |
9002 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name; |
8256 return return_type_symbol; |
9003 return return_type_symbol; |
8257 |
9004 |
8273 |
9020 |
8274 { |
9021 { |
8275 identifier_c param_name("IN"); |
9022 identifier_c param_name("IN"); |
8276 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9023 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
8277 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9024 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
8278 |
9025 symbol_c *IN_type_symbol = NULL; |
8279 /* Get the value from a foo(<param_value>) style call */ |
9026 |
8280 if (IN_param_value == NULL) |
9027 /* Get the value from a foo(<param_value>) style call */ |
8281 IN_param_value = function_call_param_iterator.next(); |
9028 if (IN_param_value == NULL) |
8282 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
9029 IN_param_value = function_call_param_iterator.next(); |
8283 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
9030 if (IN_param_value != NULL) { |
8284 |
9031 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
8285 if(search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol)) |
9032 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
9033 } |
|
9034 |
|
9035 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol)) |
8286 { |
9036 { |
8287 |
9037 |
8288 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name; |
9038 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name; |
8289 return return_type_symbol; |
9039 return return_type_symbol; |
8290 |
9040 |
8306 |
9056 |
8307 { |
9057 { |
8308 identifier_c param_name("IN"); |
9058 identifier_c param_name("IN"); |
8309 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9059 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
8310 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9060 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
8311 |
9061 symbol_c *IN_type_symbol = NULL; |
8312 /* Get the value from a foo(<param_value>) style call */ |
9062 |
8313 if (IN_param_value == NULL) |
9063 /* Get the value from a foo(<param_value>) style call */ |
8314 IN_param_value = function_call_param_iterator.next(); |
9064 if (IN_param_value == NULL) |
8315 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
9065 IN_param_value = function_call_param_iterator.next(); |
8316 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
9066 if (IN_param_value != NULL) { |
8317 |
9067 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
8318 if(search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol)) |
9068 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
9069 } |
|
9070 |
|
9071 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol)) |
8319 { |
9072 { |
8320 |
9073 |
8321 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name; |
9074 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name; |
8322 return return_type_symbol; |
9075 return return_type_symbol; |
8323 |
9076 |
8339 |
9092 |
8340 { |
9093 { |
8341 identifier_c param_name("IN"); |
9094 identifier_c param_name("IN"); |
8342 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9095 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
8343 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9096 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
8344 |
9097 symbol_c *IN_type_symbol = NULL; |
8345 /* Get the value from a foo(<param_value>) style call */ |
9098 |
8346 if (IN_param_value == NULL) |
9099 /* Get the value from a foo(<param_value>) style call */ |
8347 IN_param_value = function_call_param_iterator.next(); |
9100 if (IN_param_value == NULL) |
8348 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
9101 IN_param_value = function_call_param_iterator.next(); |
8349 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
9102 if (IN_param_value != NULL) { |
8350 |
9103 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
8351 if(search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol)) |
9104 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
9105 } |
|
9106 |
|
9107 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol)) |
8352 { |
9108 { |
8353 |
9109 |
8354 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name; |
9110 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name; |
8355 return return_type_symbol; |
9111 return return_type_symbol; |
8356 |
9112 |
8372 |
9128 |
8373 { |
9129 { |
8374 identifier_c param_name("IN"); |
9130 identifier_c param_name("IN"); |
8375 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9131 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
8376 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9132 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
8377 |
9133 symbol_c *IN_type_symbol = NULL; |
8378 /* Get the value from a foo(<param_value>) style call */ |
9134 |
8379 if (IN_param_value == NULL) |
9135 /* Get the value from a foo(<param_value>) style call */ |
8380 IN_param_value = function_call_param_iterator.next(); |
9136 if (IN_param_value == NULL) |
8381 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
9137 IN_param_value = function_call_param_iterator.next(); |
8382 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
9138 if (IN_param_value != NULL) { |
8383 |
9139 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
8384 if(search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol)) |
9140 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
9141 } |
|
9142 |
|
9143 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol)) |
8385 { |
9144 { |
8386 |
9145 |
8387 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
9146 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
8388 return return_type_symbol; |
9147 return return_type_symbol; |
8389 |
9148 |
8405 |
9164 |
8406 { |
9165 { |
8407 identifier_c param_name("IN"); |
9166 identifier_c param_name("IN"); |
8408 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9167 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
8409 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9168 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
8410 |
9169 symbol_c *IN_type_symbol = NULL; |
8411 /* Get the value from a foo(<param_value>) style call */ |
9170 |
8412 if (IN_param_value == NULL) |
9171 /* Get the value from a foo(<param_value>) style call */ |
8413 IN_param_value = function_call_param_iterator.next(); |
9172 if (IN_param_value == NULL) |
8414 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
9173 IN_param_value = function_call_param_iterator.next(); |
8415 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
9174 if (IN_param_value != NULL) { |
8416 |
9175 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
8417 if(search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol)) |
9176 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
9177 } |
|
9178 |
|
9179 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol)) |
8418 { |
9180 { |
8419 |
9181 |
8420 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name; |
9182 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name; |
8421 return return_type_symbol; |
9183 return return_type_symbol; |
8422 |
9184 |
8438 |
9200 |
8439 { |
9201 { |
8440 identifier_c param_name("IN"); |
9202 identifier_c param_name("IN"); |
8441 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9203 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
8442 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9204 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
8443 |
9205 symbol_c *IN_type_symbol = NULL; |
8444 /* Get the value from a foo(<param_value>) style call */ |
9206 |
8445 if (IN_param_value == NULL) |
9207 /* Get the value from a foo(<param_value>) style call */ |
8446 IN_param_value = function_call_param_iterator.next(); |
9208 if (IN_param_value == NULL) |
8447 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
9209 IN_param_value = function_call_param_iterator.next(); |
8448 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
9210 if (IN_param_value != NULL) { |
8449 |
9211 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
8450 if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol)) |
9212 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
9213 } |
|
9214 |
|
9215 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol)) |
8451 { |
9216 { |
8452 |
9217 |
8453 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name; |
9218 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name; |
8454 return return_type_symbol; |
9219 return return_type_symbol; |
8455 |
9220 |
8471 |
9236 |
8472 { |
9237 { |
8473 identifier_c param_name("IN"); |
9238 identifier_c param_name("IN"); |
8474 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9239 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
8475 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9240 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
8476 |
9241 symbol_c *IN_type_symbol = NULL; |
8477 /* Get the value from a foo(<param_value>) style call */ |
9242 |
8478 if (IN_param_value == NULL) |
9243 /* Get the value from a foo(<param_value>) style call */ |
8479 IN_param_value = function_call_param_iterator.next(); |
9244 if (IN_param_value == NULL) |
8480 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
9245 IN_param_value = function_call_param_iterator.next(); |
8481 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
9246 if (IN_param_value != NULL) { |
8482 |
9247 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
8483 if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol)) |
9248 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
9249 } |
|
9250 |
|
9251 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol)) |
8484 { |
9252 { |
8485 |
9253 |
8486 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name; |
9254 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name; |
8487 return return_type_symbol; |
9255 return return_type_symbol; |
8488 |
9256 |
8504 |
9272 |
8505 { |
9273 { |
8506 identifier_c param_name("IN"); |
9274 identifier_c param_name("IN"); |
8507 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9275 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
8508 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9276 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
8509 |
9277 symbol_c *IN_type_symbol = NULL; |
8510 /* Get the value from a foo(<param_value>) style call */ |
9278 |
8511 if (IN_param_value == NULL) |
9279 /* Get the value from a foo(<param_value>) style call */ |
8512 IN_param_value = function_call_param_iterator.next(); |
9280 if (IN_param_value == NULL) |
8513 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
9281 IN_param_value = function_call_param_iterator.next(); |
8514 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
9282 if (IN_param_value != NULL) { |
8515 |
9283 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
8516 if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol)) |
9284 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
9285 } |
|
9286 |
|
9287 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol)) |
8517 { |
9288 { |
8518 |
9289 |
8519 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name; |
9290 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name; |
8520 return return_type_symbol; |
9291 return return_type_symbol; |
8521 |
9292 |
8537 |
9308 |
8538 { |
9309 { |
8539 identifier_c param_name("IN"); |
9310 identifier_c param_name("IN"); |
8540 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9311 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
8541 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9312 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
8542 |
9313 symbol_c *IN_type_symbol = NULL; |
8543 /* Get the value from a foo(<param_value>) style call */ |
9314 |
8544 if (IN_param_value == NULL) |
9315 /* Get the value from a foo(<param_value>) style call */ |
8545 IN_param_value = function_call_param_iterator.next(); |
9316 if (IN_param_value == NULL) |
8546 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
9317 IN_param_value = function_call_param_iterator.next(); |
8547 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
9318 if (IN_param_value != NULL) { |
8548 |
9319 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
8549 if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol)) |
9320 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
9321 } |
|
9322 |
|
9323 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol)) |
8550 { |
9324 { |
8551 |
9325 |
8552 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name; |
9326 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name; |
8553 return return_type_symbol; |
9327 return return_type_symbol; |
8554 |
9328 |
8570 |
9344 |
8571 { |
9345 { |
8572 identifier_c param_name("IN"); |
9346 identifier_c param_name("IN"); |
8573 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9347 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
8574 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9348 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
8575 |
9349 symbol_c *IN_type_symbol = NULL; |
8576 /* Get the value from a foo(<param_value>) style call */ |
9350 |
8577 if (IN_param_value == NULL) |
9351 /* Get the value from a foo(<param_value>) style call */ |
8578 IN_param_value = function_call_param_iterator.next(); |
9352 if (IN_param_value == NULL) |
8579 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
9353 IN_param_value = function_call_param_iterator.next(); |
8580 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
9354 if (IN_param_value != NULL) { |
8581 |
9355 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
8582 if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol)) |
9356 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
9357 } |
|
9358 |
|
9359 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol)) |
8583 { |
9360 { |
8584 |
9361 |
8585 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name; |
9362 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name; |
8586 return return_type_symbol; |
9363 return return_type_symbol; |
8587 |
9364 |
8603 |
9380 |
8604 { |
9381 { |
8605 identifier_c param_name("IN"); |
9382 identifier_c param_name("IN"); |
8606 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9383 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
8607 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9384 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
8608 |
9385 symbol_c *IN_type_symbol = NULL; |
8609 /* Get the value from a foo(<param_value>) style call */ |
9386 |
8610 if (IN_param_value == NULL) |
9387 /* Get the value from a foo(<param_value>) style call */ |
8611 IN_param_value = function_call_param_iterator.next(); |
9388 if (IN_param_value == NULL) |
8612 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
9389 IN_param_value = function_call_param_iterator.next(); |
8613 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
9390 if (IN_param_value != NULL) { |
8614 |
9391 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
8615 if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol)) |
9392 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
9393 } |
|
9394 |
|
9395 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol)) |
8616 { |
9396 { |
8617 |
9397 |
8618 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name; |
9398 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name; |
8619 return return_type_symbol; |
9399 return return_type_symbol; |
8620 |
9400 |
8636 |
9416 |
8637 { |
9417 { |
8638 identifier_c param_name("IN"); |
9418 identifier_c param_name("IN"); |
8639 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9419 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
8640 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9420 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
8641 |
9421 symbol_c *IN_type_symbol = NULL; |
8642 /* Get the value from a foo(<param_value>) style call */ |
9422 |
8643 if (IN_param_value == NULL) |
9423 /* Get the value from a foo(<param_value>) style call */ |
8644 IN_param_value = function_call_param_iterator.next(); |
9424 if (IN_param_value == NULL) |
8645 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
9425 IN_param_value = function_call_param_iterator.next(); |
8646 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
9426 if (IN_param_value != NULL) { |
8647 |
9427 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
8648 if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol)) |
9428 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
9429 } |
|
9430 |
|
9431 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol)) |
8649 { |
9432 { |
8650 |
9433 |
8651 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name; |
9434 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name; |
8652 return return_type_symbol; |
9435 return return_type_symbol; |
8653 |
9436 |
8669 |
9452 |
8670 { |
9453 { |
8671 identifier_c param_name("IN"); |
9454 identifier_c param_name("IN"); |
8672 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9455 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
8673 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9456 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
8674 |
9457 symbol_c *IN_type_symbol = NULL; |
8675 /* Get the value from a foo(<param_value>) style call */ |
9458 |
8676 if (IN_param_value == NULL) |
9459 /* Get the value from a foo(<param_value>) style call */ |
8677 IN_param_value = function_call_param_iterator.next(); |
9460 if (IN_param_value == NULL) |
8678 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
9461 IN_param_value = function_call_param_iterator.next(); |
8679 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
9462 if (IN_param_value != NULL) { |
8680 |
9463 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
8681 if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol)) |
9464 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
9465 } |
|
9466 |
|
9467 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol)) |
8682 { |
9468 { |
8683 |
9469 |
8684 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name; |
9470 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name; |
8685 return return_type_symbol; |
9471 return return_type_symbol; |
8686 |
9472 |
8702 |
9488 |
8703 { |
9489 { |
8704 identifier_c param_name("IN"); |
9490 identifier_c param_name("IN"); |
8705 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9491 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
8706 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9492 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
8707 |
9493 symbol_c *IN_type_symbol = NULL; |
8708 /* Get the value from a foo(<param_value>) style call */ |
9494 |
8709 if (IN_param_value == NULL) |
9495 /* Get the value from a foo(<param_value>) style call */ |
8710 IN_param_value = function_call_param_iterator.next(); |
9496 if (IN_param_value == NULL) |
8711 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
9497 IN_param_value = function_call_param_iterator.next(); |
8712 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
9498 if (IN_param_value != NULL) { |
8713 |
9499 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
8714 if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol)) |
9500 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
9501 } |
|
9502 |
|
9503 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol)) |
8715 { |
9504 { |
8716 |
9505 |
8717 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name; |
9506 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name; |
8718 return return_type_symbol; |
9507 return return_type_symbol; |
8719 |
9508 |
8735 |
9524 |
8736 { |
9525 { |
8737 identifier_c param_name("IN"); |
9526 identifier_c param_name("IN"); |
8738 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9527 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
8739 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9528 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
8740 |
9529 symbol_c *IN_type_symbol = NULL; |
8741 /* Get the value from a foo(<param_value>) style call */ |
9530 |
8742 if (IN_param_value == NULL) |
9531 /* Get the value from a foo(<param_value>) style call */ |
8743 IN_param_value = function_call_param_iterator.next(); |
9532 if (IN_param_value == NULL) |
8744 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
9533 IN_param_value = function_call_param_iterator.next(); |
8745 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
9534 if (IN_param_value != NULL) { |
8746 |
9535 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
8747 if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol)) |
9536 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
9537 } |
|
9538 |
|
9539 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol)) |
8748 { |
9540 { |
8749 |
9541 |
8750 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name; |
9542 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name; |
8751 return return_type_symbol; |
9543 return return_type_symbol; |
8752 |
9544 |
8768 |
9560 |
8769 { |
9561 { |
8770 identifier_c param_name("IN"); |
9562 identifier_c param_name("IN"); |
8771 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9563 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
8772 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9564 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
8773 |
9565 symbol_c *IN_type_symbol = NULL; |
8774 /* Get the value from a foo(<param_value>) style call */ |
9566 |
8775 if (IN_param_value == NULL) |
9567 /* Get the value from a foo(<param_value>) style call */ |
8776 IN_param_value = function_call_param_iterator.next(); |
9568 if (IN_param_value == NULL) |
8777 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
9569 IN_param_value = function_call_param_iterator.next(); |
8778 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
9570 if (IN_param_value != NULL) { |
8779 |
9571 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
8780 if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol)) |
9572 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
9573 } |
|
9574 |
|
9575 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol)) |
8781 { |
9576 { |
8782 |
9577 |
8783 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
9578 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
8784 return return_type_symbol; |
9579 return return_type_symbol; |
8785 |
9580 |
8801 |
9596 |
8802 { |
9597 { |
8803 identifier_c param_name("IN"); |
9598 identifier_c param_name("IN"); |
8804 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9599 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
8805 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9600 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
8806 |
9601 symbol_c *IN_type_symbol = NULL; |
8807 /* Get the value from a foo(<param_value>) style call */ |
9602 |
8808 if (IN_param_value == NULL) |
9603 /* Get the value from a foo(<param_value>) style call */ |
8809 IN_param_value = function_call_param_iterator.next(); |
9604 if (IN_param_value == NULL) |
8810 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
9605 IN_param_value = function_call_param_iterator.next(); |
8811 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
9606 if (IN_param_value != NULL) { |
8812 |
9607 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
8813 if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol)) |
9608 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
9609 } |
|
9610 |
|
9611 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol)) |
8814 { |
9612 { |
8815 |
9613 |
8816 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name; |
9614 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name; |
8817 return return_type_symbol; |
9615 return return_type_symbol; |
8818 |
9616 |
8834 |
9632 |
8835 { |
9633 { |
8836 identifier_c param_name("IN"); |
9634 identifier_c param_name("IN"); |
8837 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9635 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
8838 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9636 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
8839 |
9637 symbol_c *IN_type_symbol = NULL; |
8840 /* Get the value from a foo(<param_value>) style call */ |
9638 |
8841 if (IN_param_value == NULL) |
9639 /* Get the value from a foo(<param_value>) style call */ |
8842 IN_param_value = function_call_param_iterator.next(); |
9640 if (IN_param_value == NULL) |
8843 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
9641 IN_param_value = function_call_param_iterator.next(); |
8844 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
9642 if (IN_param_value != NULL) { |
8845 |
9643 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
8846 if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol)) |
9644 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
9645 } |
|
9646 |
|
9647 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol)) |
8847 { |
9648 { |
8848 |
9649 |
8849 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name; |
9650 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name; |
8850 return return_type_symbol; |
9651 return return_type_symbol; |
8851 |
9652 |
8867 |
9668 |
8868 { |
9669 { |
8869 identifier_c param_name("IN"); |
9670 identifier_c param_name("IN"); |
8870 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9671 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
8871 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9672 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
8872 |
9673 symbol_c *IN_type_symbol = NULL; |
8873 /* Get the value from a foo(<param_value>) style call */ |
9674 |
8874 if (IN_param_value == NULL) |
9675 /* Get the value from a foo(<param_value>) style call */ |
8875 IN_param_value = function_call_param_iterator.next(); |
9676 if (IN_param_value == NULL) |
8876 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
9677 IN_param_value = function_call_param_iterator.next(); |
8877 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
9678 if (IN_param_value != NULL) { |
8878 |
9679 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
8879 if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol)) |
9680 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
9681 } |
|
9682 |
|
9683 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol)) |
8880 { |
9684 { |
8881 |
9685 |
8882 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name; |
9686 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name; |
8883 return return_type_symbol; |
9687 return return_type_symbol; |
8884 |
9688 |
8900 |
9704 |
8901 { |
9705 { |
8902 identifier_c param_name("IN"); |
9706 identifier_c param_name("IN"); |
8903 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9707 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
8904 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9708 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
8905 |
9709 symbol_c *IN_type_symbol = NULL; |
8906 /* Get the value from a foo(<param_value>) style call */ |
9710 |
8907 if (IN_param_value == NULL) |
9711 /* Get the value from a foo(<param_value>) style call */ |
8908 IN_param_value = function_call_param_iterator.next(); |
9712 if (IN_param_value == NULL) |
8909 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
9713 IN_param_value = function_call_param_iterator.next(); |
8910 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
9714 if (IN_param_value != NULL) { |
8911 |
9715 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
8912 if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol)) |
9716 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
9717 } |
|
9718 |
|
9719 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol)) |
8913 { |
9720 { |
8914 |
9721 |
8915 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name; |
9722 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name; |
8916 return return_type_symbol; |
9723 return return_type_symbol; |
8917 |
9724 |
8933 |
9740 |
8934 { |
9741 { |
8935 identifier_c param_name("IN"); |
9742 identifier_c param_name("IN"); |
8936 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9743 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
8937 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9744 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
8938 |
9745 symbol_c *IN_type_symbol = NULL; |
8939 /* Get the value from a foo(<param_value>) style call */ |
9746 |
8940 if (IN_param_value == NULL) |
9747 /* Get the value from a foo(<param_value>) style call */ |
8941 IN_param_value = function_call_param_iterator.next(); |
9748 if (IN_param_value == NULL) |
8942 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
9749 IN_param_value = function_call_param_iterator.next(); |
8943 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
9750 if (IN_param_value != NULL) { |
8944 |
9751 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
8945 if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol)) |
9752 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
9753 } |
|
9754 |
|
9755 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol)) |
8946 { |
9756 { |
8947 |
9757 |
8948 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name; |
9758 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name; |
8949 return return_type_symbol; |
9759 return return_type_symbol; |
8950 |
9760 |
8966 |
9776 |
8967 { |
9777 { |
8968 identifier_c param_name("IN"); |
9778 identifier_c param_name("IN"); |
8969 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9779 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
8970 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9780 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
8971 |
9781 symbol_c *IN_type_symbol = NULL; |
8972 /* Get the value from a foo(<param_value>) style call */ |
9782 |
8973 if (IN_param_value == NULL) |
9783 /* Get the value from a foo(<param_value>) style call */ |
8974 IN_param_value = function_call_param_iterator.next(); |
9784 if (IN_param_value == NULL) |
8975 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
9785 IN_param_value = function_call_param_iterator.next(); |
8976 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
9786 if (IN_param_value != NULL) { |
8977 |
9787 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
8978 if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol)) |
9788 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
9789 } |
|
9790 |
|
9791 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol)) |
8979 { |
9792 { |
8980 |
9793 |
8981 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name; |
9794 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name; |
8982 return return_type_symbol; |
9795 return return_type_symbol; |
8983 |
9796 |
8999 |
9812 |
9000 { |
9813 { |
9001 identifier_c param_name("IN"); |
9814 identifier_c param_name("IN"); |
9002 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9815 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9003 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9816 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9004 |
9817 symbol_c *IN_type_symbol = NULL; |
9005 /* Get the value from a foo(<param_value>) style call */ |
9818 |
9006 if (IN_param_value == NULL) |
9819 /* Get the value from a foo(<param_value>) style call */ |
9007 IN_param_value = function_call_param_iterator.next(); |
9820 if (IN_param_value == NULL) |
9008 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
9821 IN_param_value = function_call_param_iterator.next(); |
9009 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
9822 if (IN_param_value != NULL) { |
9010 |
9823 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
9011 if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol)) |
9824 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
9825 } |
|
9826 |
|
9827 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol)) |
9012 { |
9828 { |
9013 |
9829 |
9014 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
9830 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
9015 return return_type_symbol; |
9831 return return_type_symbol; |
9016 |
9832 |
9032 |
9848 |
9033 { |
9849 { |
9034 identifier_c param_name("IN"); |
9850 identifier_c param_name("IN"); |
9035 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9851 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9036 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9852 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9037 |
9853 symbol_c *IN_type_symbol = NULL; |
9038 /* Get the value from a foo(<param_value>) style call */ |
9854 |
9039 if (IN_param_value == NULL) |
9855 /* Get the value from a foo(<param_value>) style call */ |
9040 IN_param_value = function_call_param_iterator.next(); |
9856 if (IN_param_value == NULL) |
9041 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
9857 IN_param_value = function_call_param_iterator.next(); |
9042 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
9858 if (IN_param_value != NULL) { |
9043 |
9859 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
9044 if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol)) |
9860 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
9861 } |
|
9862 |
|
9863 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol)) |
9045 { |
9864 { |
9046 |
9865 |
9047 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name; |
9866 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name; |
9048 return return_type_symbol; |
9867 return return_type_symbol; |
9049 |
9868 |
9065 |
9884 |
9066 { |
9885 { |
9067 identifier_c param_name("IN"); |
9886 identifier_c param_name("IN"); |
9068 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9887 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9069 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9888 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9070 |
9889 symbol_c *IN_type_symbol = NULL; |
9071 /* Get the value from a foo(<param_value>) style call */ |
9890 |
9072 if (IN_param_value == NULL) |
9891 /* Get the value from a foo(<param_value>) style call */ |
9073 IN_param_value = function_call_param_iterator.next(); |
9892 if (IN_param_value == NULL) |
9074 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
9893 IN_param_value = function_call_param_iterator.next(); |
9075 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
9894 if (IN_param_value != NULL) { |
9076 |
9895 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
9077 if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol)) |
9896 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
9897 } |
|
9898 |
|
9899 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol)) |
9078 { |
9900 { |
9079 |
9901 |
9080 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name; |
9902 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name; |
9081 return return_type_symbol; |
9903 return return_type_symbol; |
9082 |
9904 |
9098 |
9920 |
9099 { |
9921 { |
9100 identifier_c param_name("IN"); |
9922 identifier_c param_name("IN"); |
9101 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9923 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9102 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9924 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9103 |
9925 symbol_c *IN_type_symbol = NULL; |
9104 /* Get the value from a foo(<param_value>) style call */ |
9926 |
9105 if (IN_param_value == NULL) |
9927 /* Get the value from a foo(<param_value>) style call */ |
9106 IN_param_value = function_call_param_iterator.next(); |
9928 if (IN_param_value == NULL) |
9107 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
9929 IN_param_value = function_call_param_iterator.next(); |
9108 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
9930 if (IN_param_value != NULL) { |
9109 |
9931 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
9110 if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol)) |
9932 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
9933 } |
|
9934 |
|
9935 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol)) |
9111 { |
9936 { |
9112 |
9937 |
9113 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name; |
9938 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name; |
9114 return return_type_symbol; |
9939 return return_type_symbol; |
9115 |
9940 |
9131 |
9956 |
9132 { |
9957 { |
9133 identifier_c param_name("IN"); |
9958 identifier_c param_name("IN"); |
9134 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9959 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9135 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9960 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9136 |
9961 symbol_c *IN_type_symbol = NULL; |
9137 /* Get the value from a foo(<param_value>) style call */ |
9962 |
9138 if (IN_param_value == NULL) |
9963 /* Get the value from a foo(<param_value>) style call */ |
9139 IN_param_value = function_call_param_iterator.next(); |
9964 if (IN_param_value == NULL) |
9140 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
9965 IN_param_value = function_call_param_iterator.next(); |
9141 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
9966 if (IN_param_value != NULL) { |
9142 |
9967 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
9143 if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol)) |
9968 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
9969 } |
|
9970 |
|
9971 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol)) |
9144 { |
9972 { |
9145 |
9973 |
9146 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name; |
9974 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name; |
9147 return return_type_symbol; |
9975 return return_type_symbol; |
9148 |
9976 |
9164 |
9992 |
9165 { |
9993 { |
9166 identifier_c param_name("IN"); |
9994 identifier_c param_name("IN"); |
9167 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9995 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9168 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9996 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9169 |
9997 symbol_c *IN_type_symbol = NULL; |
9170 /* Get the value from a foo(<param_value>) style call */ |
9998 |
9171 if (IN_param_value == NULL) |
9999 /* Get the value from a foo(<param_value>) style call */ |
9172 IN_param_value = function_call_param_iterator.next(); |
10000 if (IN_param_value == NULL) |
9173 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10001 IN_param_value = function_call_param_iterator.next(); |
9174 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
10002 if (IN_param_value != NULL) { |
9175 |
10003 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
9176 if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol)) |
10004 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
10005 } |
|
10006 |
|
10007 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol)) |
9177 { |
10008 { |
9178 |
10009 |
9179 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name; |
10010 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name; |
9180 return return_type_symbol; |
10011 return return_type_symbol; |
9181 |
10012 |
9197 |
10028 |
9198 { |
10029 { |
9199 identifier_c param_name("IN"); |
10030 identifier_c param_name("IN"); |
9200 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
10031 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9201 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
10032 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9202 |
10033 symbol_c *IN_type_symbol = NULL; |
9203 /* Get the value from a foo(<param_value>) style call */ |
10034 |
9204 if (IN_param_value == NULL) |
10035 /* Get the value from a foo(<param_value>) style call */ |
9205 IN_param_value = function_call_param_iterator.next(); |
10036 if (IN_param_value == NULL) |
9206 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10037 IN_param_value = function_call_param_iterator.next(); |
9207 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
10038 if (IN_param_value != NULL) { |
9208 |
10039 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
9209 if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol)) |
10040 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
10041 } |
|
10042 |
|
10043 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol)) |
9210 { |
10044 { |
9211 |
10045 |
9212 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name; |
10046 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name; |
9213 return return_type_symbol; |
10047 return return_type_symbol; |
9214 |
10048 |
9230 |
10064 |
9231 { |
10065 { |
9232 identifier_c param_name("IN"); |
10066 identifier_c param_name("IN"); |
9233 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
10067 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9234 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
10068 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9235 |
10069 symbol_c *IN_type_symbol = NULL; |
9236 /* Get the value from a foo(<param_value>) style call */ |
10070 |
9237 if (IN_param_value == NULL) |
10071 /* Get the value from a foo(<param_value>) style call */ |
9238 IN_param_value = function_call_param_iterator.next(); |
10072 if (IN_param_value == NULL) |
9239 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10073 IN_param_value = function_call_param_iterator.next(); |
9240 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
10074 if (IN_param_value != NULL) { |
9241 |
10075 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
9242 if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol)) |
10076 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
10077 } |
|
10078 |
|
10079 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol)) |
9243 { |
10080 { |
9244 |
10081 |
9245 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name; |
10082 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name; |
9246 return return_type_symbol; |
10083 return return_type_symbol; |
9247 |
10084 |
9263 |
10100 |
9264 { |
10101 { |
9265 identifier_c param_name("IN"); |
10102 identifier_c param_name("IN"); |
9266 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
10103 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9267 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
10104 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9268 |
10105 symbol_c *IN_type_symbol = NULL; |
9269 /* Get the value from a foo(<param_value>) style call */ |
10106 |
9270 if (IN_param_value == NULL) |
10107 /* Get the value from a foo(<param_value>) style call */ |
9271 IN_param_value = function_call_param_iterator.next(); |
10108 if (IN_param_value == NULL) |
9272 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10109 IN_param_value = function_call_param_iterator.next(); |
9273 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
10110 if (IN_param_value != NULL) { |
9274 |
10111 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
9275 if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol)) |
10112 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
10113 } |
|
10114 |
|
10115 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol)) |
9276 { |
10116 { |
9277 |
10117 |
9278 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name; |
10118 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name; |
9279 return return_type_symbol; |
10119 return return_type_symbol; |
9280 |
10120 |
9296 |
10136 |
9297 { |
10137 { |
9298 identifier_c param_name("IN"); |
10138 identifier_c param_name("IN"); |
9299 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
10139 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9300 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
10140 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9301 |
10141 symbol_c *IN_type_symbol = NULL; |
9302 /* Get the value from a foo(<param_value>) style call */ |
10142 |
9303 if (IN_param_value == NULL) |
10143 /* Get the value from a foo(<param_value>) style call */ |
9304 IN_param_value = function_call_param_iterator.next(); |
10144 if (IN_param_value == NULL) |
9305 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10145 IN_param_value = function_call_param_iterator.next(); |
9306 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
10146 if (IN_param_value != NULL) { |
9307 |
10147 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
9308 if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol)) |
10148 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
10149 } |
|
10150 |
|
10151 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol)) |
9309 { |
10152 { |
9310 |
10153 |
9311 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name; |
10154 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name; |
9312 return return_type_symbol; |
10155 return return_type_symbol; |
9313 |
10156 |
9329 |
10172 |
9330 { |
10173 { |
9331 identifier_c param_name("IN"); |
10174 identifier_c param_name("IN"); |
9332 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
10175 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9333 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
10176 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9334 |
10177 symbol_c *IN_type_symbol = NULL; |
9335 /* Get the value from a foo(<param_value>) style call */ |
10178 |
9336 if (IN_param_value == NULL) |
10179 /* Get the value from a foo(<param_value>) style call */ |
9337 IN_param_value = function_call_param_iterator.next(); |
10180 if (IN_param_value == NULL) |
9338 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10181 IN_param_value = function_call_param_iterator.next(); |
9339 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
10182 if (IN_param_value != NULL) { |
9340 |
10183 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
9341 if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol)) |
10184 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
10185 } |
|
10186 |
|
10187 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol)) |
9342 { |
10188 { |
9343 |
10189 |
9344 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name; |
10190 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name; |
9345 return return_type_symbol; |
10191 return return_type_symbol; |
9346 |
10192 |
9362 |
10208 |
9363 { |
10209 { |
9364 identifier_c param_name("IN"); |
10210 identifier_c param_name("IN"); |
9365 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
10211 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9366 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
10212 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9367 |
10213 symbol_c *IN_type_symbol = NULL; |
9368 /* Get the value from a foo(<param_value>) style call */ |
10214 |
9369 if (IN_param_value == NULL) |
10215 /* Get the value from a foo(<param_value>) style call */ |
9370 IN_param_value = function_call_param_iterator.next(); |
10216 if (IN_param_value == NULL) |
9371 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10217 IN_param_value = function_call_param_iterator.next(); |
9372 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
10218 if (IN_param_value != NULL) { |
9373 |
10219 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
9374 if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol)) |
10220 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
10221 } |
|
10222 |
|
10223 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol)) |
9375 { |
10224 { |
9376 |
10225 |
9377 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name; |
10226 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name; |
9378 return return_type_symbol; |
10227 return return_type_symbol; |
9379 |
10228 |
9395 |
10244 |
9396 { |
10245 { |
9397 identifier_c param_name("IN"); |
10246 identifier_c param_name("IN"); |
9398 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
10247 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9399 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
10248 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9400 |
10249 symbol_c *IN_type_symbol = NULL; |
9401 /* Get the value from a foo(<param_value>) style call */ |
10250 |
9402 if (IN_param_value == NULL) |
10251 /* Get the value from a foo(<param_value>) style call */ |
9403 IN_param_value = function_call_param_iterator.next(); |
10252 if (IN_param_value == NULL) |
9404 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10253 IN_param_value = function_call_param_iterator.next(); |
9405 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
10254 if (IN_param_value != NULL) { |
9406 |
10255 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
9407 if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol)) |
10256 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
10257 } |
|
10258 |
|
10259 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol)) |
9408 { |
10260 { |
9409 |
10261 |
9410 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
10262 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
9411 return return_type_symbol; |
10263 return return_type_symbol; |
9412 |
10264 |
9428 |
10280 |
9429 { |
10281 { |
9430 identifier_c param_name("IN"); |
10282 identifier_c param_name("IN"); |
9431 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
10283 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9432 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
10284 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9433 |
10285 symbol_c *IN_type_symbol = NULL; |
9434 /* Get the value from a foo(<param_value>) style call */ |
10286 |
9435 if (IN_param_value == NULL) |
10287 /* Get the value from a foo(<param_value>) style call */ |
9436 IN_param_value = function_call_param_iterator.next(); |
10288 if (IN_param_value == NULL) |
9437 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10289 IN_param_value = function_call_param_iterator.next(); |
9438 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
10290 if (IN_param_value != NULL) { |
9439 |
10291 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
9440 if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol)) |
10292 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
10293 } |
|
10294 |
|
10295 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol)) |
9441 { |
10296 { |
9442 |
10297 |
9443 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name; |
10298 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name; |
9444 return return_type_symbol; |
10299 return return_type_symbol; |
9445 |
10300 |
9461 |
10316 |
9462 { |
10317 { |
9463 identifier_c param_name("IN"); |
10318 identifier_c param_name("IN"); |
9464 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
10319 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9465 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
10320 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9466 |
10321 symbol_c *IN_type_symbol = NULL; |
9467 /* Get the value from a foo(<param_value>) style call */ |
10322 |
9468 if (IN_param_value == NULL) |
10323 /* Get the value from a foo(<param_value>) style call */ |
9469 IN_param_value = function_call_param_iterator.next(); |
10324 if (IN_param_value == NULL) |
9470 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10325 IN_param_value = function_call_param_iterator.next(); |
9471 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
10326 if (IN_param_value != NULL) { |
9472 |
10327 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
9473 if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol)) |
10328 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
10329 } |
|
10330 |
|
10331 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol)) |
9474 { |
10332 { |
9475 |
10333 |
9476 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name; |
10334 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name; |
9477 return return_type_symbol; |
10335 return return_type_symbol; |
9478 |
10336 |
9494 |
10352 |
9495 { |
10353 { |
9496 identifier_c param_name("IN"); |
10354 identifier_c param_name("IN"); |
9497 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
10355 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9498 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
10356 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9499 |
10357 symbol_c *IN_type_symbol = NULL; |
9500 /* Get the value from a foo(<param_value>) style call */ |
10358 |
9501 if (IN_param_value == NULL) |
10359 /* Get the value from a foo(<param_value>) style call */ |
9502 IN_param_value = function_call_param_iterator.next(); |
10360 if (IN_param_value == NULL) |
9503 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10361 IN_param_value = function_call_param_iterator.next(); |
9504 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
10362 if (IN_param_value != NULL) { |
9505 |
10363 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
9506 if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol)) |
10364 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
10365 } |
|
10366 |
|
10367 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol)) |
9507 { |
10368 { |
9508 |
10369 |
9509 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name; |
10370 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name; |
9510 return return_type_symbol; |
10371 return return_type_symbol; |
9511 |
10372 |
9527 |
10388 |
9528 { |
10389 { |
9529 identifier_c param_name("IN"); |
10390 identifier_c param_name("IN"); |
9530 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
10391 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9531 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
10392 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9532 |
10393 symbol_c *IN_type_symbol = NULL; |
9533 /* Get the value from a foo(<param_value>) style call */ |
10394 |
9534 if (IN_param_value == NULL) |
10395 /* Get the value from a foo(<param_value>) style call */ |
9535 IN_param_value = function_call_param_iterator.next(); |
10396 if (IN_param_value == NULL) |
9536 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10397 IN_param_value = function_call_param_iterator.next(); |
9537 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
10398 if (IN_param_value != NULL) { |
9538 |
10399 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
9539 if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol)) |
10400 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
10401 } |
|
10402 |
|
10403 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol)) |
9540 { |
10404 { |
9541 |
10405 |
9542 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name; |
10406 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name; |
9543 return return_type_symbol; |
10407 return return_type_symbol; |
9544 |
10408 |
9560 |
10424 |
9561 { |
10425 { |
9562 identifier_c param_name("IN"); |
10426 identifier_c param_name("IN"); |
9563 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
10427 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9564 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
10428 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9565 |
10429 symbol_c *IN_type_symbol = NULL; |
9566 /* Get the value from a foo(<param_value>) style call */ |
10430 |
9567 if (IN_param_value == NULL) |
10431 /* Get the value from a foo(<param_value>) style call */ |
9568 IN_param_value = function_call_param_iterator.next(); |
10432 if (IN_param_value == NULL) |
9569 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10433 IN_param_value = function_call_param_iterator.next(); |
9570 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
10434 if (IN_param_value != NULL) { |
9571 |
10435 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
9572 if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol)) |
10436 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
10437 } |
|
10438 |
|
10439 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol)) |
9573 { |
10440 { |
9574 |
10441 |
9575 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name; |
10442 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name; |
9576 return return_type_symbol; |
10443 return return_type_symbol; |
9577 |
10444 |
9593 |
10460 |
9594 { |
10461 { |
9595 identifier_c param_name("IN"); |
10462 identifier_c param_name("IN"); |
9596 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
10463 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9597 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
10464 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9598 |
10465 symbol_c *IN_type_symbol = NULL; |
9599 /* Get the value from a foo(<param_value>) style call */ |
10466 |
9600 if (IN_param_value == NULL) |
10467 /* Get the value from a foo(<param_value>) style call */ |
9601 IN_param_value = function_call_param_iterator.next(); |
10468 if (IN_param_value == NULL) |
9602 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10469 IN_param_value = function_call_param_iterator.next(); |
9603 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
10470 if (IN_param_value != NULL) { |
9604 |
10471 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
9605 if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol)) |
10472 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
10473 } |
|
10474 |
|
10475 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol)) |
9606 { |
10476 { |
9607 |
10477 |
9608 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name; |
10478 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name; |
9609 return return_type_symbol; |
10479 return return_type_symbol; |
9610 |
10480 |
9626 |
10496 |
9627 { |
10497 { |
9628 identifier_c param_name("IN"); |
10498 identifier_c param_name("IN"); |
9629 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
10499 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9630 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
10500 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9631 |
10501 symbol_c *IN_type_symbol = NULL; |
9632 /* Get the value from a foo(<param_value>) style call */ |
10502 |
9633 if (IN_param_value == NULL) |
10503 /* Get the value from a foo(<param_value>) style call */ |
9634 IN_param_value = function_call_param_iterator.next(); |
10504 if (IN_param_value == NULL) |
9635 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10505 IN_param_value = function_call_param_iterator.next(); |
9636 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
10506 if (IN_param_value != NULL) { |
9637 |
10507 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
9638 if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol)) |
10508 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
10509 } |
|
10510 |
|
10511 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol)) |
9639 { |
10512 { |
9640 |
10513 |
9641 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
10514 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
9642 return return_type_symbol; |
10515 return return_type_symbol; |
9643 |
10516 |
9659 |
10532 |
9660 { |
10533 { |
9661 identifier_c param_name("IN"); |
10534 identifier_c param_name("IN"); |
9662 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
10535 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9663 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
10536 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9664 |
10537 symbol_c *IN_type_symbol = NULL; |
9665 /* Get the value from a foo(<param_value>) style call */ |
10538 |
9666 if (IN_param_value == NULL) |
10539 /* Get the value from a foo(<param_value>) style call */ |
9667 IN_param_value = function_call_param_iterator.next(); |
10540 if (IN_param_value == NULL) |
9668 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10541 IN_param_value = function_call_param_iterator.next(); |
9669 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
10542 if (IN_param_value != NULL) { |
9670 |
10543 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
9671 if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol)) |
10544 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
10545 } |
|
10546 |
|
10547 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol)) |
9672 { |
10548 { |
9673 |
10549 |
9674 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name; |
10550 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name; |
9675 return return_type_symbol; |
10551 return return_type_symbol; |
9676 |
10552 |
9692 |
10568 |
9693 { |
10569 { |
9694 identifier_c param_name("IN"); |
10570 identifier_c param_name("IN"); |
9695 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
10571 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9696 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
10572 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9697 |
10573 symbol_c *IN_type_symbol = NULL; |
9698 /* Get the value from a foo(<param_value>) style call */ |
10574 |
9699 if (IN_param_value == NULL) |
10575 /* Get the value from a foo(<param_value>) style call */ |
9700 IN_param_value = function_call_param_iterator.next(); |
10576 if (IN_param_value == NULL) |
9701 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10577 IN_param_value = function_call_param_iterator.next(); |
9702 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
10578 if (IN_param_value != NULL) { |
9703 |
10579 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
9704 if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol)) |
10580 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
10581 } |
|
10582 |
|
10583 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol)) |
9705 { |
10584 { |
9706 |
10585 |
9707 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name; |
10586 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name; |
9708 return return_type_symbol; |
10587 return return_type_symbol; |
9709 |
10588 |
9725 |
10604 |
9726 { |
10605 { |
9727 identifier_c param_name("IN"); |
10606 identifier_c param_name("IN"); |
9728 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
10607 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9729 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
10608 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9730 |
10609 symbol_c *IN_type_symbol = NULL; |
9731 /* Get the value from a foo(<param_value>) style call */ |
10610 |
9732 if (IN_param_value == NULL) |
10611 /* Get the value from a foo(<param_value>) style call */ |
9733 IN_param_value = function_call_param_iterator.next(); |
10612 if (IN_param_value == NULL) |
9734 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10613 IN_param_value = function_call_param_iterator.next(); |
9735 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
10614 if (IN_param_value != NULL) { |
9736 |
10615 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
9737 if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol)) |
10616 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
10617 } |
|
10618 |
|
10619 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol)) |
9738 { |
10620 { |
9739 |
10621 |
9740 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name; |
10622 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name; |
9741 return return_type_symbol; |
10623 return return_type_symbol; |
9742 |
10624 |
9758 |
10640 |
9759 { |
10641 { |
9760 identifier_c param_name("IN"); |
10642 identifier_c param_name("IN"); |
9761 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
10643 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9762 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
10644 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9763 |
10645 symbol_c *IN_type_symbol = NULL; |
9764 /* Get the value from a foo(<param_value>) style call */ |
10646 |
9765 if (IN_param_value == NULL) |
10647 /* Get the value from a foo(<param_value>) style call */ |
9766 IN_param_value = function_call_param_iterator.next(); |
10648 if (IN_param_value == NULL) |
9767 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10649 IN_param_value = function_call_param_iterator.next(); |
9768 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
10650 if (IN_param_value != NULL) { |
9769 |
10651 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
9770 if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol)) |
10652 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
10653 } |
|
10654 |
|
10655 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol)) |
9771 { |
10656 { |
9772 |
10657 |
9773 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name; |
10658 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name; |
9774 return return_type_symbol; |
10659 return return_type_symbol; |
9775 |
10660 |
9791 |
10676 |
9792 { |
10677 { |
9793 identifier_c param_name("IN"); |
10678 identifier_c param_name("IN"); |
9794 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
10679 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9795 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
10680 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9796 |
10681 symbol_c *IN_type_symbol = NULL; |
9797 /* Get the value from a foo(<param_value>) style call */ |
10682 |
9798 if (IN_param_value == NULL) |
10683 /* Get the value from a foo(<param_value>) style call */ |
9799 IN_param_value = function_call_param_iterator.next(); |
10684 if (IN_param_value == NULL) |
9800 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10685 IN_param_value = function_call_param_iterator.next(); |
9801 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
10686 if (IN_param_value != NULL) { |
9802 |
10687 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
9803 if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol)) |
10688 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
10689 } |
|
10690 |
|
10691 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol)) |
9804 { |
10692 { |
9805 |
10693 |
9806 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name; |
10694 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name; |
9807 return return_type_symbol; |
10695 return return_type_symbol; |
9808 |
10696 |
9824 |
10712 |
9825 { |
10713 { |
9826 identifier_c param_name("IN"); |
10714 identifier_c param_name("IN"); |
9827 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
10715 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9828 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
10716 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9829 |
10717 symbol_c *IN_type_symbol = NULL; |
9830 /* Get the value from a foo(<param_value>) style call */ |
10718 |
9831 if (IN_param_value == NULL) |
10719 /* Get the value from a foo(<param_value>) style call */ |
9832 IN_param_value = function_call_param_iterator.next(); |
10720 if (IN_param_value == NULL) |
9833 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10721 IN_param_value = function_call_param_iterator.next(); |
9834 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
10722 if (IN_param_value != NULL) { |
9835 |
10723 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
9836 if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol)) |
10724 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
10725 } |
|
10726 |
|
10727 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol)) |
9837 { |
10728 { |
9838 |
10729 |
9839 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name; |
10730 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name; |
9840 return return_type_symbol; |
10731 return return_type_symbol; |
9841 |
10732 |
9857 |
10748 |
9858 { |
10749 { |
9859 identifier_c param_name("IN"); |
10750 identifier_c param_name("IN"); |
9860 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
10751 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9861 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
10752 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9862 |
10753 symbol_c *IN_type_symbol = NULL; |
9863 /* Get the value from a foo(<param_value>) style call */ |
10754 |
9864 if (IN_param_value == NULL) |
10755 /* Get the value from a foo(<param_value>) style call */ |
9865 IN_param_value = function_call_param_iterator.next(); |
10756 if (IN_param_value == NULL) |
9866 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10757 IN_param_value = function_call_param_iterator.next(); |
9867 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
10758 if (IN_param_value != NULL) { |
9868 |
10759 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
9869 if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol)) |
10760 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
10761 } |
|
10762 |
|
10763 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol)) |
9870 { |
10764 { |
9871 |
10765 |
9872 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name; |
10766 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name; |
9873 return return_type_symbol; |
10767 return return_type_symbol; |
9874 |
10768 |
9890 |
10784 |
9891 { |
10785 { |
9892 identifier_c param_name("IN"); |
10786 identifier_c param_name("IN"); |
9893 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
10787 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9894 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
10788 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9895 |
10789 symbol_c *IN_type_symbol = NULL; |
9896 /* Get the value from a foo(<param_value>) style call */ |
10790 |
9897 if (IN_param_value == NULL) |
10791 /* Get the value from a foo(<param_value>) style call */ |
9898 IN_param_value = function_call_param_iterator.next(); |
10792 if (IN_param_value == NULL) |
9899 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10793 IN_param_value = function_call_param_iterator.next(); |
9900 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
10794 if (IN_param_value != NULL) { |
9901 |
10795 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
9902 if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol)) |
10796 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
10797 } |
|
10798 |
|
10799 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol)) |
9903 { |
10800 { |
9904 |
10801 |
9905 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name; |
10802 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name; |
9906 return return_type_symbol; |
10803 return return_type_symbol; |
9907 |
10804 |
9923 |
10820 |
9924 { |
10821 { |
9925 identifier_c param_name("IN"); |
10822 identifier_c param_name("IN"); |
9926 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
10823 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9927 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
10824 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9928 |
10825 symbol_c *IN_type_symbol = NULL; |
9929 /* Get the value from a foo(<param_value>) style call */ |
10826 |
9930 if (IN_param_value == NULL) |
10827 /* Get the value from a foo(<param_value>) style call */ |
9931 IN_param_value = function_call_param_iterator.next(); |
10828 if (IN_param_value == NULL) |
9932 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10829 IN_param_value = function_call_param_iterator.next(); |
9933 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
10830 if (IN_param_value != NULL) { |
9934 |
10831 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
9935 if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol)) |
10832 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
10833 } |
|
10834 |
|
10835 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol)) |
9936 { |
10836 { |
9937 |
10837 |
9938 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name; |
10838 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name; |
9939 return return_type_symbol; |
10839 return return_type_symbol; |
9940 |
10840 |
9956 |
10856 |
9957 { |
10857 { |
9958 identifier_c param_name("IN"); |
10858 identifier_c param_name("IN"); |
9959 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
10859 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9960 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
10860 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9961 |
10861 symbol_c *IN_type_symbol = NULL; |
9962 /* Get the value from a foo(<param_value>) style call */ |
10862 |
9963 if (IN_param_value == NULL) |
10863 /* Get the value from a foo(<param_value>) style call */ |
9964 IN_param_value = function_call_param_iterator.next(); |
10864 if (IN_param_value == NULL) |
9965 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10865 IN_param_value = function_call_param_iterator.next(); |
9966 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
10866 if (IN_param_value != NULL) { |
9967 |
10867 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
9968 if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol)) |
10868 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
10869 } |
|
10870 |
|
10871 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol)) |
9969 { |
10872 { |
9970 |
10873 |
9971 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name; |
10874 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name; |
9972 return return_type_symbol; |
10875 return return_type_symbol; |
9973 |
10876 |
9989 |
10892 |
9990 { |
10893 { |
9991 identifier_c param_name("IN"); |
10894 identifier_c param_name("IN"); |
9992 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
10895 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
9993 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
10896 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
9994 |
10897 symbol_c *IN_type_symbol = NULL; |
9995 /* Get the value from a foo(<param_value>) style call */ |
10898 |
9996 if (IN_param_value == NULL) |
10899 /* Get the value from a foo(<param_value>) style call */ |
9997 IN_param_value = function_call_param_iterator.next(); |
10900 if (IN_param_value == NULL) |
9998 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10901 IN_param_value = function_call_param_iterator.next(); |
9999 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
10902 if (IN_param_value != NULL) { |
10000 |
10903 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10001 if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol)) |
10904 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
10905 } |
|
10906 |
|
10907 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol)) |
10002 { |
10908 { |
10003 |
10909 |
10004 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name; |
10910 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name; |
10005 return return_type_symbol; |
10911 return return_type_symbol; |
10006 |
10912 |
10022 |
10928 |
10023 { |
10929 { |
10024 identifier_c param_name("IN"); |
10930 identifier_c param_name("IN"); |
10025 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
10931 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
10026 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
10932 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
10027 |
10933 symbol_c *IN_type_symbol = NULL; |
10028 /* Get the value from a foo(<param_value>) style call */ |
10934 |
10029 if (IN_param_value == NULL) |
10935 /* Get the value from a foo(<param_value>) style call */ |
10030 IN_param_value = function_call_param_iterator.next(); |
10936 if (IN_param_value == NULL) |
10031 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10937 IN_param_value = function_call_param_iterator.next(); |
10032 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
10938 if (IN_param_value != NULL) { |
10033 |
10939 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10034 if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol)) |
10940 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
10941 } |
|
10942 |
|
10943 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol)) |
10035 { |
10944 { |
10036 |
10945 |
10037 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
10946 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
10038 return return_type_symbol; |
10947 return return_type_symbol; |
10039 |
10948 |
10055 |
10964 |
10056 { |
10965 { |
10057 identifier_c param_name("IN"); |
10966 identifier_c param_name("IN"); |
10058 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
10967 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
10059 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
10968 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
10060 |
10969 symbol_c *IN_type_symbol = NULL; |
10061 /* Get the value from a foo(<param_value>) style call */ |
10970 |
10062 if (IN_param_value == NULL) |
10971 /* Get the value from a foo(<param_value>) style call */ |
10063 IN_param_value = function_call_param_iterator.next(); |
10972 if (IN_param_value == NULL) |
10064 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10973 IN_param_value = function_call_param_iterator.next(); |
10065 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
10974 if (IN_param_value != NULL) { |
10066 |
10975 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10067 if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol)) |
10976 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
10977 } |
|
10978 |
|
10979 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol)) |
10068 { |
10980 { |
10069 |
10981 |
10070 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name; |
10982 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name; |
10071 return return_type_symbol; |
10983 return return_type_symbol; |
10072 |
10984 |
10088 |
11000 |
10089 { |
11001 { |
10090 identifier_c param_name("IN"); |
11002 identifier_c param_name("IN"); |
10091 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
11003 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
10092 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
11004 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
10093 |
11005 symbol_c *IN_type_symbol = NULL; |
10094 /* Get the value from a foo(<param_value>) style call */ |
11006 |
10095 if (IN_param_value == NULL) |
11007 /* Get the value from a foo(<param_value>) style call */ |
10096 IN_param_value = function_call_param_iterator.next(); |
11008 if (IN_param_value == NULL) |
10097 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
11009 IN_param_value = function_call_param_iterator.next(); |
10098 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
11010 if (IN_param_value != NULL) { |
10099 |
11011 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10100 if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol)) |
11012 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
11013 } |
|
11014 |
|
11015 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol)) |
10101 { |
11016 { |
10102 |
11017 |
10103 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name; |
11018 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name; |
10104 return return_type_symbol; |
11019 return return_type_symbol; |
10105 |
11020 |
10121 |
11036 |
10122 { |
11037 { |
10123 identifier_c param_name("IN"); |
11038 identifier_c param_name("IN"); |
10124 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
11039 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
10125 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
11040 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
10126 |
11041 symbol_c *IN_type_symbol = NULL; |
10127 /* Get the value from a foo(<param_value>) style call */ |
11042 |
10128 if (IN_param_value == NULL) |
11043 /* Get the value from a foo(<param_value>) style call */ |
10129 IN_param_value = function_call_param_iterator.next(); |
11044 if (IN_param_value == NULL) |
10130 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
11045 IN_param_value = function_call_param_iterator.next(); |
10131 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
11046 if (IN_param_value != NULL) { |
10132 |
11047 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10133 if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol)) |
11048 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
11049 } |
|
11050 |
|
11051 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol)) |
10134 { |
11052 { |
10135 |
11053 |
10136 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name; |
11054 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name; |
10137 return return_type_symbol; |
11055 return return_type_symbol; |
10138 |
11056 |
10154 |
11072 |
10155 { |
11073 { |
10156 identifier_c param_name("IN"); |
11074 identifier_c param_name("IN"); |
10157 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
11075 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
10158 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
11076 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
10159 |
11077 symbol_c *IN_type_symbol = NULL; |
10160 /* Get the value from a foo(<param_value>) style call */ |
11078 |
10161 if (IN_param_value == NULL) |
11079 /* Get the value from a foo(<param_value>) style call */ |
10162 IN_param_value = function_call_param_iterator.next(); |
11080 if (IN_param_value == NULL) |
10163 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
11081 IN_param_value = function_call_param_iterator.next(); |
10164 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
11082 if (IN_param_value != NULL) { |
10165 |
11083 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10166 if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol)) |
11084 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
11085 } |
|
11086 |
|
11087 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol)) |
10167 { |
11088 { |
10168 |
11089 |
10169 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name; |
11090 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name; |
10170 return return_type_symbol; |
11091 return return_type_symbol; |
10171 |
11092 |
10187 |
11108 |
10188 { |
11109 { |
10189 identifier_c param_name("IN"); |
11110 identifier_c param_name("IN"); |
10190 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
11111 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
10191 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
11112 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
10192 |
11113 symbol_c *IN_type_symbol = NULL; |
10193 /* Get the value from a foo(<param_value>) style call */ |
11114 |
10194 if (IN_param_value == NULL) |
11115 /* Get the value from a foo(<param_value>) style call */ |
10195 IN_param_value = function_call_param_iterator.next(); |
11116 if (IN_param_value == NULL) |
10196 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
11117 IN_param_value = function_call_param_iterator.next(); |
10197 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
11118 if (IN_param_value != NULL) { |
10198 |
11119 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10199 if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol)) |
11120 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
11121 } |
|
11122 |
|
11123 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol)) |
10200 { |
11124 { |
10201 |
11125 |
10202 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name; |
11126 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name; |
10203 return return_type_symbol; |
11127 return return_type_symbol; |
10204 |
11128 |
10220 |
11144 |
10221 { |
11145 { |
10222 identifier_c param_name("IN"); |
11146 identifier_c param_name("IN"); |
10223 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
11147 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
10224 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
11148 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
10225 |
11149 symbol_c *IN_type_symbol = NULL; |
10226 /* Get the value from a foo(<param_value>) style call */ |
11150 |
10227 if (IN_param_value == NULL) |
11151 /* Get the value from a foo(<param_value>) style call */ |
10228 IN_param_value = function_call_param_iterator.next(); |
11152 if (IN_param_value == NULL) |
10229 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
11153 IN_param_value = function_call_param_iterator.next(); |
10230 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
11154 if (IN_param_value != NULL) { |
10231 |
11155 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10232 if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol)) |
11156 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
11157 } |
|
11158 |
|
11159 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol)) |
10233 { |
11160 { |
10234 |
11161 |
10235 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name; |
11162 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name; |
10236 return return_type_symbol; |
11163 return return_type_symbol; |
10237 |
11164 |
10253 |
11180 |
10254 { |
11181 { |
10255 identifier_c param_name("IN"); |
11182 identifier_c param_name("IN"); |
10256 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
11183 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
10257 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
11184 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
10258 |
11185 symbol_c *IN_type_symbol = NULL; |
10259 /* Get the value from a foo(<param_value>) style call */ |
11186 |
10260 if (IN_param_value == NULL) |
11187 /* Get the value from a foo(<param_value>) style call */ |
10261 IN_param_value = function_call_param_iterator.next(); |
11188 if (IN_param_value == NULL) |
10262 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
11189 IN_param_value = function_call_param_iterator.next(); |
10263 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
11190 if (IN_param_value != NULL) { |
10264 |
11191 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10265 if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol)) |
11192 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
11193 } |
|
11194 |
|
11195 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol)) |
10266 { |
11196 { |
10267 |
11197 |
10268 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
11198 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
10269 return return_type_symbol; |
11199 return return_type_symbol; |
10270 |
11200 |
10286 |
11216 |
10287 { |
11217 { |
10288 identifier_c param_name("IN"); |
11218 identifier_c param_name("IN"); |
10289 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
11219 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
10290 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
11220 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
10291 |
11221 symbol_c *IN_type_symbol = NULL; |
10292 /* Get the value from a foo(<param_value>) style call */ |
11222 |
10293 if (IN_param_value == NULL) |
11223 /* Get the value from a foo(<param_value>) style call */ |
10294 IN_param_value = function_call_param_iterator.next(); |
11224 if (IN_param_value == NULL) |
10295 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
11225 IN_param_value = function_call_param_iterator.next(); |
10296 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
11226 if (IN_param_value != NULL) { |
10297 |
11227 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10298 if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol)) |
11228 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
11229 } |
|
11230 |
|
11231 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol)) |
10299 { |
11232 { |
10300 |
11233 |
10301 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name; |
11234 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name; |
10302 return return_type_symbol; |
11235 return return_type_symbol; |
10303 |
11236 |
10319 |
11252 |
10320 { |
11253 { |
10321 identifier_c param_name("IN"); |
11254 identifier_c param_name("IN"); |
10322 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
11255 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
10323 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
11256 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
10324 |
11257 symbol_c *IN_type_symbol = NULL; |
10325 /* Get the value from a foo(<param_value>) style call */ |
11258 |
10326 if (IN_param_value == NULL) |
11259 /* Get the value from a foo(<param_value>) style call */ |
10327 IN_param_value = function_call_param_iterator.next(); |
11260 if (IN_param_value == NULL) |
10328 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
11261 IN_param_value = function_call_param_iterator.next(); |
10329 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
11262 if (IN_param_value != NULL) { |
10330 |
11263 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10331 if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol)) |
11264 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
11265 } |
|
11266 |
|
11267 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol)) |
10332 { |
11268 { |
10333 |
11269 |
10334 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name; |
11270 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name; |
10335 return return_type_symbol; |
11271 return return_type_symbol; |
10336 |
11272 |
10352 |
11288 |
10353 { |
11289 { |
10354 identifier_c param_name("IN"); |
11290 identifier_c param_name("IN"); |
10355 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
11291 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
10356 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
11292 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
10357 |
11293 symbol_c *IN_type_symbol = NULL; |
10358 /* Get the value from a foo(<param_value>) style call */ |
11294 |
10359 if (IN_param_value == NULL) |
11295 /* Get the value from a foo(<param_value>) style call */ |
10360 IN_param_value = function_call_param_iterator.next(); |
11296 if (IN_param_value == NULL) |
10361 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
11297 IN_param_value = function_call_param_iterator.next(); |
10362 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
11298 if (IN_param_value != NULL) { |
10363 |
11299 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10364 if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol)) |
11300 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
11301 } |
|
11302 |
|
11303 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol)) |
10365 { |
11304 { |
10366 |
11305 |
10367 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name; |
11306 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name; |
10368 return return_type_symbol; |
11307 return return_type_symbol; |
10369 |
11308 |
10385 |
11324 |
10386 { |
11325 { |
10387 identifier_c param_name("IN"); |
11326 identifier_c param_name("IN"); |
10388 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
11327 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
10389 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
11328 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
10390 |
11329 symbol_c *IN_type_symbol = NULL; |
10391 /* Get the value from a foo(<param_value>) style call */ |
11330 |
10392 if (IN_param_value == NULL) |
11331 /* Get the value from a foo(<param_value>) style call */ |
10393 IN_param_value = function_call_param_iterator.next(); |
11332 if (IN_param_value == NULL) |
10394 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
11333 IN_param_value = function_call_param_iterator.next(); |
10395 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
11334 if (IN_param_value != NULL) { |
10396 |
11335 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10397 if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol)) |
11336 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
11337 } |
|
11338 |
|
11339 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol)) |
10398 { |
11340 { |
10399 |
11341 |
10400 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name; |
11342 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name; |
10401 return return_type_symbol; |
11343 return return_type_symbol; |
10402 |
11344 |
10418 |
11360 |
10419 { |
11361 { |
10420 identifier_c param_name("IN"); |
11362 identifier_c param_name("IN"); |
10421 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
11363 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
10422 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
11364 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
10423 |
11365 symbol_c *IN_type_symbol = NULL; |
10424 /* Get the value from a foo(<param_value>) style call */ |
11366 |
10425 if (IN_param_value == NULL) |
11367 /* Get the value from a foo(<param_value>) style call */ |
10426 IN_param_value = function_call_param_iterator.next(); |
11368 if (IN_param_value == NULL) |
10427 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
11369 IN_param_value = function_call_param_iterator.next(); |
10428 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
11370 if (IN_param_value != NULL) { |
10429 |
11371 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10430 if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol)) |
11372 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
11373 } |
|
11374 |
|
11375 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol)) |
10431 { |
11376 { |
10432 |
11377 |
10433 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name; |
11378 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name; |
10434 return return_type_symbol; |
11379 return return_type_symbol; |
10435 |
11380 |
10451 |
11396 |
10452 { |
11397 { |
10453 identifier_c param_name("IN"); |
11398 identifier_c param_name("IN"); |
10454 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
11399 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
10455 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
11400 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
10456 |
11401 symbol_c *IN_type_symbol = NULL; |
10457 /* Get the value from a foo(<param_value>) style call */ |
11402 |
10458 if (IN_param_value == NULL) |
11403 /* Get the value from a foo(<param_value>) style call */ |
10459 IN_param_value = function_call_param_iterator.next(); |
11404 if (IN_param_value == NULL) |
10460 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
11405 IN_param_value = function_call_param_iterator.next(); |
10461 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
11406 if (IN_param_value != NULL) { |
10462 |
11407 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10463 if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol)) |
11408 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
11409 } |
|
11410 |
|
11411 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol)) |
10464 { |
11412 { |
10465 |
11413 |
10466 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name; |
11414 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name; |
10467 return return_type_symbol; |
11415 return return_type_symbol; |
10468 |
11416 |
10484 |
11432 |
10485 { |
11433 { |
10486 identifier_c param_name("IN"); |
11434 identifier_c param_name("IN"); |
10487 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
11435 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
10488 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
11436 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
10489 |
11437 symbol_c *IN_type_symbol = NULL; |
10490 /* Get the value from a foo(<param_value>) style call */ |
11438 |
10491 if (IN_param_value == NULL) |
11439 /* Get the value from a foo(<param_value>) style call */ |
10492 IN_param_value = function_call_param_iterator.next(); |
11440 if (IN_param_value == NULL) |
10493 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
11441 IN_param_value = function_call_param_iterator.next(); |
10494 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
11442 if (IN_param_value != NULL) { |
10495 |
11443 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10496 if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol)) |
11444 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
11445 } |
|
11446 |
|
11447 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol)) |
10497 { |
11448 { |
10498 |
11449 |
10499 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name; |
11450 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name; |
10500 return return_type_symbol; |
11451 return return_type_symbol; |
10501 |
11452 |
10517 |
11468 |
10518 { |
11469 { |
10519 identifier_c param_name("IN"); |
11470 identifier_c param_name("IN"); |
10520 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
11471 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
10521 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
11472 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
10522 |
11473 symbol_c *IN_type_symbol = NULL; |
10523 /* Get the value from a foo(<param_value>) style call */ |
11474 |
10524 if (IN_param_value == NULL) |
11475 /* Get the value from a foo(<param_value>) style call */ |
10525 IN_param_value = function_call_param_iterator.next(); |
11476 if (IN_param_value == NULL) |
10526 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
11477 IN_param_value = function_call_param_iterator.next(); |
10527 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
11478 if (IN_param_value != NULL) { |
10528 |
11479 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10529 if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol)) |
11480 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
11481 } |
|
11482 |
|
11483 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol)) |
10530 { |
11484 { |
10531 |
11485 |
10532 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name; |
11486 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name; |
10533 return return_type_symbol; |
11487 return return_type_symbol; |
10534 |
11488 |
10550 |
11504 |
10551 { |
11505 { |
10552 identifier_c param_name("IN"); |
11506 identifier_c param_name("IN"); |
10553 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
11507 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
10554 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
11508 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
10555 |
11509 symbol_c *IN_type_symbol = NULL; |
10556 /* Get the value from a foo(<param_value>) style call */ |
11510 |
10557 if (IN_param_value == NULL) |
11511 /* Get the value from a foo(<param_value>) style call */ |
10558 IN_param_value = function_call_param_iterator.next(); |
11512 if (IN_param_value == NULL) |
10559 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
11513 IN_param_value = function_call_param_iterator.next(); |
10560 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
11514 if (IN_param_value != NULL) { |
10561 |
11515 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10562 if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol)) |
11516 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
11517 } |
|
11518 |
|
11519 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol)) |
10563 { |
11520 { |
10564 |
11521 |
10565 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name; |
11522 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name; |
10566 return return_type_symbol; |
11523 return return_type_symbol; |
10567 |
11524 |
10583 |
11540 |
10584 { |
11541 { |
10585 identifier_c param_name("IN"); |
11542 identifier_c param_name("IN"); |
10586 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
11543 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
10587 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
11544 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
10588 |
11545 symbol_c *IN_type_symbol = NULL; |
10589 /* Get the value from a foo(<param_value>) style call */ |
11546 |
10590 if (IN_param_value == NULL) |
11547 /* Get the value from a foo(<param_value>) style call */ |
10591 IN_param_value = function_call_param_iterator.next(); |
11548 if (IN_param_value == NULL) |
10592 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
11549 IN_param_value = function_call_param_iterator.next(); |
10593 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
11550 if (IN_param_value != NULL) { |
10594 |
11551 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10595 if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol)) |
11552 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
11553 } |
|
11554 |
|
11555 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol)) |
10596 { |
11556 { |
10597 |
11557 |
10598 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name; |
11558 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name; |
10599 return return_type_symbol; |
11559 return return_type_symbol; |
10600 |
11560 |
10616 |
11576 |
10617 { |
11577 { |
10618 identifier_c param_name("IN"); |
11578 identifier_c param_name("IN"); |
10619 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
11579 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
10620 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
11580 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
10621 |
11581 symbol_c *IN_type_symbol = NULL; |
10622 /* Get the value from a foo(<param_value>) style call */ |
11582 |
10623 if (IN_param_value == NULL) |
11583 /* Get the value from a foo(<param_value>) style call */ |
10624 IN_param_value = function_call_param_iterator.next(); |
11584 if (IN_param_value == NULL) |
10625 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
11585 IN_param_value = function_call_param_iterator.next(); |
10626 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
11586 if (IN_param_value != NULL) { |
10627 |
11587 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10628 if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol)) |
11588 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
11589 } |
|
11590 |
|
11591 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol)) |
10629 { |
11592 { |
10630 |
11593 |
10631 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name; |
11594 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name; |
10632 return return_type_symbol; |
11595 return return_type_symbol; |
10633 |
11596 |
10649 |
11612 |
10650 { |
11613 { |
10651 identifier_c param_name("IN"); |
11614 identifier_c param_name("IN"); |
10652 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
11615 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
10653 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
11616 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
10654 |
11617 symbol_c *IN_type_symbol = NULL; |
10655 /* Get the value from a foo(<param_value>) style call */ |
11618 |
10656 if (IN_param_value == NULL) |
11619 /* Get the value from a foo(<param_value>) style call */ |
10657 IN_param_value = function_call_param_iterator.next(); |
11620 if (IN_param_value == NULL) |
10658 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
11621 IN_param_value = function_call_param_iterator.next(); |
10659 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
11622 if (IN_param_value != NULL) { |
10660 |
11623 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10661 if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol)) |
11624 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
11625 } |
|
11626 |
|
11627 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol)) |
10662 { |
11628 { |
10663 |
11629 |
10664 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
11630 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
10665 return return_type_symbol; |
11631 return return_type_symbol; |
10666 |
11632 |
10682 |
11648 |
10683 { |
11649 { |
10684 identifier_c param_name("IN"); |
11650 identifier_c param_name("IN"); |
10685 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
11651 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
10686 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
11652 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
10687 |
11653 symbol_c *IN_type_symbol = NULL; |
10688 /* Get the value from a foo(<param_value>) style call */ |
11654 |
10689 if (IN_param_value == NULL) |
11655 /* Get the value from a foo(<param_value>) style call */ |
10690 IN_param_value = function_call_param_iterator.next(); |
11656 if (IN_param_value == NULL) |
10691 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
11657 IN_param_value = function_call_param_iterator.next(); |
10692 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
11658 if (IN_param_value != NULL) { |
10693 |
11659 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10694 if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol)) |
11660 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
11661 } |
|
11662 |
|
11663 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol)) |
10695 { |
11664 { |
10696 |
11665 |
10697 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name; |
11666 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name; |
10698 return return_type_symbol; |
11667 return return_type_symbol; |
10699 |
11668 |
10715 |
11684 |
10716 { |
11685 { |
10717 identifier_c param_name("IN"); |
11686 identifier_c param_name("IN"); |
10718 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
11687 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
10719 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
11688 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
10720 |
11689 symbol_c *IN_type_symbol = NULL; |
10721 /* Get the value from a foo(<param_value>) style call */ |
11690 |
10722 if (IN_param_value == NULL) |
11691 /* Get the value from a foo(<param_value>) style call */ |
10723 IN_param_value = function_call_param_iterator.next(); |
11692 if (IN_param_value == NULL) |
10724 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
11693 IN_param_value = function_call_param_iterator.next(); |
10725 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
11694 if (IN_param_value != NULL) { |
10726 |
11695 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10727 if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol)) |
11696 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
11697 } |
|
11698 |
|
11699 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol)) |
10728 { |
11700 { |
10729 |
11701 |
10730 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name; |
11702 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name; |
10731 return return_type_symbol; |
11703 return return_type_symbol; |
10732 |
11704 |
10748 |
11720 |
10749 { |
11721 { |
10750 identifier_c param_name("IN"); |
11722 identifier_c param_name("IN"); |
10751 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
11723 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
10752 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
11724 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
10753 |
11725 symbol_c *IN_type_symbol = NULL; |
10754 /* Get the value from a foo(<param_value>) style call */ |
11726 |
10755 if (IN_param_value == NULL) |
11727 /* Get the value from a foo(<param_value>) style call */ |
10756 IN_param_value = function_call_param_iterator.next(); |
11728 if (IN_param_value == NULL) |
10757 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
11729 IN_param_value = function_call_param_iterator.next(); |
10758 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
11730 if (IN_param_value != NULL) { |
10759 |
11731 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10760 if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol)) |
11732 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
11733 } |
|
11734 |
|
11735 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol)) |
10761 { |
11736 { |
10762 |
11737 |
10763 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name; |
11738 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name; |
10764 return return_type_symbol; |
11739 return return_type_symbol; |
10765 |
11740 |
10781 |
11756 |
10782 { |
11757 { |
10783 identifier_c param_name("IN"); |
11758 identifier_c param_name("IN"); |
10784 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
11759 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
10785 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
11760 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
10786 |
11761 symbol_c *IN_type_symbol = NULL; |
10787 /* Get the value from a foo(<param_value>) style call */ |
11762 |
10788 if (IN_param_value == NULL) |
11763 /* Get the value from a foo(<param_value>) style call */ |
10789 IN_param_value = function_call_param_iterator.next(); |
11764 if (IN_param_value == NULL) |
10790 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
11765 IN_param_value = function_call_param_iterator.next(); |
10791 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
11766 if (IN_param_value != NULL) { |
10792 |
11767 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10793 if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol)) |
11768 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
11769 } |
|
11770 |
|
11771 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol)) |
10794 { |
11772 { |
10795 |
11773 |
10796 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name; |
11774 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name; |
10797 return return_type_symbol; |
11775 return return_type_symbol; |
10798 |
11776 |
10814 |
11792 |
10815 { |
11793 { |
10816 identifier_c param_name("IN"); |
11794 identifier_c param_name("IN"); |
10817 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
11795 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
10818 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
11796 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
10819 |
11797 symbol_c *IN_type_symbol = NULL; |
10820 /* Get the value from a foo(<param_value>) style call */ |
11798 |
10821 if (IN_param_value == NULL) |
11799 /* Get the value from a foo(<param_value>) style call */ |
10822 IN_param_value = function_call_param_iterator.next(); |
11800 if (IN_param_value == NULL) |
10823 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
11801 IN_param_value = function_call_param_iterator.next(); |
10824 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
11802 if (IN_param_value != NULL) { |
10825 |
11803 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10826 if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol)) |
11804 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
11805 } |
|
11806 |
|
11807 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol)) |
10827 { |
11808 { |
10828 |
11809 |
10829 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name; |
11810 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name; |
10830 return return_type_symbol; |
11811 return return_type_symbol; |
10831 |
11812 |
10847 |
11828 |
10848 { |
11829 { |
10849 identifier_c param_name("IN"); |
11830 identifier_c param_name("IN"); |
10850 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
11831 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
10851 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
11832 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
10852 |
11833 symbol_c *IN_type_symbol = NULL; |
10853 /* Get the value from a foo(<param_value>) style call */ |
11834 |
10854 if (IN_param_value == NULL) |
11835 /* Get the value from a foo(<param_value>) style call */ |
10855 IN_param_value = function_call_param_iterator.next(); |
11836 if (IN_param_value == NULL) |
10856 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
11837 IN_param_value = function_call_param_iterator.next(); |
10857 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
11838 if (IN_param_value != NULL) { |
10858 |
11839 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10859 if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol)) |
11840 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
11841 } |
|
11842 |
|
11843 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol)) |
10860 { |
11844 { |
10861 |
11845 |
10862 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name; |
11846 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name; |
10863 return return_type_symbol; |
11847 return return_type_symbol; |
10864 |
11848 |
10880 |
11864 |
10881 { |
11865 { |
10882 identifier_c param_name("IN"); |
11866 identifier_c param_name("IN"); |
10883 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
11867 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
10884 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
11868 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
10885 |
11869 symbol_c *IN_type_symbol = NULL; |
10886 /* Get the value from a foo(<param_value>) style call */ |
11870 |
10887 if (IN_param_value == NULL) |
11871 /* Get the value from a foo(<param_value>) style call */ |
10888 IN_param_value = function_call_param_iterator.next(); |
11872 if (IN_param_value == NULL) |
10889 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
11873 IN_param_value = function_call_param_iterator.next(); |
10890 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
11874 if (IN_param_value != NULL) { |
10891 |
11875 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10892 if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol)) |
11876 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
11877 } |
|
11878 |
|
11879 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol)) |
10893 { |
11880 { |
10894 |
11881 |
10895 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
11882 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
10896 return return_type_symbol; |
11883 return return_type_symbol; |
10897 |
11884 |
10913 |
11900 |
10914 { |
11901 { |
10915 identifier_c param_name("IN"); |
11902 identifier_c param_name("IN"); |
10916 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
11903 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
10917 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
11904 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
10918 |
11905 symbol_c *IN_type_symbol = NULL; |
10919 /* Get the value from a foo(<param_value>) style call */ |
11906 |
10920 if (IN_param_value == NULL) |
11907 /* Get the value from a foo(<param_value>) style call */ |
10921 IN_param_value = function_call_param_iterator.next(); |
11908 if (IN_param_value == NULL) |
10922 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
11909 IN_param_value = function_call_param_iterator.next(); |
10923 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
11910 if (IN_param_value != NULL) { |
10924 |
11911 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10925 if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol)) |
11912 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
11913 } |
|
11914 |
|
11915 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol)) |
10926 { |
11916 { |
10927 |
11917 |
10928 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name; |
11918 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name; |
10929 return return_type_symbol; |
11919 return return_type_symbol; |
10930 |
11920 |
10946 |
11936 |
10947 { |
11937 { |
10948 identifier_c param_name("IN"); |
11938 identifier_c param_name("IN"); |
10949 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
11939 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
10950 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
11940 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
10951 |
11941 symbol_c *IN_type_symbol = NULL; |
10952 /* Get the value from a foo(<param_value>) style call */ |
11942 |
10953 if (IN_param_value == NULL) |
11943 /* Get the value from a foo(<param_value>) style call */ |
10954 IN_param_value = function_call_param_iterator.next(); |
11944 if (IN_param_value == NULL) |
10955 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
11945 IN_param_value = function_call_param_iterator.next(); |
10956 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
11946 if (IN_param_value != NULL) { |
10957 |
11947 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10958 if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
11948 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
11949 } |
|
11950 |
|
11951 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
10959 { |
11952 { |
10960 |
11953 |
10961 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name; |
11954 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name; |
10962 return return_type_symbol; |
11955 return return_type_symbol; |
10963 |
11956 |
10979 |
11972 |
10980 { |
11973 { |
10981 identifier_c param_name("IN"); |
11974 identifier_c param_name("IN"); |
10982 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
11975 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
10983 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
11976 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
10984 |
11977 symbol_c *IN_type_symbol = NULL; |
10985 /* Get the value from a foo(<param_value>) style call */ |
11978 |
10986 if (IN_param_value == NULL) |
11979 /* Get the value from a foo(<param_value>) style call */ |
10987 IN_param_value = function_call_param_iterator.next(); |
11980 if (IN_param_value == NULL) |
10988 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
11981 IN_param_value = function_call_param_iterator.next(); |
10989 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
11982 if (IN_param_value != NULL) { |
10990 |
11983 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
10991 if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
11984 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
11985 } |
|
11986 |
|
11987 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
10992 { |
11988 { |
10993 |
11989 |
10994 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name; |
11990 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name; |
10995 return return_type_symbol; |
11991 return return_type_symbol; |
10996 |
11992 |
11012 |
12008 |
11013 { |
12009 { |
11014 identifier_c param_name("IN"); |
12010 identifier_c param_name("IN"); |
11015 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12011 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
11016 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
12012 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
11017 |
12013 symbol_c *IN_type_symbol = NULL; |
11018 /* Get the value from a foo(<param_value>) style call */ |
12014 |
11019 if (IN_param_value == NULL) |
12015 /* Get the value from a foo(<param_value>) style call */ |
11020 IN_param_value = function_call_param_iterator.next(); |
12016 if (IN_param_value == NULL) |
11021 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
12017 IN_param_value = function_call_param_iterator.next(); |
11022 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
12018 if (IN_param_value != NULL) { |
11023 |
12019 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
11024 if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
12020 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
12021 } |
|
12022 |
|
12023 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
11025 { |
12024 { |
11026 |
12025 |
11027 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name; |
12026 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name; |
11028 return return_type_symbol; |
12027 return return_type_symbol; |
11029 |
12028 |
11045 |
12044 |
11046 { |
12045 { |
11047 identifier_c param_name("IN"); |
12046 identifier_c param_name("IN"); |
11048 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12047 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
11049 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
12048 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
11050 |
12049 symbol_c *IN_type_symbol = NULL; |
11051 /* Get the value from a foo(<param_value>) style call */ |
12050 |
11052 if (IN_param_value == NULL) |
12051 /* Get the value from a foo(<param_value>) style call */ |
11053 IN_param_value = function_call_param_iterator.next(); |
12052 if (IN_param_value == NULL) |
11054 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
12053 IN_param_value = function_call_param_iterator.next(); |
11055 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
12054 if (IN_param_value != NULL) { |
11056 |
12055 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
11057 if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
12056 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
12057 } |
|
12058 |
|
12059 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
11058 { |
12060 { |
11059 |
12061 |
11060 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name; |
12062 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name; |
11061 return return_type_symbol; |
12063 return return_type_symbol; |
11062 |
12064 |
11078 |
12080 |
11079 { |
12081 { |
11080 identifier_c param_name("IN"); |
12082 identifier_c param_name("IN"); |
11081 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12083 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
11082 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
12084 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
11083 |
12085 symbol_c *IN_type_symbol = NULL; |
11084 /* Get the value from a foo(<param_value>) style call */ |
12086 |
11085 if (IN_param_value == NULL) |
12087 /* Get the value from a foo(<param_value>) style call */ |
11086 IN_param_value = function_call_param_iterator.next(); |
12088 if (IN_param_value == NULL) |
11087 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
12089 IN_param_value = function_call_param_iterator.next(); |
11088 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
12090 if (IN_param_value != NULL) { |
11089 |
12091 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
11090 if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
12092 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
12093 } |
|
12094 |
|
12095 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
11091 { |
12096 { |
11092 |
12097 |
11093 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name; |
12098 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name; |
11094 return return_type_symbol; |
12099 return return_type_symbol; |
11095 |
12100 |
11111 |
12116 |
11112 { |
12117 { |
11113 identifier_c param_name("IN"); |
12118 identifier_c param_name("IN"); |
11114 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12119 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
11115 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
12120 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
11116 |
12121 symbol_c *IN_type_symbol = NULL; |
11117 /* Get the value from a foo(<param_value>) style call */ |
12122 |
11118 if (IN_param_value == NULL) |
12123 /* Get the value from a foo(<param_value>) style call */ |
11119 IN_param_value = function_call_param_iterator.next(); |
12124 if (IN_param_value == NULL) |
11120 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
12125 IN_param_value = function_call_param_iterator.next(); |
11121 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
12126 if (IN_param_value != NULL) { |
11122 |
12127 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
11123 if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
12128 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
12129 } |
|
12130 |
|
12131 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
11124 { |
12132 { |
11125 |
12133 |
11126 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name; |
12134 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name; |
11127 return return_type_symbol; |
12135 return return_type_symbol; |
11128 |
12136 |
11144 |
12152 |
11145 { |
12153 { |
11146 identifier_c param_name("IN"); |
12154 identifier_c param_name("IN"); |
11147 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12155 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
11148 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
12156 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
11149 |
12157 symbol_c *IN_type_symbol = NULL; |
11150 /* Get the value from a foo(<param_value>) style call */ |
12158 |
11151 if (IN_param_value == NULL) |
12159 /* Get the value from a foo(<param_value>) style call */ |
11152 IN_param_value = function_call_param_iterator.next(); |
12160 if (IN_param_value == NULL) |
11153 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
12161 IN_param_value = function_call_param_iterator.next(); |
11154 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
12162 if (IN_param_value != NULL) { |
11155 |
12163 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
11156 if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
12164 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
12165 } |
|
12166 |
|
12167 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
11157 { |
12168 { |
11158 |
12169 |
11159 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name; |
12170 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name; |
11160 return return_type_symbol; |
12171 return return_type_symbol; |
11161 |
12172 |
11177 |
12188 |
11178 { |
12189 { |
11179 identifier_c param_name("IN"); |
12190 identifier_c param_name("IN"); |
11180 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12191 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
11181 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
12192 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
11182 |
12193 symbol_c *IN_type_symbol = NULL; |
11183 /* Get the value from a foo(<param_value>) style call */ |
12194 |
11184 if (IN_param_value == NULL) |
12195 /* Get the value from a foo(<param_value>) style call */ |
11185 IN_param_value = function_call_param_iterator.next(); |
12196 if (IN_param_value == NULL) |
11186 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
12197 IN_param_value = function_call_param_iterator.next(); |
11187 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
12198 if (IN_param_value != NULL) { |
11188 |
12199 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
11189 if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
12200 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
12201 } |
|
12202 |
|
12203 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
11190 { |
12204 { |
11191 |
12205 |
11192 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
12206 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
11193 return return_type_symbol; |
12207 return return_type_symbol; |
11194 |
12208 |
11210 |
12224 |
11211 { |
12225 { |
11212 identifier_c param_name("IN"); |
12226 identifier_c param_name("IN"); |
11213 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12227 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
11214 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
12228 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
11215 |
12229 symbol_c *IN_type_symbol = NULL; |
11216 /* Get the value from a foo(<param_value>) style call */ |
12230 |
11217 if (IN_param_value == NULL) |
12231 /* Get the value from a foo(<param_value>) style call */ |
11218 IN_param_value = function_call_param_iterator.next(); |
12232 if (IN_param_value == NULL) |
11219 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
12233 IN_param_value = function_call_param_iterator.next(); |
11220 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
12234 if (IN_param_value != NULL) { |
11221 |
12235 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
11222 if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
12236 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
12237 } |
|
12238 |
|
12239 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
11223 { |
12240 { |
11224 |
12241 |
11225 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name; |
12242 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name; |
11226 return return_type_symbol; |
12243 return return_type_symbol; |
11227 |
12244 |
11243 |
12260 |
11244 { |
12261 { |
11245 identifier_c param_name("IN"); |
12262 identifier_c param_name("IN"); |
11246 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12263 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
11247 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
12264 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
11248 |
12265 symbol_c *IN_type_symbol = NULL; |
11249 /* Get the value from a foo(<param_value>) style call */ |
12266 |
11250 if (IN_param_value == NULL) |
12267 /* Get the value from a foo(<param_value>) style call */ |
11251 IN_param_value = function_call_param_iterator.next(); |
12268 if (IN_param_value == NULL) |
11252 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
12269 IN_param_value = function_call_param_iterator.next(); |
11253 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
12270 if (IN_param_value != NULL) { |
11254 |
12271 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
11255 if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
12272 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
12273 } |
|
12274 |
|
12275 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
11256 { |
12276 { |
11257 |
12277 |
11258 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name; |
12278 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name; |
11259 return return_type_symbol; |
12279 return return_type_symbol; |
11260 |
12280 |
11276 |
12296 |
11277 { |
12297 { |
11278 identifier_c param_name("IN"); |
12298 identifier_c param_name("IN"); |
11279 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12299 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
11280 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
12300 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
11281 |
12301 symbol_c *IN_type_symbol = NULL; |
11282 /* Get the value from a foo(<param_value>) style call */ |
12302 |
11283 if (IN_param_value == NULL) |
12303 /* Get the value from a foo(<param_value>) style call */ |
11284 IN_param_value = function_call_param_iterator.next(); |
12304 if (IN_param_value == NULL) |
11285 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
12305 IN_param_value = function_call_param_iterator.next(); |
11286 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
12306 if (IN_param_value != NULL) { |
11287 |
12307 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
11288 if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
12308 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
12309 } |
|
12310 |
|
12311 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
11289 { |
12312 { |
11290 |
12313 |
11291 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name; |
12314 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name; |
11292 return return_type_symbol; |
12315 return return_type_symbol; |
11293 |
12316 |
11309 |
12332 |
11310 { |
12333 { |
11311 identifier_c param_name("IN"); |
12334 identifier_c param_name("IN"); |
11312 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12335 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
11313 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
12336 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
11314 |
12337 symbol_c *IN_type_symbol = NULL; |
11315 /* Get the value from a foo(<param_value>) style call */ |
12338 |
11316 if (IN_param_value == NULL) |
12339 /* Get the value from a foo(<param_value>) style call */ |
11317 IN_param_value = function_call_param_iterator.next(); |
12340 if (IN_param_value == NULL) |
11318 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
12341 IN_param_value = function_call_param_iterator.next(); |
11319 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
12342 if (IN_param_value != NULL) { |
11320 |
12343 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
11321 if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
12344 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
12345 } |
|
12346 |
|
12347 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
11322 { |
12348 { |
11323 |
12349 |
11324 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name; |
12350 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name; |
11325 return return_type_symbol; |
12351 return return_type_symbol; |
11326 |
12352 |
11342 |
12368 |
11343 { |
12369 { |
11344 identifier_c param_name("IN"); |
12370 identifier_c param_name("IN"); |
11345 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12371 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
11346 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
12372 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
11347 |
12373 symbol_c *IN_type_symbol = NULL; |
11348 /* Get the value from a foo(<param_value>) style call */ |
12374 |
11349 if (IN_param_value == NULL) |
12375 /* Get the value from a foo(<param_value>) style call */ |
11350 IN_param_value = function_call_param_iterator.next(); |
12376 if (IN_param_value == NULL) |
11351 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
12377 IN_param_value = function_call_param_iterator.next(); |
11352 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
12378 if (IN_param_value != NULL) { |
11353 |
12379 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
11354 if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
12380 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
12381 } |
|
12382 |
|
12383 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
11355 { |
12384 { |
11356 |
12385 |
11357 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name; |
12386 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name; |
11358 return return_type_symbol; |
12387 return return_type_symbol; |
11359 |
12388 |
11375 |
12404 |
11376 { |
12405 { |
11377 identifier_c param_name("IN"); |
12406 identifier_c param_name("IN"); |
11378 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12407 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
11379 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
12408 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
11380 |
12409 symbol_c *IN_type_symbol = NULL; |
11381 /* Get the value from a foo(<param_value>) style call */ |
12410 |
11382 if (IN_param_value == NULL) |
12411 /* Get the value from a foo(<param_value>) style call */ |
11383 IN_param_value = function_call_param_iterator.next(); |
12412 if (IN_param_value == NULL) |
11384 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
12413 IN_param_value = function_call_param_iterator.next(); |
11385 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
12414 if (IN_param_value != NULL) { |
11386 |
12415 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
11387 if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
12416 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
12417 } |
|
12418 |
|
12419 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
11388 { |
12420 { |
11389 |
12421 |
11390 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name; |
12422 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name; |
11391 return return_type_symbol; |
12423 return return_type_symbol; |
11392 |
12424 |
11408 |
12440 |
11409 { |
12441 { |
11410 identifier_c param_name("IN"); |
12442 identifier_c param_name("IN"); |
11411 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12443 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
11412 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
12444 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
11413 |
12445 symbol_c *IN_type_symbol = NULL; |
11414 /* Get the value from a foo(<param_value>) style call */ |
12446 |
11415 if (IN_param_value == NULL) |
12447 /* Get the value from a foo(<param_value>) style call */ |
11416 IN_param_value = function_call_param_iterator.next(); |
12448 if (IN_param_value == NULL) |
11417 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
12449 IN_param_value = function_call_param_iterator.next(); |
11418 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
12450 if (IN_param_value != NULL) { |
11419 |
12451 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
11420 if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
12452 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
12453 } |
|
12454 |
|
12455 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
11421 { |
12456 { |
11422 |
12457 |
11423 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name; |
12458 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name; |
11424 return return_type_symbol; |
12459 return return_type_symbol; |
11425 |
12460 |
11441 |
12476 |
11442 { |
12477 { |
11443 identifier_c param_name("IN"); |
12478 identifier_c param_name("IN"); |
11444 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12479 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
11445 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
12480 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
11446 |
12481 symbol_c *IN_type_symbol = NULL; |
11447 /* Get the value from a foo(<param_value>) style call */ |
12482 |
11448 if (IN_param_value == NULL) |
12483 /* Get the value from a foo(<param_value>) style call */ |
11449 IN_param_value = function_call_param_iterator.next(); |
12484 if (IN_param_value == NULL) |
11450 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
12485 IN_param_value = function_call_param_iterator.next(); |
11451 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
12486 if (IN_param_value != NULL) { |
11452 |
12487 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
11453 if(search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol)) |
12488 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
12489 } |
|
12490 |
|
12491 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol)) |
11454 { |
12492 { |
11455 |
12493 |
11456 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name; |
12494 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name; |
11457 return return_type_symbol; |
12495 return return_type_symbol; |
11458 |
12496 |
11474 |
12512 |
11475 { |
12513 { |
11476 identifier_c param_name("IN"); |
12514 identifier_c param_name("IN"); |
11477 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12515 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
11478 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
12516 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
11479 |
12517 symbol_c *IN_type_symbol = NULL; |
11480 /* Get the value from a foo(<param_value>) style call */ |
12518 |
11481 if (IN_param_value == NULL) |
12519 /* Get the value from a foo(<param_value>) style call */ |
11482 IN_param_value = function_call_param_iterator.next(); |
12520 if (IN_param_value == NULL) |
11483 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
12521 IN_param_value = function_call_param_iterator.next(); |
11484 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
12522 if (IN_param_value != NULL) { |
11485 |
12523 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
11486 if(search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol)) |
12524 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
12525 } |
|
12526 |
|
12527 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol)) |
11487 { |
12528 { |
11488 |
12529 |
11489 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name; |
12530 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name; |
11490 return return_type_symbol; |
12531 return return_type_symbol; |
11491 |
12532 |
11507 |
12548 |
11508 { |
12549 { |
11509 identifier_c param_name("IN"); |
12550 identifier_c param_name("IN"); |
11510 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12551 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
11511 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
12552 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
11512 |
12553 symbol_c *IN_type_symbol = NULL; |
11513 /* Get the value from a foo(<param_value>) style call */ |
12554 |
11514 if (IN_param_value == NULL) |
12555 /* Get the value from a foo(<param_value>) style call */ |
11515 IN_param_value = function_call_param_iterator.next(); |
12556 if (IN_param_value == NULL) |
11516 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
12557 IN_param_value = function_call_param_iterator.next(); |
11517 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
12558 if (IN_param_value != NULL) { |
11518 |
12559 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
11519 if(search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol)) |
12560 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
12561 } |
|
12562 |
|
12563 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol)) |
11520 { |
12564 { |
11521 |
12565 |
11522 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name; |
12566 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name; |
11523 return return_type_symbol; |
12567 return return_type_symbol; |
11524 |
12568 |
11540 |
12584 |
11541 { |
12585 { |
11542 identifier_c param_name("IN"); |
12586 identifier_c param_name("IN"); |
11543 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12587 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
11544 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
12588 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
11545 |
12589 symbol_c *IN_type_symbol = NULL; |
11546 /* Get the value from a foo(<param_value>) style call */ |
12590 |
11547 if (IN_param_value == NULL) |
12591 /* Get the value from a foo(<param_value>) style call */ |
11548 IN_param_value = function_call_param_iterator.next(); |
12592 if (IN_param_value == NULL) |
11549 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
12593 IN_param_value = function_call_param_iterator.next(); |
11550 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
12594 if (IN_param_value != NULL) { |
11551 |
12595 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
11552 if(search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol)) |
12596 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
12597 } |
|
12598 |
|
12599 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol)) |
11553 { |
12600 { |
11554 |
12601 |
11555 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name; |
12602 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name; |
11556 return return_type_symbol; |
12603 return return_type_symbol; |
11557 |
12604 |
11573 |
12620 |
11574 { |
12621 { |
11575 identifier_c param_name("IN"); |
12622 identifier_c param_name("IN"); |
11576 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12623 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
11577 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
12624 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
11578 |
12625 symbol_c *IN_type_symbol = NULL; |
11579 /* Get the value from a foo(<param_value>) style call */ |
12626 |
11580 if (IN_param_value == NULL) |
12627 /* Get the value from a foo(<param_value>) style call */ |
11581 IN_param_value = function_call_param_iterator.next(); |
12628 if (IN_param_value == NULL) |
11582 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
12629 IN_param_value = function_call_param_iterator.next(); |
11583 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
12630 if (IN_param_value != NULL) { |
11584 |
12631 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
11585 if(search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol)) |
12632 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
12633 } |
|
12634 |
|
12635 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol)) |
11586 { |
12636 { |
11587 |
12637 |
11588 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name; |
12638 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name; |
11589 return return_type_symbol; |
12639 return return_type_symbol; |
11590 |
12640 |
11606 |
12656 |
11607 { |
12657 { |
11608 identifier_c param_name("IN"); |
12658 identifier_c param_name("IN"); |
11609 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12659 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
11610 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
12660 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
11611 |
12661 symbol_c *IN_type_symbol = NULL; |
11612 /* Get the value from a foo(<param_value>) style call */ |
12662 |
11613 if (IN_param_value == NULL) |
12663 /* Get the value from a foo(<param_value>) style call */ |
11614 IN_param_value = function_call_param_iterator.next(); |
12664 if (IN_param_value == NULL) |
11615 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
12665 IN_param_value = function_call_param_iterator.next(); |
11616 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
12666 if (IN_param_value != NULL) { |
11617 |
12667 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
11618 if(search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol)) |
12668 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
12669 } |
|
12670 |
|
12671 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol)) |
11619 { |
12672 { |
11620 |
12673 |
11621 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name; |
12674 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name; |
11622 return return_type_symbol; |
12675 return return_type_symbol; |
11623 |
12676 |
11639 |
12692 |
11640 { |
12693 { |
11641 identifier_c param_name("IN"); |
12694 identifier_c param_name("IN"); |
11642 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12695 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
11643 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
12696 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
11644 |
12697 symbol_c *IN_type_symbol = NULL; |
11645 /* Get the value from a foo(<param_value>) style call */ |
12698 |
11646 if (IN_param_value == NULL) |
12699 /* Get the value from a foo(<param_value>) style call */ |
11647 IN_param_value = function_call_param_iterator.next(); |
12700 if (IN_param_value == NULL) |
11648 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
12701 IN_param_value = function_call_param_iterator.next(); |
11649 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
12702 if (IN_param_value != NULL) { |
11650 |
12703 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
11651 if(search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol)) |
12704 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
12705 } |
|
12706 |
|
12707 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol)) |
11652 { |
12708 { |
11653 |
12709 |
11654 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name; |
12710 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name; |
11655 return return_type_symbol; |
12711 return return_type_symbol; |
11656 |
12712 |
11672 |
12728 |
11673 { |
12729 { |
11674 identifier_c param_name("IN"); |
12730 identifier_c param_name("IN"); |
11675 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12731 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
11676 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
12732 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
11677 |
12733 symbol_c *IN_type_symbol = NULL; |
11678 /* Get the value from a foo(<param_value>) style call */ |
12734 |
11679 if (IN_param_value == NULL) |
12735 /* Get the value from a foo(<param_value>) style call */ |
11680 IN_param_value = function_call_param_iterator.next(); |
12736 if (IN_param_value == NULL) |
11681 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
12737 IN_param_value = function_call_param_iterator.next(); |
11682 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
12738 if (IN_param_value != NULL) { |
11683 |
12739 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
11684 if(search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol)) |
12740 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
12741 } |
|
12742 |
|
12743 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol)) |
11685 { |
12744 { |
11686 |
12745 |
11687 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name; |
12746 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name; |
11688 return return_type_symbol; |
12747 return return_type_symbol; |
11689 |
12748 |
11705 |
12764 |
11706 { |
12765 { |
11707 identifier_c param_name("IN"); |
12766 identifier_c param_name("IN"); |
11708 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12767 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
11709 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
12768 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
11710 |
12769 symbol_c *IN_type_symbol = NULL; |
11711 /* Get the value from a foo(<param_value>) style call */ |
12770 |
11712 if (IN_param_value == NULL) |
12771 /* Get the value from a foo(<param_value>) style call */ |
11713 IN_param_value = function_call_param_iterator.next(); |
12772 if (IN_param_value == NULL) |
11714 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
12773 IN_param_value = function_call_param_iterator.next(); |
11715 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
12774 if (IN_param_value != NULL) { |
11716 |
12775 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
11717 if(search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol)) |
12776 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
12777 } |
|
12778 |
|
12779 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol)) |
11718 { |
12780 { |
11719 |
12781 |
11720 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name; |
12782 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name; |
11721 return return_type_symbol; |
12783 return return_type_symbol; |
11722 |
12784 |
11738 |
12800 |
11739 { |
12801 { |
11740 identifier_c param_name("IN"); |
12802 identifier_c param_name("IN"); |
11741 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12803 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
11742 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
12804 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
11743 |
12805 symbol_c *IN_type_symbol = NULL; |
11744 /* Get the value from a foo(<param_value>) style call */ |
12806 |
11745 if (IN_param_value == NULL) |
12807 /* Get the value from a foo(<param_value>) style call */ |
11746 IN_param_value = function_call_param_iterator.next(); |
12808 if (IN_param_value == NULL) |
11747 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
12809 IN_param_value = function_call_param_iterator.next(); |
11748 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
12810 if (IN_param_value != NULL) { |
11749 |
12811 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
11750 if(search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol)) |
12812 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
12813 } |
|
12814 |
|
12815 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol)) |
11751 { |
12816 { |
11752 |
12817 |
11753 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name; |
12818 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name; |
11754 return return_type_symbol; |
12819 return return_type_symbol; |
11755 |
12820 |
11771 |
12836 |
11772 { |
12837 { |
11773 identifier_c param_name("IN"); |
12838 identifier_c param_name("IN"); |
11774 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12839 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
11775 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
12840 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
11776 |
12841 symbol_c *IN_type_symbol = NULL; |
11777 /* Get the value from a foo(<param_value>) style call */ |
12842 |
11778 if (IN_param_value == NULL) |
12843 /* Get the value from a foo(<param_value>) style call */ |
11779 IN_param_value = function_call_param_iterator.next(); |
12844 if (IN_param_value == NULL) |
11780 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
12845 IN_param_value = function_call_param_iterator.next(); |
11781 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
12846 if (IN_param_value != NULL) { |
11782 |
12847 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
11783 if(search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol)) |
12848 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
12849 } |
|
12850 |
|
12851 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol)) |
11784 { |
12852 { |
11785 |
12853 |
11786 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
12854 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
11787 return return_type_symbol; |
12855 return return_type_symbol; |
11788 |
12856 |
11804 |
12872 |
11805 { |
12873 { |
11806 identifier_c param_name("IN"); |
12874 identifier_c param_name("IN"); |
11807 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12875 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
11808 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
12876 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
11809 |
12877 symbol_c *IN_type_symbol = NULL; |
11810 /* Get the value from a foo(<param_value>) style call */ |
12878 |
11811 if (IN_param_value == NULL) |
12879 /* Get the value from a foo(<param_value>) style call */ |
11812 IN_param_value = function_call_param_iterator.next(); |
12880 if (IN_param_value == NULL) |
11813 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
12881 IN_param_value = function_call_param_iterator.next(); |
11814 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
12882 if (IN_param_value != NULL) { |
11815 |
12883 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
11816 if(search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol)) |
12884 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
12885 } |
|
12886 |
|
12887 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol)) |
11817 { |
12888 { |
11818 |
12889 |
11819 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name; |
12890 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name; |
11820 return return_type_symbol; |
12891 return return_type_symbol; |
11821 |
12892 |
11837 |
12908 |
11838 { |
12909 { |
11839 identifier_c param_name("IN"); |
12910 identifier_c param_name("IN"); |
11840 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12911 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
11841 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
12912 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
11842 |
12913 symbol_c *IN_type_symbol = NULL; |
11843 /* Get the value from a foo(<param_value>) style call */ |
12914 |
11844 if (IN_param_value == NULL) |
12915 /* Get the value from a foo(<param_value>) style call */ |
11845 IN_param_value = function_call_param_iterator.next(); |
12916 if (IN_param_value == NULL) |
11846 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
12917 IN_param_value = function_call_param_iterator.next(); |
11847 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
12918 if (IN_param_value != NULL) { |
11848 |
12919 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
11849 if(search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol)) |
12920 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
12921 } |
|
12922 |
|
12923 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol)) |
11850 { |
12924 { |
11851 |
12925 |
11852 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name; |
12926 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name; |
11853 return return_type_symbol; |
12927 return return_type_symbol; |
11854 |
12928 |
11870 |
12944 |
11871 { |
12945 { |
11872 identifier_c param_name("IN"); |
12946 identifier_c param_name("IN"); |
11873 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12947 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
11874 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
12948 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
11875 |
12949 symbol_c *IN_type_symbol = NULL; |
11876 /* Get the value from a foo(<param_value>) style call */ |
12950 |
11877 if (IN_param_value == NULL) |
12951 /* Get the value from a foo(<param_value>) style call */ |
11878 IN_param_value = function_call_param_iterator.next(); |
12952 if (IN_param_value == NULL) |
11879 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
12953 IN_param_value = function_call_param_iterator.next(); |
11880 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
12954 if (IN_param_value != NULL) { |
11881 |
12955 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
11882 if(search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol)) |
12956 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
12957 } |
|
12958 |
|
12959 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol)) |
11883 { |
12960 { |
11884 |
12961 |
11885 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name; |
12962 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name; |
11886 return return_type_symbol; |
12963 return return_type_symbol; |
11887 |
12964 |
11903 |
12980 |
11904 { |
12981 { |
11905 identifier_c param_name("IN"); |
12982 identifier_c param_name("IN"); |
11906 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12983 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
11907 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
12984 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
11908 |
12985 symbol_c *IN_type_symbol = NULL; |
11909 /* Get the value from a foo(<param_value>) style call */ |
12986 |
11910 if (IN_param_value == NULL) |
12987 /* Get the value from a foo(<param_value>) style call */ |
11911 IN_param_value = function_call_param_iterator.next(); |
12988 if (IN_param_value == NULL) |
11912 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
12989 IN_param_value = function_call_param_iterator.next(); |
11913 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
12990 if (IN_param_value != NULL) { |
11914 |
12991 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
11915 if(search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol)) |
12992 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
12993 } |
|
12994 |
|
12995 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol)) |
11916 { |
12996 { |
11917 |
12997 |
11918 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name; |
12998 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name; |
11919 return return_type_symbol; |
12999 return return_type_symbol; |
11920 |
13000 |
11936 |
13016 |
11937 { |
13017 { |
11938 identifier_c param_name("IN"); |
13018 identifier_c param_name("IN"); |
11939 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13019 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
11940 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
13020 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
11941 |
13021 symbol_c *IN_type_symbol = NULL; |
11942 /* Get the value from a foo(<param_value>) style call */ |
13022 |
11943 if (IN_param_value == NULL) |
13023 /* Get the value from a foo(<param_value>) style call */ |
11944 IN_param_value = function_call_param_iterator.next(); |
13024 if (IN_param_value == NULL) |
11945 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
13025 IN_param_value = function_call_param_iterator.next(); |
11946 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
13026 if (IN_param_value != NULL) { |
11947 |
13027 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
11948 if(search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol)) |
13028 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
13029 } |
|
13030 |
|
13031 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol)) |
11949 { |
13032 { |
11950 |
13033 |
11951 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name; |
13034 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name; |
11952 return return_type_symbol; |
13035 return return_type_symbol; |
11953 |
13036 |
11969 |
13052 |
11970 { |
13053 { |
11971 identifier_c param_name("IN"); |
13054 identifier_c param_name("IN"); |
11972 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13055 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
11973 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
13056 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
11974 |
13057 symbol_c *IN_type_symbol = NULL; |
11975 /* Get the value from a foo(<param_value>) style call */ |
13058 |
11976 if (IN_param_value == NULL) |
13059 /* Get the value from a foo(<param_value>) style call */ |
11977 IN_param_value = function_call_param_iterator.next(); |
13060 if (IN_param_value == NULL) |
11978 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
13061 IN_param_value = function_call_param_iterator.next(); |
11979 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
13062 if (IN_param_value != NULL) { |
11980 |
13063 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
11981 if(search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol)) |
13064 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
13065 } |
|
13066 |
|
13067 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol)) |
11982 { |
13068 { |
11983 |
13069 |
11984 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name; |
13070 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name; |
11985 return return_type_symbol; |
13071 return return_type_symbol; |
11986 |
13072 |
12002 |
13088 |
12003 { |
13089 { |
12004 identifier_c param_name("IN"); |
13090 identifier_c param_name("IN"); |
12005 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13091 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12006 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
13092 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
12007 |
13093 symbol_c *IN_type_symbol = NULL; |
12008 /* Get the value from a foo(<param_value>) style call */ |
13094 |
12009 if (IN_param_value == NULL) |
13095 /* Get the value from a foo(<param_value>) style call */ |
12010 IN_param_value = function_call_param_iterator.next(); |
13096 if (IN_param_value == NULL) |
12011 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
13097 IN_param_value = function_call_param_iterator.next(); |
12012 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
13098 if (IN_param_value != NULL) { |
12013 |
13099 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
12014 if(search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol)) |
13100 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
13101 } |
|
13102 |
|
13103 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol)) |
12015 { |
13104 { |
12016 |
13105 |
12017 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name; |
13106 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name; |
12018 return return_type_symbol; |
13107 return return_type_symbol; |
12019 |
13108 |
12035 |
13124 |
12036 { |
13125 { |
12037 identifier_c param_name("IN"); |
13126 identifier_c param_name("IN"); |
12038 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13127 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12039 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
13128 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
12040 |
13129 symbol_c *IN_type_symbol = NULL; |
12041 /* Get the value from a foo(<param_value>) style call */ |
13130 |
12042 if (IN_param_value == NULL) |
13131 /* Get the value from a foo(<param_value>) style call */ |
12043 IN_param_value = function_call_param_iterator.next(); |
13132 if (IN_param_value == NULL) |
12044 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
13133 IN_param_value = function_call_param_iterator.next(); |
12045 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
13134 if (IN_param_value != NULL) { |
12046 |
13135 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
12047 if(search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol)) |
13136 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
13137 } |
|
13138 |
|
13139 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol)) |
12048 { |
13140 { |
12049 |
13141 |
12050 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
13142 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
12051 return return_type_symbol; |
13143 return return_type_symbol; |
12052 |
13144 |
12068 |
13160 |
12069 { |
13161 { |
12070 identifier_c param_name("IN"); |
13162 identifier_c param_name("IN"); |
12071 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13163 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12072 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
13164 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
12073 |
13165 symbol_c *IN_type_symbol = NULL; |
12074 /* Get the value from a foo(<param_value>) style call */ |
13166 |
12075 if (IN_param_value == NULL) |
13167 /* Get the value from a foo(<param_value>) style call */ |
12076 IN_param_value = function_call_param_iterator.next(); |
13168 if (IN_param_value == NULL) |
12077 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
13169 IN_param_value = function_call_param_iterator.next(); |
12078 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
13170 if (IN_param_value != NULL) { |
12079 |
13171 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
12080 if(search_expression_type->is_real_type(IN_type_symbol)) |
13172 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
13173 } |
|
13174 |
|
13175 if(IN_type_symbol == NULL || search_expression_type->is_real_type(IN_type_symbol)) |
12081 { |
13176 { |
12082 |
13177 |
12083 symbol_c * return_type_symbol = &search_constant_type_c::constant_int_type_name; |
13178 symbol_c * return_type_symbol = &search_constant_type_c::constant_int_type_name; |
12084 return return_type_symbol; |
13179 return return_type_symbol; |
12085 |
13180 |
12101 |
13196 |
12102 { |
13197 { |
12103 identifier_c param_name("IN"); |
13198 identifier_c param_name("IN"); |
12104 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13199 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12105 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
13200 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
12106 |
13201 symbol_c *IN_type_symbol = NULL; |
12107 /* Get the value from a foo(<param_value>) style call */ |
13202 |
12108 if (IN_param_value == NULL) |
13203 /* Get the value from a foo(<param_value>) style call */ |
12109 IN_param_value = function_call_param_iterator.next(); |
13204 if (IN_param_value == NULL) |
12110 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
13205 IN_param_value = function_call_param_iterator.next(); |
12111 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
13206 if (IN_param_value != NULL) { |
12112 |
13207 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
12113 if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol)) |
13208 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
13209 } |
|
13210 |
|
13211 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol)) |
12114 { |
13212 { |
12115 |
13213 |
12116 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name; |
13214 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name; |
12117 return return_type_symbol; |
13215 return return_type_symbol; |
12118 |
13216 |
12134 |
13232 |
12135 { |
13233 { |
12136 identifier_c param_name("IN"); |
13234 identifier_c param_name("IN"); |
12137 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13235 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12138 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
13236 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
12139 |
13237 symbol_c *IN_type_symbol = NULL; |
12140 /* Get the value from a foo(<param_value>) style call */ |
13238 |
12141 if (IN_param_value == NULL) |
13239 /* Get the value from a foo(<param_value>) style call */ |
12142 IN_param_value = function_call_param_iterator.next(); |
13240 if (IN_param_value == NULL) |
12143 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
13241 IN_param_value = function_call_param_iterator.next(); |
12144 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
13242 if (IN_param_value != NULL) { |
12145 |
13243 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
12146 if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol)) |
13244 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
13245 } |
|
13246 |
|
13247 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol)) |
12147 { |
13248 { |
12148 |
13249 |
12149 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name; |
13250 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name; |
12150 return return_type_symbol; |
13251 return return_type_symbol; |
12151 |
13252 |
12167 |
13268 |
12168 { |
13269 { |
12169 identifier_c param_name("IN"); |
13270 identifier_c param_name("IN"); |
12170 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13271 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12171 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
13272 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
12172 |
13273 symbol_c *IN_type_symbol = NULL; |
12173 /* Get the value from a foo(<param_value>) style call */ |
13274 |
12174 if (IN_param_value == NULL) |
13275 /* Get the value from a foo(<param_value>) style call */ |
12175 IN_param_value = function_call_param_iterator.next(); |
13276 if (IN_param_value == NULL) |
12176 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
13277 IN_param_value = function_call_param_iterator.next(); |
12177 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
13278 if (IN_param_value != NULL) { |
12178 |
13279 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
12179 if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol)) |
13280 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
13281 } |
|
13282 |
|
13283 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol)) |
12180 { |
13284 { |
12181 |
13285 |
12182 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name; |
13286 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name; |
12183 return return_type_symbol; |
13287 return return_type_symbol; |
12184 |
13288 |
12200 |
13304 |
12201 { |
13305 { |
12202 identifier_c param_name("IN"); |
13306 identifier_c param_name("IN"); |
12203 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13307 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12204 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
13308 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
12205 |
13309 symbol_c *IN_type_symbol = NULL; |
12206 /* Get the value from a foo(<param_value>) style call */ |
13310 |
12207 if (IN_param_value == NULL) |
13311 /* Get the value from a foo(<param_value>) style call */ |
12208 IN_param_value = function_call_param_iterator.next(); |
13312 if (IN_param_value == NULL) |
12209 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
13313 IN_param_value = function_call_param_iterator.next(); |
12210 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
13314 if (IN_param_value != NULL) { |
12211 |
13315 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
12212 if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol)) |
13316 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
13317 } |
|
13318 |
|
13319 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol)) |
12213 { |
13320 { |
12214 |
13321 |
12215 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name; |
13322 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name; |
12216 return return_type_symbol; |
13323 return return_type_symbol; |
12217 |
13324 |
12233 |
13340 |
12234 { |
13341 { |
12235 identifier_c param_name("IN"); |
13342 identifier_c param_name("IN"); |
12236 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13343 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12237 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
13344 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
12238 |
13345 symbol_c *IN_type_symbol = NULL; |
12239 /* Get the value from a foo(<param_value>) style call */ |
13346 |
12240 if (IN_param_value == NULL) |
13347 /* Get the value from a foo(<param_value>) style call */ |
12241 IN_param_value = function_call_param_iterator.next(); |
13348 if (IN_param_value == NULL) |
12242 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
13349 IN_param_value = function_call_param_iterator.next(); |
12243 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
13350 if (IN_param_value != NULL) { |
12244 |
13351 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
12245 if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol)) |
13352 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
13353 } |
|
13354 |
|
13355 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol)) |
12246 { |
13356 { |
12247 |
13357 |
12248 symbol_c * return_type_symbol = &search_constant_type_c::constant_int_type_name; |
13358 symbol_c * return_type_symbol = &search_constant_type_c::constant_int_type_name; |
12249 return return_type_symbol; |
13359 return return_type_symbol; |
12250 |
13360 |
12266 |
13376 |
12267 { |
13377 { |
12268 identifier_c param_name("IN"); |
13378 identifier_c param_name("IN"); |
12269 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13379 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12270 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
13380 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
12271 |
13381 symbol_c *IN_type_symbol = NULL; |
12272 /* Get the value from a foo(<param_value>) style call */ |
13382 |
12273 if (IN_param_value == NULL) |
13383 /* Get the value from a foo(<param_value>) style call */ |
12274 IN_param_value = function_call_param_iterator.next(); |
13384 if (IN_param_value == NULL) |
12275 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
13385 IN_param_value = function_call_param_iterator.next(); |
12276 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
13386 if (IN_param_value != NULL) { |
12277 |
13387 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
12278 if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol)) |
13388 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
13389 } |
|
13390 |
|
13391 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol)) |
12279 { |
13392 { |
12280 |
13393 |
12281 symbol_c * return_type_symbol = &search_constant_type_c::constant_int_type_name; |
13394 symbol_c * return_type_symbol = &search_constant_type_c::constant_int_type_name; |
12282 return return_type_symbol; |
13395 return return_type_symbol; |
12283 |
13396 |
12299 |
13412 |
12300 { |
13413 { |
12301 identifier_c param_name("IN"); |
13414 identifier_c param_name("IN"); |
12302 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13415 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12303 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
13416 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
12304 |
13417 symbol_c *IN_type_symbol = NULL; |
12305 /* Get the value from a foo(<param_value>) style call */ |
13418 |
12306 if (IN_param_value == NULL) |
13419 /* Get the value from a foo(<param_value>) style call */ |
12307 IN_param_value = function_call_param_iterator.next(); |
13420 if (IN_param_value == NULL) |
12308 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
13421 IN_param_value = function_call_param_iterator.next(); |
12309 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
13422 if (IN_param_value != NULL) { |
12310 |
13423 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
12311 if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol)) |
13424 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
13425 } |
|
13426 |
|
13427 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol)) |
12312 { |
13428 { |
12313 |
13429 |
12314 symbol_c * return_type_symbol = &search_constant_type_c::constant_int_type_name; |
13430 symbol_c * return_type_symbol = &search_constant_type_c::constant_int_type_name; |
12315 return return_type_symbol; |
13431 return return_type_symbol; |
12316 |
13432 |
12332 |
13448 |
12333 { |
13449 { |
12334 identifier_c param_name("IN"); |
13450 identifier_c param_name("IN"); |
12335 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13451 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12336 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
13452 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
12337 |
13453 symbol_c *IN_type_symbol = NULL; |
12338 /* Get the value from a foo(<param_value>) style call */ |
13454 |
12339 if (IN_param_value == NULL) |
13455 /* Get the value from a foo(<param_value>) style call */ |
12340 IN_param_value = function_call_param_iterator.next(); |
13456 if (IN_param_value == NULL) |
12341 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
13457 IN_param_value = function_call_param_iterator.next(); |
12342 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
13458 if (IN_param_value != NULL) { |
12343 |
13459 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
12344 if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol)) |
13460 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
13461 } |
|
13462 |
|
13463 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol)) |
12345 { |
13464 { |
12346 |
13465 |
12347 symbol_c * return_type_symbol = &search_constant_type_c::constant_int_type_name; |
13466 symbol_c * return_type_symbol = &search_constant_type_c::constant_int_type_name; |
12348 return return_type_symbol; |
13467 return return_type_symbol; |
12349 |
13468 |
12365 |
13484 |
12366 { |
13485 { |
12367 identifier_c param_name("IN"); |
13486 identifier_c param_name("IN"); |
12368 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13487 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12369 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
13488 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
12370 |
13489 symbol_c *IN_type_symbol = NULL; |
12371 /* Get the value from a foo(<param_value>) style call */ |
13490 |
12372 if (IN_param_value == NULL) |
13491 /* Get the value from a foo(<param_value>) style call */ |
12373 IN_param_value = function_call_param_iterator.next(); |
13492 if (IN_param_value == NULL) |
12374 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
13493 IN_param_value = function_call_param_iterator.next(); |
12375 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
13494 if (IN_param_value != NULL) { |
12376 |
13495 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
12377 if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol)) |
13496 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
13497 } |
|
13498 |
|
13499 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol)) |
12378 { |
13500 { |
12379 |
13501 |
12380 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name; |
13502 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name; |
12381 return return_type_symbol; |
13503 return return_type_symbol; |
12382 |
13504 |
12398 |
13520 |
12399 { |
13521 { |
12400 identifier_c param_name("IN"); |
13522 identifier_c param_name("IN"); |
12401 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13523 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12402 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
13524 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
12403 |
13525 symbol_c *IN_type_symbol = NULL; |
12404 /* Get the value from a foo(<param_value>) style call */ |
13526 |
12405 if (IN_param_value == NULL) |
13527 /* Get the value from a foo(<param_value>) style call */ |
12406 IN_param_value = function_call_param_iterator.next(); |
13528 if (IN_param_value == NULL) |
12407 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
13529 IN_param_value = function_call_param_iterator.next(); |
12408 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
13530 if (IN_param_value != NULL) { |
12409 |
13531 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
12410 if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol)) |
13532 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
13533 } |
|
13534 |
|
13535 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol)) |
12411 { |
13536 { |
12412 |
13537 |
12413 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name; |
13538 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name; |
12414 return return_type_symbol; |
13539 return return_type_symbol; |
12415 |
13540 |
12431 |
13556 |
12432 { |
13557 { |
12433 identifier_c param_name("IN"); |
13558 identifier_c param_name("IN"); |
12434 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13559 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12435 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
13560 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
12436 |
13561 symbol_c *IN_type_symbol = NULL; |
12437 /* Get the value from a foo(<param_value>) style call */ |
13562 |
12438 if (IN_param_value == NULL) |
13563 /* Get the value from a foo(<param_value>) style call */ |
12439 IN_param_value = function_call_param_iterator.next(); |
13564 if (IN_param_value == NULL) |
12440 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
13565 IN_param_value = function_call_param_iterator.next(); |
12441 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
13566 if (IN_param_value != NULL) { |
12442 |
13567 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
12443 if(search_expression_type->is_num_type(IN_type_symbol)) |
13568 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
13569 } |
|
13570 |
|
13571 if(IN_type_symbol == NULL || search_expression_type->is_num_type(IN_type_symbol)) |
12444 { |
13572 { |
12445 |
13573 |
12446 symbol_c * return_type_symbol = IN_type_symbol; |
13574 symbol_c * return_type_symbol = IN_type_symbol; |
12447 return return_type_symbol; |
13575 return return_type_symbol; |
12448 |
13576 |
12464 |
13592 |
12465 { |
13593 { |
12466 identifier_c param_name("IN"); |
13594 identifier_c param_name("IN"); |
12467 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13595 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12468 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
13596 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
12469 |
13597 symbol_c *IN_type_symbol = NULL; |
12470 /* Get the value from a foo(<param_value>) style call */ |
13598 |
12471 if (IN_param_value == NULL) |
13599 /* Get the value from a foo(<param_value>) style call */ |
12472 IN_param_value = function_call_param_iterator.next(); |
13600 if (IN_param_value == NULL) |
12473 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
13601 IN_param_value = function_call_param_iterator.next(); |
12474 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
13602 if (IN_param_value != NULL) { |
12475 |
13603 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
12476 if(search_expression_type->is_real_type(IN_type_symbol)) |
13604 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
13605 } |
|
13606 |
|
13607 if(IN_type_symbol == NULL || search_expression_type->is_real_type(IN_type_symbol)) |
12477 { |
13608 { |
12478 |
13609 |
12479 symbol_c * return_type_symbol = IN_type_symbol; |
13610 symbol_c * return_type_symbol = IN_type_symbol; |
12480 return return_type_symbol; |
13611 return return_type_symbol; |
12481 |
13612 |
12497 |
13628 |
12498 { |
13629 { |
12499 identifier_c param_name("IN"); |
13630 identifier_c param_name("IN"); |
12500 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13631 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12501 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
13632 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
12502 |
13633 symbol_c *IN_type_symbol = NULL; |
12503 /* Get the value from a foo(<param_value>) style call */ |
13634 |
12504 if (IN_param_value == NULL) |
13635 /* Get the value from a foo(<param_value>) style call */ |
12505 IN_param_value = function_call_param_iterator.next(); |
13636 if (IN_param_value == NULL) |
12506 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
13637 IN_param_value = function_call_param_iterator.next(); |
12507 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
13638 if (IN_param_value != NULL) { |
12508 |
13639 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
12509 if(search_expression_type->is_real_type(IN_type_symbol)) |
13640 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
13641 } |
|
13642 |
|
13643 if(IN_type_symbol == NULL || search_expression_type->is_real_type(IN_type_symbol)) |
12510 { |
13644 { |
12511 |
13645 |
12512 symbol_c * return_type_symbol = IN_type_symbol; |
13646 symbol_c * return_type_symbol = IN_type_symbol; |
12513 return return_type_symbol; |
13647 return return_type_symbol; |
12514 |
13648 |
12530 |
13664 |
12531 { |
13665 { |
12532 identifier_c param_name("IN"); |
13666 identifier_c param_name("IN"); |
12533 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13667 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12534 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
13668 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
12535 |
13669 symbol_c *IN_type_symbol = NULL; |
12536 /* Get the value from a foo(<param_value>) style call */ |
13670 |
12537 if (IN_param_value == NULL) |
13671 /* Get the value from a foo(<param_value>) style call */ |
12538 IN_param_value = function_call_param_iterator.next(); |
13672 if (IN_param_value == NULL) |
12539 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
13673 IN_param_value = function_call_param_iterator.next(); |
12540 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
13674 if (IN_param_value != NULL) { |
12541 |
13675 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
12542 if(search_expression_type->is_real_type(IN_type_symbol)) |
13676 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
13677 } |
|
13678 |
|
13679 if(IN_type_symbol == NULL || search_expression_type->is_real_type(IN_type_symbol)) |
12543 { |
13680 { |
12544 |
13681 |
12545 symbol_c * return_type_symbol = IN_type_symbol; |
13682 symbol_c * return_type_symbol = IN_type_symbol; |
12546 return return_type_symbol; |
13683 return return_type_symbol; |
12547 |
13684 |
12563 |
13700 |
12564 { |
13701 { |
12565 identifier_c param_name("IN"); |
13702 identifier_c param_name("IN"); |
12566 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13703 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12567 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
13704 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
12568 |
13705 symbol_c *IN_type_symbol = NULL; |
12569 /* Get the value from a foo(<param_value>) style call */ |
13706 |
12570 if (IN_param_value == NULL) |
13707 /* Get the value from a foo(<param_value>) style call */ |
12571 IN_param_value = function_call_param_iterator.next(); |
13708 if (IN_param_value == NULL) |
12572 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
13709 IN_param_value = function_call_param_iterator.next(); |
12573 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
13710 if (IN_param_value != NULL) { |
12574 |
13711 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
12575 if(search_expression_type->is_real_type(IN_type_symbol)) |
13712 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
13713 } |
|
13714 |
|
13715 if(IN_type_symbol == NULL || search_expression_type->is_real_type(IN_type_symbol)) |
12576 { |
13716 { |
12577 |
13717 |
12578 symbol_c * return_type_symbol = IN_type_symbol; |
13718 symbol_c * return_type_symbol = IN_type_symbol; |
12579 return return_type_symbol; |
13719 return return_type_symbol; |
12580 |
13720 |
12596 |
13736 |
12597 { |
13737 { |
12598 identifier_c param_name("IN"); |
13738 identifier_c param_name("IN"); |
12599 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13739 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12600 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
13740 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
12601 |
13741 symbol_c *IN_type_symbol = NULL; |
12602 /* Get the value from a foo(<param_value>) style call */ |
13742 |
12603 if (IN_param_value == NULL) |
13743 /* Get the value from a foo(<param_value>) style call */ |
12604 IN_param_value = function_call_param_iterator.next(); |
13744 if (IN_param_value == NULL) |
12605 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
13745 IN_param_value = function_call_param_iterator.next(); |
12606 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
13746 if (IN_param_value != NULL) { |
12607 |
13747 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
12608 if(search_expression_type->is_real_type(IN_type_symbol)) |
13748 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
13749 } |
|
13750 |
|
13751 if(IN_type_symbol == NULL || search_expression_type->is_real_type(IN_type_symbol)) |
12609 { |
13752 { |
12610 |
13753 |
12611 symbol_c * return_type_symbol = IN_type_symbol; |
13754 symbol_c * return_type_symbol = IN_type_symbol; |
12612 return return_type_symbol; |
13755 return return_type_symbol; |
12613 |
13756 |
12629 |
13772 |
12630 { |
13773 { |
12631 identifier_c param_name("IN"); |
13774 identifier_c param_name("IN"); |
12632 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13775 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12633 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
13776 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
12634 |
13777 symbol_c *IN_type_symbol = NULL; |
12635 /* Get the value from a foo(<param_value>) style call */ |
13778 |
12636 if (IN_param_value == NULL) |
13779 /* Get the value from a foo(<param_value>) style call */ |
12637 IN_param_value = function_call_param_iterator.next(); |
13780 if (IN_param_value == NULL) |
12638 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
13781 IN_param_value = function_call_param_iterator.next(); |
12639 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
13782 if (IN_param_value != NULL) { |
12640 |
13783 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
12641 if(search_expression_type->is_real_type(IN_type_symbol)) |
13784 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
13785 } |
|
13786 |
|
13787 if(IN_type_symbol == NULL || search_expression_type->is_real_type(IN_type_symbol)) |
12642 { |
13788 { |
12643 |
13789 |
12644 symbol_c * return_type_symbol = IN_type_symbol; |
13790 symbol_c * return_type_symbol = IN_type_symbol; |
12645 return return_type_symbol; |
13791 return return_type_symbol; |
12646 |
13792 |
12662 |
13808 |
12663 { |
13809 { |
12664 identifier_c param_name("IN"); |
13810 identifier_c param_name("IN"); |
12665 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13811 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12666 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
13812 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
12667 |
13813 symbol_c *IN_type_symbol = NULL; |
12668 /* Get the value from a foo(<param_value>) style call */ |
13814 |
12669 if (IN_param_value == NULL) |
13815 /* Get the value from a foo(<param_value>) style call */ |
12670 IN_param_value = function_call_param_iterator.next(); |
13816 if (IN_param_value == NULL) |
12671 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
13817 IN_param_value = function_call_param_iterator.next(); |
12672 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
13818 if (IN_param_value != NULL) { |
12673 |
13819 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
12674 if(search_expression_type->is_real_type(IN_type_symbol)) |
13820 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
13821 } |
|
13822 |
|
13823 if(IN_type_symbol == NULL || search_expression_type->is_real_type(IN_type_symbol)) |
12675 { |
13824 { |
12676 |
13825 |
12677 symbol_c * return_type_symbol = IN_type_symbol; |
13826 symbol_c * return_type_symbol = IN_type_symbol; |
12678 return return_type_symbol; |
13827 return return_type_symbol; |
12679 |
13828 |
12695 |
13844 |
12696 { |
13845 { |
12697 identifier_c param_name("IN"); |
13846 identifier_c param_name("IN"); |
12698 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13847 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12699 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
13848 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
12700 |
13849 symbol_c *IN_type_symbol = NULL; |
12701 /* Get the value from a foo(<param_value>) style call */ |
13850 |
12702 if (IN_param_value == NULL) |
13851 /* Get the value from a foo(<param_value>) style call */ |
12703 IN_param_value = function_call_param_iterator.next(); |
13852 if (IN_param_value == NULL) |
12704 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
13853 IN_param_value = function_call_param_iterator.next(); |
12705 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
13854 if (IN_param_value != NULL) { |
12706 |
13855 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
12707 if(search_expression_type->is_real_type(IN_type_symbol)) |
13856 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
13857 } |
|
13858 |
|
13859 if(IN_type_symbol == NULL || search_expression_type->is_real_type(IN_type_symbol)) |
12708 { |
13860 { |
12709 |
13861 |
12710 symbol_c * return_type_symbol = IN_type_symbol; |
13862 symbol_c * return_type_symbol = IN_type_symbol; |
12711 return return_type_symbol; |
13863 return return_type_symbol; |
12712 |
13864 |
12728 |
13880 |
12729 { |
13881 { |
12730 identifier_c param_name("IN"); |
13882 identifier_c param_name("IN"); |
12731 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13883 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12732 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
13884 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
12733 |
13885 symbol_c *IN_type_symbol = NULL; |
12734 /* Get the value from a foo(<param_value>) style call */ |
13886 |
12735 if (IN_param_value == NULL) |
13887 /* Get the value from a foo(<param_value>) style call */ |
12736 IN_param_value = function_call_param_iterator.next(); |
13888 if (IN_param_value == NULL) |
12737 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
13889 IN_param_value = function_call_param_iterator.next(); |
12738 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
13890 if (IN_param_value != NULL) { |
12739 |
13891 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
12740 if(search_expression_type->is_real_type(IN_type_symbol)) |
13892 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
13893 } |
|
13894 |
|
13895 if(IN_type_symbol == NULL || search_expression_type->is_real_type(IN_type_symbol)) |
12741 { |
13896 { |
12742 |
13897 |
12743 symbol_c * return_type_symbol = IN_type_symbol; |
13898 symbol_c * return_type_symbol = IN_type_symbol; |
12744 return return_type_symbol; |
13899 return return_type_symbol; |
12745 |
13900 |
12761 |
13916 |
12762 { |
13917 { |
12763 identifier_c param_name("IN"); |
13918 identifier_c param_name("IN"); |
12764 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13919 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12765 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
13920 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
12766 |
13921 symbol_c *IN_type_symbol = NULL; |
12767 /* Get the value from a foo(<param_value>) style call */ |
13922 |
12768 if (IN_param_value == NULL) |
13923 /* Get the value from a foo(<param_value>) style call */ |
12769 IN_param_value = function_call_param_iterator.next(); |
13924 if (IN_param_value == NULL) |
12770 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
13925 IN_param_value = function_call_param_iterator.next(); |
12771 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
13926 if (IN_param_value != NULL) { |
12772 |
13927 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
12773 if(search_expression_type->is_real_type(IN_type_symbol)) |
13928 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
13929 } |
|
13930 |
|
13931 if(IN_type_symbol == NULL || search_expression_type->is_real_type(IN_type_symbol)) |
12774 { |
13932 { |
12775 |
13933 |
12776 symbol_c * return_type_symbol = IN_type_symbol; |
13934 symbol_c * return_type_symbol = IN_type_symbol; |
12777 return return_type_symbol; |
13935 return return_type_symbol; |
12778 |
13936 |
12794 |
13952 |
12795 { |
13953 { |
12796 identifier_c param_name("IN1"); |
13954 identifier_c param_name("IN1"); |
12797 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13955 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12798 symbol_c *IN1_param_value = function_call_param_iterator.search(¶m_name); |
13956 symbol_c *IN1_param_value = function_call_param_iterator.search(¶m_name); |
|
13957 symbol_c *IN1_type_symbol = NULL; |
12799 |
13958 |
12800 /* Get the value from a foo(<param_value>) style call */ |
13959 /* Get the value from a foo(<param_value>) style call */ |
12801 if (IN1_param_value == NULL) |
13960 if (IN1_param_value == NULL) |
12802 IN1_param_value = function_call_param_iterator.next(); |
13961 IN1_param_value = function_call_param_iterator.next(); |
12803 symbol_c *IN1_type_symbol = search_expression_type->get_type(IN1_param_value); |
13962 if (IN1_param_value != NULL) { |
12804 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN1_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN1_type_symbol, last_type_symbol) : IN1_type_symbol ; |
13963 IN1_type_symbol = search_expression_type->get_type(IN1_param_value); |
12805 |
13964 last_type_symbol = last_type_symbol && IN1_type_symbol && search_expression_type->is_same_type(IN1_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN1_type_symbol, last_type_symbol) : IN1_type_symbol ; |
12806 if(search_expression_type->is_num_type(IN1_type_symbol)) |
13965 } |
|
13966 |
|
13967 if(IN1_type_symbol == NULL || search_expression_type->is_num_type(IN1_type_symbol)) |
12807 { |
13968 { |
12808 |
13969 |
12809 { |
13970 { |
12810 identifier_c param_name("IN2"); |
13971 identifier_c param_name("IN2"); |
12811 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13972 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12812 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
13973 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
13974 symbol_c *IN2_type_symbol = NULL; |
12813 |
13975 |
12814 /* Get the value from a foo(<param_value>) style call */ |
13976 /* Get the value from a foo(<param_value>) style call */ |
12815 if (IN2_param_value == NULL) |
13977 if (IN2_param_value == NULL) |
12816 IN2_param_value = function_call_param_iterator.next(); |
13978 IN2_param_value = function_call_param_iterator.next(); |
12817 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
13979 if (IN2_param_value != NULL) { |
12818 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
13980 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
12819 |
13981 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
12820 if(search_expression_type->is_num_type(IN2_type_symbol)) |
13982 } |
|
13983 |
|
13984 if(IN2_type_symbol == NULL || search_expression_type->is_num_type(IN2_type_symbol)) |
12821 { |
13985 { |
12822 |
13986 |
12823 symbol_c * return_type_symbol = last_type_symbol; |
13987 symbol_c * return_type_symbol = last_type_symbol; |
12824 return return_type_symbol; |
13988 return return_type_symbol; |
12825 |
13989 |
12829 ERROR; |
13993 ERROR; |
12830 } |
13994 } |
12831 |
13995 |
12832 } |
13996 } |
12833 |
13997 |
12834 if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol)) |
13998 if(IN1_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol)) |
12835 { |
13999 { |
12836 |
14000 |
12837 { |
14001 { |
12838 identifier_c param_name("IN2"); |
14002 identifier_c param_name("IN2"); |
12839 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14003 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12840 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
14004 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
14005 symbol_c *IN2_type_symbol = NULL; |
12841 |
14006 |
12842 /* Get the value from a foo(<param_value>) style call */ |
14007 /* Get the value from a foo(<param_value>) style call */ |
12843 if (IN2_param_value == NULL) |
14008 if (IN2_param_value == NULL) |
12844 IN2_param_value = function_call_param_iterator.next(); |
14009 IN2_param_value = function_call_param_iterator.next(); |
12845 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
14010 if (IN2_param_value != NULL) { |
12846 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
14011 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
12847 |
14012 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
12848 if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
14013 } |
|
14014 |
|
14015 if(IN2_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
12849 { |
14016 { |
12850 |
14017 |
12851 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name; |
14018 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name; |
12852 return return_type_symbol; |
14019 return return_type_symbol; |
12853 |
14020 |
12857 ERROR; |
14024 ERROR; |
12858 } |
14025 } |
12859 |
14026 |
12860 } |
14027 } |
12861 |
14028 |
12862 if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol)) |
14029 if(IN1_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol)) |
12863 { |
14030 { |
12864 |
14031 |
12865 { |
14032 { |
12866 identifier_c param_name("IN2"); |
14033 identifier_c param_name("IN2"); |
12867 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14034 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12868 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
14035 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
14036 symbol_c *IN2_type_symbol = NULL; |
12869 |
14037 |
12870 /* Get the value from a foo(<param_value>) style call */ |
14038 /* Get the value from a foo(<param_value>) style call */ |
12871 if (IN2_param_value == NULL) |
14039 if (IN2_param_value == NULL) |
12872 IN2_param_value = function_call_param_iterator.next(); |
14040 IN2_param_value = function_call_param_iterator.next(); |
12873 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
14041 if (IN2_param_value != NULL) { |
12874 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
14042 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
12875 |
14043 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
12876 if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
14044 } |
|
14045 |
|
14046 if(IN2_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
12877 { |
14047 { |
12878 |
14048 |
12879 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name; |
14049 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name; |
12880 return return_type_symbol; |
14050 return return_type_symbol; |
12881 |
14051 |
12885 ERROR; |
14055 ERROR; |
12886 } |
14056 } |
12887 |
14057 |
12888 } |
14058 } |
12889 |
14059 |
12890 if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
14060 if(IN1_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
12891 { |
14061 { |
12892 |
14062 |
12893 { |
14063 { |
12894 identifier_c param_name("IN2"); |
14064 identifier_c param_name("IN2"); |
12895 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14065 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12896 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
14066 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
14067 symbol_c *IN2_type_symbol = NULL; |
12897 |
14068 |
12898 /* Get the value from a foo(<param_value>) style call */ |
14069 /* Get the value from a foo(<param_value>) style call */ |
12899 if (IN2_param_value == NULL) |
14070 if (IN2_param_value == NULL) |
12900 IN2_param_value = function_call_param_iterator.next(); |
14071 IN2_param_value = function_call_param_iterator.next(); |
12901 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
14072 if (IN2_param_value != NULL) { |
12902 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
14073 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
12903 |
14074 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
12904 if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
14075 } |
|
14076 |
|
14077 if(IN2_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
12905 { |
14078 { |
12906 |
14079 |
12907 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
14080 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
12908 return return_type_symbol; |
14081 return return_type_symbol; |
12909 |
14082 |
12931 |
14104 |
12932 { |
14105 { |
12933 identifier_c param_name("IN1"); |
14106 identifier_c param_name("IN1"); |
12934 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14107 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12935 symbol_c *IN1_param_value = function_call_param_iterator.search(¶m_name); |
14108 symbol_c *IN1_param_value = function_call_param_iterator.search(¶m_name); |
|
14109 symbol_c *IN1_type_symbol = NULL; |
12936 |
14110 |
12937 /* Get the value from a foo(<param_value>) style call */ |
14111 /* Get the value from a foo(<param_value>) style call */ |
12938 if (IN1_param_value == NULL) |
14112 if (IN1_param_value == NULL) |
12939 IN1_param_value = function_call_param_iterator.next(); |
14113 IN1_param_value = function_call_param_iterator.next(); |
12940 symbol_c *IN1_type_symbol = search_expression_type->get_type(IN1_param_value); |
14114 if (IN1_param_value != NULL) { |
12941 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN1_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN1_type_symbol, last_type_symbol) : IN1_type_symbol ; |
14115 IN1_type_symbol = search_expression_type->get_type(IN1_param_value); |
12942 |
14116 last_type_symbol = last_type_symbol && IN1_type_symbol && search_expression_type->is_same_type(IN1_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN1_type_symbol, last_type_symbol) : IN1_type_symbol ; |
12943 if(search_expression_type->is_num_type(IN1_type_symbol)) |
14117 } |
|
14118 |
|
14119 if(IN1_type_symbol == NULL || search_expression_type->is_num_type(IN1_type_symbol)) |
12944 { |
14120 { |
12945 |
14121 |
12946 { |
14122 { |
12947 identifier_c param_name("IN2"); |
14123 identifier_c param_name("IN2"); |
12948 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14124 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12949 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
14125 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
14126 symbol_c *IN2_type_symbol = NULL; |
12950 |
14127 |
12951 /* Get the value from a foo(<param_value>) style call */ |
14128 /* Get the value from a foo(<param_value>) style call */ |
12952 if (IN2_param_value == NULL) |
14129 if (IN2_param_value == NULL) |
12953 IN2_param_value = function_call_param_iterator.next(); |
14130 IN2_param_value = function_call_param_iterator.next(); |
12954 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
14131 if (IN2_param_value != NULL) { |
12955 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
14132 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
12956 |
14133 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
12957 if(search_expression_type->is_num_type(IN2_type_symbol)) |
14134 } |
|
14135 |
|
14136 if(IN2_type_symbol == NULL || search_expression_type->is_num_type(IN2_type_symbol)) |
12958 { |
14137 { |
12959 |
14138 |
12960 symbol_c * return_type_symbol = last_type_symbol; |
14139 symbol_c * return_type_symbol = last_type_symbol; |
12961 return return_type_symbol; |
14140 return return_type_symbol; |
12962 |
14141 |
12966 ERROR; |
14145 ERROR; |
12967 } |
14146 } |
12968 |
14147 |
12969 } |
14148 } |
12970 |
14149 |
12971 if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
14150 if(IN1_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
12972 { |
14151 { |
12973 |
14152 |
12974 { |
14153 { |
12975 identifier_c param_name("IN2"); |
14154 identifier_c param_name("IN2"); |
12976 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14155 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
12977 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
14156 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
14157 symbol_c *IN2_type_symbol = NULL; |
12978 |
14158 |
12979 /* Get the value from a foo(<param_value>) style call */ |
14159 /* Get the value from a foo(<param_value>) style call */ |
12980 if (IN2_param_value == NULL) |
14160 if (IN2_param_value == NULL) |
12981 IN2_param_value = function_call_param_iterator.next(); |
14161 IN2_param_value = function_call_param_iterator.next(); |
12982 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
14162 if (IN2_param_value != NULL) { |
12983 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
14163 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
12984 |
14164 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
12985 if(search_expression_type->is_num_type(IN2_type_symbol)) |
14165 } |
|
14166 |
|
14167 if(IN2_type_symbol == NULL || search_expression_type->is_num_type(IN2_type_symbol)) |
12986 { |
14168 { |
12987 |
14169 |
12988 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
14170 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
12989 return return_type_symbol; |
14171 return return_type_symbol; |
12990 |
14172 |
13012 |
14194 |
13013 { |
14195 { |
13014 identifier_c param_name("IN1"); |
14196 identifier_c param_name("IN1"); |
13015 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14197 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13016 symbol_c *IN1_param_value = function_call_param_iterator.search(¶m_name); |
14198 symbol_c *IN1_param_value = function_call_param_iterator.search(¶m_name); |
|
14199 symbol_c *IN1_type_symbol = NULL; |
13017 |
14200 |
13018 /* Get the value from a foo(<param_value>) style call */ |
14201 /* Get the value from a foo(<param_value>) style call */ |
13019 if (IN1_param_value == NULL) |
14202 if (IN1_param_value == NULL) |
13020 IN1_param_value = function_call_param_iterator.next(); |
14203 IN1_param_value = function_call_param_iterator.next(); |
13021 symbol_c *IN1_type_symbol = search_expression_type->get_type(IN1_param_value); |
14204 if (IN1_param_value != NULL) { |
13022 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN1_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN1_type_symbol, last_type_symbol) : IN1_type_symbol ; |
14205 IN1_type_symbol = search_expression_type->get_type(IN1_param_value); |
13023 |
14206 last_type_symbol = last_type_symbol && IN1_type_symbol && search_expression_type->is_same_type(IN1_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN1_type_symbol, last_type_symbol) : IN1_type_symbol ; |
13024 if(search_expression_type->is_num_type(IN1_type_symbol)) |
14207 } |
|
14208 |
|
14209 if(IN1_type_symbol == NULL || search_expression_type->is_num_type(IN1_type_symbol)) |
13025 { |
14210 { |
13026 |
14211 |
13027 { |
14212 { |
13028 identifier_c param_name("IN2"); |
14213 identifier_c param_name("IN2"); |
13029 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14214 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13030 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
14215 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
14216 symbol_c *IN2_type_symbol = NULL; |
13031 |
14217 |
13032 /* Get the value from a foo(<param_value>) style call */ |
14218 /* Get the value from a foo(<param_value>) style call */ |
13033 if (IN2_param_value == NULL) |
14219 if (IN2_param_value == NULL) |
13034 IN2_param_value = function_call_param_iterator.next(); |
14220 IN2_param_value = function_call_param_iterator.next(); |
13035 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
14221 if (IN2_param_value != NULL) { |
13036 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
14222 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
13037 |
14223 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
13038 if(search_expression_type->is_num_type(IN2_type_symbol)) |
14224 } |
|
14225 |
|
14226 if(IN2_type_symbol == NULL || search_expression_type->is_num_type(IN2_type_symbol)) |
13039 { |
14227 { |
13040 |
14228 |
13041 symbol_c * return_type_symbol = last_type_symbol; |
14229 symbol_c * return_type_symbol = last_type_symbol; |
13042 return return_type_symbol; |
14230 return return_type_symbol; |
13043 |
14231 |
13047 ERROR; |
14235 ERROR; |
13048 } |
14236 } |
13049 |
14237 |
13050 } |
14238 } |
13051 |
14239 |
13052 if(search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol)) |
14240 if(IN1_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol)) |
13053 { |
14241 { |
13054 |
14242 |
13055 { |
14243 { |
13056 identifier_c param_name("IN2"); |
14244 identifier_c param_name("IN2"); |
13057 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14245 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13058 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
14246 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
14247 symbol_c *IN2_type_symbol = NULL; |
13059 |
14248 |
13060 /* Get the value from a foo(<param_value>) style call */ |
14249 /* Get the value from a foo(<param_value>) style call */ |
13061 if (IN2_param_value == NULL) |
14250 if (IN2_param_value == NULL) |
13062 IN2_param_value = function_call_param_iterator.next(); |
14251 IN2_param_value = function_call_param_iterator.next(); |
13063 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
14252 if (IN2_param_value != NULL) { |
13064 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
14253 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
13065 |
14254 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
13066 if(search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol)) |
14255 } |
|
14256 |
|
14257 if(IN2_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol)) |
13067 { |
14258 { |
13068 |
14259 |
13069 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
14260 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
13070 return return_type_symbol; |
14261 return return_type_symbol; |
13071 |
14262 |
13075 ERROR; |
14266 ERROR; |
13076 } |
14267 } |
13077 |
14268 |
13078 } |
14269 } |
13079 |
14270 |
13080 if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol)) |
14271 if(IN1_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol)) |
13081 { |
14272 { |
13082 |
14273 |
13083 { |
14274 { |
13084 identifier_c param_name("IN2"); |
14275 identifier_c param_name("IN2"); |
13085 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14276 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13086 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
14277 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
14278 symbol_c *IN2_type_symbol = NULL; |
13087 |
14279 |
13088 /* Get the value from a foo(<param_value>) style call */ |
14280 /* Get the value from a foo(<param_value>) style call */ |
13089 if (IN2_param_value == NULL) |
14281 if (IN2_param_value == NULL) |
13090 IN2_param_value = function_call_param_iterator.next(); |
14282 IN2_param_value = function_call_param_iterator.next(); |
13091 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
14283 if (IN2_param_value != NULL) { |
13092 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
14284 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
13093 |
14285 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
13094 if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol)) |
14286 } |
|
14287 |
|
14288 if(IN2_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol)) |
13095 { |
14289 { |
13096 |
14290 |
13097 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
14291 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
13098 return return_type_symbol; |
14292 return return_type_symbol; |
13099 |
14293 |
13100 } |
14294 } |
13101 |
14295 |
13102 if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
14296 if(IN2_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
13103 { |
14297 { |
13104 |
14298 |
13105 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name; |
14299 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name; |
13106 return return_type_symbol; |
14300 return return_type_symbol; |
13107 |
14301 |
13111 ERROR; |
14305 ERROR; |
13112 } |
14306 } |
13113 |
14307 |
13114 } |
14308 } |
13115 |
14309 |
13116 if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol)) |
14310 if(IN1_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol)) |
13117 { |
14311 { |
13118 |
14312 |
13119 { |
14313 { |
13120 identifier_c param_name("IN2"); |
14314 identifier_c param_name("IN2"); |
13121 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14315 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13122 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
14316 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
14317 symbol_c *IN2_type_symbol = NULL; |
13123 |
14318 |
13124 /* Get the value from a foo(<param_value>) style call */ |
14319 /* Get the value from a foo(<param_value>) style call */ |
13125 if (IN2_param_value == NULL) |
14320 if (IN2_param_value == NULL) |
13126 IN2_param_value = function_call_param_iterator.next(); |
14321 IN2_param_value = function_call_param_iterator.next(); |
13127 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
14322 if (IN2_param_value != NULL) { |
13128 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
14323 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
13129 |
14324 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
13130 if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol)) |
14325 } |
|
14326 |
|
14327 if(IN2_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol)) |
13131 { |
14328 { |
13132 |
14329 |
13133 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
14330 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
13134 return return_type_symbol; |
14331 return return_type_symbol; |
13135 |
14332 |
13136 } |
14333 } |
13137 |
14334 |
13138 if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
14335 if(IN2_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
13139 { |
14336 { |
13140 |
14337 |
13141 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name; |
14338 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name; |
13142 return return_type_symbol; |
14339 return return_type_symbol; |
13143 |
14340 |
13147 ERROR; |
14344 ERROR; |
13148 } |
14345 } |
13149 |
14346 |
13150 } |
14347 } |
13151 |
14348 |
13152 if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
14349 if(IN1_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
13153 { |
14350 { |
13154 |
14351 |
13155 { |
14352 { |
13156 identifier_c param_name("IN2"); |
14353 identifier_c param_name("IN2"); |
13157 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14354 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13158 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
14355 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
14356 symbol_c *IN2_type_symbol = NULL; |
13159 |
14357 |
13160 /* Get the value from a foo(<param_value>) style call */ |
14358 /* Get the value from a foo(<param_value>) style call */ |
13161 if (IN2_param_value == NULL) |
14359 if (IN2_param_value == NULL) |
13162 IN2_param_value = function_call_param_iterator.next(); |
14360 IN2_param_value = function_call_param_iterator.next(); |
13163 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
14361 if (IN2_param_value != NULL) { |
13164 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
14362 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
13165 |
14363 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
13166 if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
14364 } |
|
14365 |
|
14366 if(IN2_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
13167 { |
14367 { |
13168 |
14368 |
13169 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
14369 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
13170 return return_type_symbol; |
14370 return return_type_symbol; |
13171 |
14371 |
13193 |
14393 |
13194 { |
14394 { |
13195 identifier_c param_name("IN1"); |
14395 identifier_c param_name("IN1"); |
13196 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14396 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13197 symbol_c *IN1_param_value = function_call_param_iterator.search(¶m_name); |
14397 symbol_c *IN1_param_value = function_call_param_iterator.search(¶m_name); |
|
14398 symbol_c *IN1_type_symbol = NULL; |
13198 |
14399 |
13199 /* Get the value from a foo(<param_value>) style call */ |
14400 /* Get the value from a foo(<param_value>) style call */ |
13200 if (IN1_param_value == NULL) |
14401 if (IN1_param_value == NULL) |
13201 IN1_param_value = function_call_param_iterator.next(); |
14402 IN1_param_value = function_call_param_iterator.next(); |
13202 symbol_c *IN1_type_symbol = search_expression_type->get_type(IN1_param_value); |
14403 if (IN1_param_value != NULL) { |
13203 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN1_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN1_type_symbol, last_type_symbol) : IN1_type_symbol ; |
14404 IN1_type_symbol = search_expression_type->get_type(IN1_param_value); |
13204 |
14405 last_type_symbol = last_type_symbol && IN1_type_symbol && search_expression_type->is_same_type(IN1_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN1_type_symbol, last_type_symbol) : IN1_type_symbol ; |
13205 if(search_expression_type->is_num_type(IN1_type_symbol)) |
14406 } |
|
14407 |
|
14408 if(IN1_type_symbol == NULL || search_expression_type->is_num_type(IN1_type_symbol)) |
13206 { |
14409 { |
13207 |
14410 |
13208 { |
14411 { |
13209 identifier_c param_name("IN2"); |
14412 identifier_c param_name("IN2"); |
13210 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14413 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13211 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
14414 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
14415 symbol_c *IN2_type_symbol = NULL; |
13212 |
14416 |
13213 /* Get the value from a foo(<param_value>) style call */ |
14417 /* Get the value from a foo(<param_value>) style call */ |
13214 if (IN2_param_value == NULL) |
14418 if (IN2_param_value == NULL) |
13215 IN2_param_value = function_call_param_iterator.next(); |
14419 IN2_param_value = function_call_param_iterator.next(); |
13216 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
14420 if (IN2_param_value != NULL) { |
13217 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
14421 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
13218 |
14422 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
13219 if(search_expression_type->is_num_type(IN2_type_symbol)) |
14423 } |
|
14424 |
|
14425 if(IN2_type_symbol == NULL || search_expression_type->is_num_type(IN2_type_symbol)) |
13220 { |
14426 { |
13221 |
14427 |
13222 symbol_c * return_type_symbol = last_type_symbol; |
14428 symbol_c * return_type_symbol = last_type_symbol; |
13223 return return_type_symbol; |
14429 return return_type_symbol; |
13224 |
14430 |
13228 ERROR; |
14434 ERROR; |
13229 } |
14435 } |
13230 |
14436 |
13231 } |
14437 } |
13232 |
14438 |
13233 if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
14439 if(IN1_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
13234 { |
14440 { |
13235 |
14441 |
13236 { |
14442 { |
13237 identifier_c param_name("IN2"); |
14443 identifier_c param_name("IN2"); |
13238 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14444 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13239 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
14445 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
14446 symbol_c *IN2_type_symbol = NULL; |
13240 |
14447 |
13241 /* Get the value from a foo(<param_value>) style call */ |
14448 /* Get the value from a foo(<param_value>) style call */ |
13242 if (IN2_param_value == NULL) |
14449 if (IN2_param_value == NULL) |
13243 IN2_param_value = function_call_param_iterator.next(); |
14450 IN2_param_value = function_call_param_iterator.next(); |
13244 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
14451 if (IN2_param_value != NULL) { |
13245 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
14452 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
13246 |
14453 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
13247 if(search_expression_type->is_num_type(IN2_type_symbol)) |
14454 } |
|
14455 |
|
14456 if(IN2_type_symbol == NULL || search_expression_type->is_num_type(IN2_type_symbol)) |
13248 { |
14457 { |
13249 |
14458 |
13250 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
14459 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
13251 return return_type_symbol; |
14460 return return_type_symbol; |
13252 |
14461 |
13274 |
14483 |
13275 { |
14484 { |
13276 identifier_c param_name("IN1"); |
14485 identifier_c param_name("IN1"); |
13277 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14486 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13278 symbol_c *IN1_param_value = function_call_param_iterator.search(¶m_name); |
14487 symbol_c *IN1_param_value = function_call_param_iterator.search(¶m_name); |
|
14488 symbol_c *IN1_type_symbol = NULL; |
13279 |
14489 |
13280 /* Get the value from a foo(<param_value>) style call */ |
14490 /* Get the value from a foo(<param_value>) style call */ |
13281 if (IN1_param_value == NULL) |
14491 if (IN1_param_value == NULL) |
13282 IN1_param_value = function_call_param_iterator.next(); |
14492 IN1_param_value = function_call_param_iterator.next(); |
13283 symbol_c *IN1_type_symbol = search_expression_type->get_type(IN1_param_value); |
14493 if (IN1_param_value != NULL) { |
13284 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN1_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN1_type_symbol, last_type_symbol) : IN1_type_symbol ; |
14494 IN1_type_symbol = search_expression_type->get_type(IN1_param_value); |
13285 |
14495 last_type_symbol = last_type_symbol && IN1_type_symbol && search_expression_type->is_same_type(IN1_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN1_type_symbol, last_type_symbol) : IN1_type_symbol ; |
13286 if(search_expression_type->is_num_type(IN1_type_symbol)) |
14496 } |
|
14497 |
|
14498 if(IN1_type_symbol == NULL || search_expression_type->is_num_type(IN1_type_symbol)) |
13287 { |
14499 { |
13288 |
14500 |
13289 { |
14501 { |
13290 identifier_c param_name("IN2"); |
14502 identifier_c param_name("IN2"); |
13291 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14503 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13292 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
14504 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
14505 symbol_c *IN2_type_symbol = NULL; |
13293 |
14506 |
13294 /* Get the value from a foo(<param_value>) style call */ |
14507 /* Get the value from a foo(<param_value>) style call */ |
13295 if (IN2_param_value == NULL) |
14508 if (IN2_param_value == NULL) |
13296 IN2_param_value = function_call_param_iterator.next(); |
14509 IN2_param_value = function_call_param_iterator.next(); |
13297 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
14510 if (IN2_param_value != NULL) { |
13298 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
14511 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
13299 |
14512 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
13300 if(search_expression_type->is_num_type(IN2_type_symbol)) |
14513 } |
|
14514 |
|
14515 if(IN2_type_symbol == NULL || search_expression_type->is_num_type(IN2_type_symbol)) |
13301 { |
14516 { |
13302 |
14517 |
13303 symbol_c * return_type_symbol = last_type_symbol; |
14518 symbol_c * return_type_symbol = last_type_symbol; |
13304 return return_type_symbol; |
14519 return return_type_symbol; |
13305 |
14520 |
13327 |
14542 |
13328 { |
14543 { |
13329 identifier_c param_name("IN1"); |
14544 identifier_c param_name("IN1"); |
13330 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14545 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13331 symbol_c *IN1_param_value = function_call_param_iterator.search(¶m_name); |
14546 symbol_c *IN1_param_value = function_call_param_iterator.search(¶m_name); |
|
14547 symbol_c *IN1_type_symbol = NULL; |
13332 |
14548 |
13333 /* Get the value from a foo(<param_value>) style call */ |
14549 /* Get the value from a foo(<param_value>) style call */ |
13334 if (IN1_param_value == NULL) |
14550 if (IN1_param_value == NULL) |
13335 IN1_param_value = function_call_param_iterator.next(); |
14551 IN1_param_value = function_call_param_iterator.next(); |
13336 symbol_c *IN1_type_symbol = search_expression_type->get_type(IN1_param_value); |
14552 if (IN1_param_value != NULL) { |
13337 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN1_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN1_type_symbol, last_type_symbol) : IN1_type_symbol ; |
14553 IN1_type_symbol = search_expression_type->get_type(IN1_param_value); |
13338 |
14554 last_type_symbol = last_type_symbol && IN1_type_symbol && search_expression_type->is_same_type(IN1_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN1_type_symbol, last_type_symbol) : IN1_type_symbol ; |
13339 if(search_expression_type->is_real_type(IN1_type_symbol)) |
14555 } |
|
14556 |
|
14557 if(IN1_type_symbol == NULL || search_expression_type->is_real_type(IN1_type_symbol)) |
13340 { |
14558 { |
13341 |
14559 |
13342 { |
14560 { |
13343 identifier_c param_name("IN2"); |
14561 identifier_c param_name("IN2"); |
13344 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14562 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13345 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
14563 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
14564 symbol_c *IN2_type_symbol = NULL; |
13346 |
14565 |
13347 /* Get the value from a foo(<param_value>) style call */ |
14566 /* Get the value from a foo(<param_value>) style call */ |
13348 if (IN2_param_value == NULL) |
14567 if (IN2_param_value == NULL) |
13349 IN2_param_value = function_call_param_iterator.next(); |
14568 IN2_param_value = function_call_param_iterator.next(); |
13350 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
14569 if (IN2_param_value != NULL) { |
13351 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
14570 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
13352 |
14571 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
13353 if(search_expression_type->is_num_type(IN2_type_symbol)) |
14572 } |
|
14573 |
|
14574 if(IN2_type_symbol == NULL || search_expression_type->is_num_type(IN2_type_symbol)) |
13354 { |
14575 { |
13355 |
14576 |
13356 symbol_c * return_type_symbol = last_type_symbol; |
14577 symbol_c * return_type_symbol = last_type_symbol; |
13357 return return_type_symbol; |
14578 return return_type_symbol; |
13358 |
14579 |
13380 |
14601 |
13381 { |
14602 { |
13382 identifier_c param_name("IN"); |
14603 identifier_c param_name("IN"); |
13383 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14604 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13384 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
14605 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
13385 |
14606 symbol_c *IN_type_symbol = NULL; |
13386 /* Get the value from a foo(<param_value>) style call */ |
14607 |
13387 if (IN_param_value == NULL) |
14608 /* Get the value from a foo(<param_value>) style call */ |
13388 IN_param_value = function_call_param_iterator.next(); |
14609 if (IN_param_value == NULL) |
13389 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
14610 IN_param_value = function_call_param_iterator.next(); |
13390 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
14611 if (IN_param_value != NULL) { |
|
14612 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
|
14613 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
14614 } |
13391 |
14615 |
13392 |
14616 |
13393 { |
14617 { |
13394 |
14618 |
13395 symbol_c * return_type_symbol = last_type_symbol; |
14619 symbol_c * return_type_symbol = last_type_symbol; |
13413 |
14637 |
13414 { |
14638 { |
13415 identifier_c param_name("IN"); |
14639 identifier_c param_name("IN"); |
13416 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14640 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13417 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
14641 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
13418 |
14642 symbol_c *IN_type_symbol = NULL; |
13419 /* Get the value from a foo(<param_value>) style call */ |
14643 |
13420 if (IN_param_value == NULL) |
14644 /* Get the value from a foo(<param_value>) style call */ |
13421 IN_param_value = function_call_param_iterator.next(); |
14645 if (IN_param_value == NULL) |
13422 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
14646 IN_param_value = function_call_param_iterator.next(); |
13423 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
14647 if (IN_param_value != NULL) { |
13424 |
14648 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
13425 if(search_expression_type->is_binary_type(IN_type_symbol)) |
14649 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
14650 } |
|
14651 |
|
14652 if(IN_type_symbol == NULL || search_expression_type->is_binary_type(IN_type_symbol)) |
13426 { |
14653 { |
13427 |
14654 |
13428 { |
14655 { |
13429 identifier_c param_name("N"); |
14656 identifier_c param_name("N"); |
13430 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14657 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13431 symbol_c *N_param_value = function_call_param_iterator.search(¶m_name); |
14658 symbol_c *N_param_value = function_call_param_iterator.search(¶m_name); |
|
14659 symbol_c *N_type_symbol = NULL; |
13432 |
14660 |
13433 /* Get the value from a foo(<param_value>) style call */ |
14661 /* Get the value from a foo(<param_value>) style call */ |
13434 if (N_param_value == NULL) |
14662 if (N_param_value == NULL) |
13435 N_param_value = function_call_param_iterator.next(); |
14663 N_param_value = function_call_param_iterator.next(); |
13436 symbol_c *N_type_symbol = search_expression_type->get_type(N_param_value); |
14664 if (N_param_value != NULL) { |
13437 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(N_type_symbol, last_type_symbol) ? search_expression_type->common_type(N_type_symbol, last_type_symbol) : N_type_symbol ; |
14665 N_type_symbol = search_expression_type->get_type(N_param_value); |
13438 |
14666 last_type_symbol = last_type_symbol && N_type_symbol && search_expression_type->is_same_type(N_type_symbol, last_type_symbol) ? search_expression_type->common_type(N_type_symbol, last_type_symbol) : N_type_symbol ; |
13439 if(search_expression_type->is_integer_type(N_type_symbol)) |
14667 } |
|
14668 |
|
14669 if(N_type_symbol == NULL || search_expression_type->is_integer_type(N_type_symbol)) |
13440 { |
14670 { |
13441 |
14671 |
13442 symbol_c * return_type_symbol = IN_type_symbol; |
14672 symbol_c * return_type_symbol = IN_type_symbol; |
13443 return return_type_symbol; |
14673 return return_type_symbol; |
13444 |
14674 |
13466 |
14696 |
13467 { |
14697 { |
13468 identifier_c param_name("IN"); |
14698 identifier_c param_name("IN"); |
13469 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14699 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13470 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
14700 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
13471 |
14701 symbol_c *IN_type_symbol = NULL; |
13472 /* Get the value from a foo(<param_value>) style call */ |
14702 |
13473 if (IN_param_value == NULL) |
14703 /* Get the value from a foo(<param_value>) style call */ |
13474 IN_param_value = function_call_param_iterator.next(); |
14704 if (IN_param_value == NULL) |
13475 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
14705 IN_param_value = function_call_param_iterator.next(); |
13476 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
14706 if (IN_param_value != NULL) { |
13477 |
14707 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
13478 if(search_expression_type->is_binary_type(IN_type_symbol)) |
14708 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
14709 } |
|
14710 |
|
14711 if(IN_type_symbol == NULL || search_expression_type->is_binary_type(IN_type_symbol)) |
13479 { |
14712 { |
13480 |
14713 |
13481 { |
14714 { |
13482 identifier_c param_name("N"); |
14715 identifier_c param_name("N"); |
13483 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14716 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13484 symbol_c *N_param_value = function_call_param_iterator.search(¶m_name); |
14717 symbol_c *N_param_value = function_call_param_iterator.search(¶m_name); |
|
14718 symbol_c *N_type_symbol = NULL; |
13485 |
14719 |
13486 /* Get the value from a foo(<param_value>) style call */ |
14720 /* Get the value from a foo(<param_value>) style call */ |
13487 if (N_param_value == NULL) |
14721 if (N_param_value == NULL) |
13488 N_param_value = function_call_param_iterator.next(); |
14722 N_param_value = function_call_param_iterator.next(); |
13489 symbol_c *N_type_symbol = search_expression_type->get_type(N_param_value); |
14723 if (N_param_value != NULL) { |
13490 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(N_type_symbol, last_type_symbol) ? search_expression_type->common_type(N_type_symbol, last_type_symbol) : N_type_symbol ; |
14724 N_type_symbol = search_expression_type->get_type(N_param_value); |
13491 |
14725 last_type_symbol = last_type_symbol && N_type_symbol && search_expression_type->is_same_type(N_type_symbol, last_type_symbol) ? search_expression_type->common_type(N_type_symbol, last_type_symbol) : N_type_symbol ; |
13492 if(search_expression_type->is_integer_type(N_type_symbol)) |
14726 } |
|
14727 |
|
14728 if(N_type_symbol == NULL || search_expression_type->is_integer_type(N_type_symbol)) |
13493 { |
14729 { |
13494 |
14730 |
13495 symbol_c * return_type_symbol = IN_type_symbol; |
14731 symbol_c * return_type_symbol = IN_type_symbol; |
13496 return return_type_symbol; |
14732 return return_type_symbol; |
13497 |
14733 |
13519 |
14755 |
13520 { |
14756 { |
13521 identifier_c param_name("IN"); |
14757 identifier_c param_name("IN"); |
13522 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14758 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13523 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
14759 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
13524 |
14760 symbol_c *IN_type_symbol = NULL; |
13525 /* Get the value from a foo(<param_value>) style call */ |
14761 |
13526 if (IN_param_value == NULL) |
14762 /* Get the value from a foo(<param_value>) style call */ |
13527 IN_param_value = function_call_param_iterator.next(); |
14763 if (IN_param_value == NULL) |
13528 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
14764 IN_param_value = function_call_param_iterator.next(); |
13529 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
14765 if (IN_param_value != NULL) { |
13530 |
14766 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
13531 if(search_expression_type->is_nbinary_type(IN_type_symbol)) |
14767 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
14768 } |
|
14769 |
|
14770 if(IN_type_symbol == NULL || search_expression_type->is_nbinary_type(IN_type_symbol)) |
13532 { |
14771 { |
13533 |
14772 |
13534 { |
14773 { |
13535 identifier_c param_name("N"); |
14774 identifier_c param_name("N"); |
13536 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14775 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13537 symbol_c *N_param_value = function_call_param_iterator.search(¶m_name); |
14776 symbol_c *N_param_value = function_call_param_iterator.search(¶m_name); |
|
14777 symbol_c *N_type_symbol = NULL; |
13538 |
14778 |
13539 /* Get the value from a foo(<param_value>) style call */ |
14779 /* Get the value from a foo(<param_value>) style call */ |
13540 if (N_param_value == NULL) |
14780 if (N_param_value == NULL) |
13541 N_param_value = function_call_param_iterator.next(); |
14781 N_param_value = function_call_param_iterator.next(); |
13542 symbol_c *N_type_symbol = search_expression_type->get_type(N_param_value); |
14782 if (N_param_value != NULL) { |
13543 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(N_type_symbol, last_type_symbol) ? search_expression_type->common_type(N_type_symbol, last_type_symbol) : N_type_symbol ; |
14783 N_type_symbol = search_expression_type->get_type(N_param_value); |
13544 |
14784 last_type_symbol = last_type_symbol && N_type_symbol && search_expression_type->is_same_type(N_type_symbol, last_type_symbol) ? search_expression_type->common_type(N_type_symbol, last_type_symbol) : N_type_symbol ; |
13545 if(search_expression_type->is_integer_type(N_type_symbol)) |
14785 } |
|
14786 |
|
14787 if(N_type_symbol == NULL || search_expression_type->is_integer_type(N_type_symbol)) |
13546 { |
14788 { |
13547 |
14789 |
13548 symbol_c * return_type_symbol = IN_type_symbol; |
14790 symbol_c * return_type_symbol = IN_type_symbol; |
13549 return return_type_symbol; |
14791 return return_type_symbol; |
13550 |
14792 |
13572 |
14814 |
13573 { |
14815 { |
13574 identifier_c param_name("IN"); |
14816 identifier_c param_name("IN"); |
13575 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14817 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13576 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
14818 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
13577 |
14819 symbol_c *IN_type_symbol = NULL; |
13578 /* Get the value from a foo(<param_value>) style call */ |
14820 |
13579 if (IN_param_value == NULL) |
14821 /* Get the value from a foo(<param_value>) style call */ |
13580 IN_param_value = function_call_param_iterator.next(); |
14822 if (IN_param_value == NULL) |
13581 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
14823 IN_param_value = function_call_param_iterator.next(); |
13582 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
14824 if (IN_param_value != NULL) { |
13583 |
14825 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
13584 if(search_expression_type->is_nbinary_type(IN_type_symbol)) |
14826 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
14827 } |
|
14828 |
|
14829 if(IN_type_symbol == NULL || search_expression_type->is_nbinary_type(IN_type_symbol)) |
13585 { |
14830 { |
13586 |
14831 |
13587 { |
14832 { |
13588 identifier_c param_name("N"); |
14833 identifier_c param_name("N"); |
13589 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14834 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13590 symbol_c *N_param_value = function_call_param_iterator.search(¶m_name); |
14835 symbol_c *N_param_value = function_call_param_iterator.search(¶m_name); |
|
14836 symbol_c *N_type_symbol = NULL; |
13591 |
14837 |
13592 /* Get the value from a foo(<param_value>) style call */ |
14838 /* Get the value from a foo(<param_value>) style call */ |
13593 if (N_param_value == NULL) |
14839 if (N_param_value == NULL) |
13594 N_param_value = function_call_param_iterator.next(); |
14840 N_param_value = function_call_param_iterator.next(); |
13595 symbol_c *N_type_symbol = search_expression_type->get_type(N_param_value); |
14841 if (N_param_value != NULL) { |
13596 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(N_type_symbol, last_type_symbol) ? search_expression_type->common_type(N_type_symbol, last_type_symbol) : N_type_symbol ; |
14842 N_type_symbol = search_expression_type->get_type(N_param_value); |
13597 |
14843 last_type_symbol = last_type_symbol && N_type_symbol && search_expression_type->is_same_type(N_type_symbol, last_type_symbol) ? search_expression_type->common_type(N_type_symbol, last_type_symbol) : N_type_symbol ; |
13598 if(search_expression_type->is_integer_type(N_type_symbol)) |
14844 } |
|
14845 |
|
14846 if(N_type_symbol == NULL || search_expression_type->is_integer_type(N_type_symbol)) |
13599 { |
14847 { |
13600 |
14848 |
13601 symbol_c * return_type_symbol = IN_type_symbol; |
14849 symbol_c * return_type_symbol = IN_type_symbol; |
13602 return return_type_symbol; |
14850 return return_type_symbol; |
13603 |
14851 |
13625 |
14873 |
13626 { |
14874 { |
13627 identifier_c param_name("IN1"); |
14875 identifier_c param_name("IN1"); |
13628 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14876 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13629 symbol_c *IN1_param_value = function_call_param_iterator.search(¶m_name); |
14877 symbol_c *IN1_param_value = function_call_param_iterator.search(¶m_name); |
|
14878 symbol_c *IN1_type_symbol = NULL; |
13630 |
14879 |
13631 /* Get the value from a foo(<param_value>) style call */ |
14880 /* Get the value from a foo(<param_value>) style call */ |
13632 if (IN1_param_value == NULL) |
14881 if (IN1_param_value == NULL) |
13633 IN1_param_value = function_call_param_iterator.next(); |
14882 IN1_param_value = function_call_param_iterator.next(); |
13634 symbol_c *IN1_type_symbol = search_expression_type->get_type(IN1_param_value); |
14883 if (IN1_param_value != NULL) { |
13635 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN1_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN1_type_symbol, last_type_symbol) : IN1_type_symbol ; |
14884 IN1_type_symbol = search_expression_type->get_type(IN1_param_value); |
13636 |
14885 last_type_symbol = last_type_symbol && IN1_type_symbol && search_expression_type->is_same_type(IN1_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN1_type_symbol, last_type_symbol) : IN1_type_symbol ; |
13637 if(search_expression_type->is_binary_type(IN1_type_symbol)) |
14886 } |
|
14887 |
|
14888 if(IN1_type_symbol == NULL || search_expression_type->is_binary_type(IN1_type_symbol)) |
13638 { |
14889 { |
13639 |
14890 |
13640 { |
14891 { |
13641 identifier_c param_name("IN2"); |
14892 identifier_c param_name("IN2"); |
13642 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14893 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13643 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
14894 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
14895 symbol_c *IN2_type_symbol = NULL; |
13644 |
14896 |
13645 /* Get the value from a foo(<param_value>) style call */ |
14897 /* Get the value from a foo(<param_value>) style call */ |
13646 if (IN2_param_value == NULL) |
14898 if (IN2_param_value == NULL) |
13647 IN2_param_value = function_call_param_iterator.next(); |
14899 IN2_param_value = function_call_param_iterator.next(); |
13648 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
14900 if (IN2_param_value != NULL) { |
13649 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
14901 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
13650 |
14902 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
13651 if(search_expression_type->is_binary_type(IN2_type_symbol)) |
14903 } |
|
14904 |
|
14905 if(IN2_type_symbol == NULL || search_expression_type->is_binary_type(IN2_type_symbol)) |
13652 { |
14906 { |
13653 |
14907 |
13654 symbol_c * return_type_symbol = last_type_symbol; |
14908 symbol_c * return_type_symbol = last_type_symbol; |
13655 return return_type_symbol; |
14909 return return_type_symbol; |
13656 |
14910 |
13678 |
14932 |
13679 { |
14933 { |
13680 identifier_c param_name("IN1"); |
14934 identifier_c param_name("IN1"); |
13681 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14935 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13682 symbol_c *IN1_param_value = function_call_param_iterator.search(¶m_name); |
14936 symbol_c *IN1_param_value = function_call_param_iterator.search(¶m_name); |
|
14937 symbol_c *IN1_type_symbol = NULL; |
13683 |
14938 |
13684 /* Get the value from a foo(<param_value>) style call */ |
14939 /* Get the value from a foo(<param_value>) style call */ |
13685 if (IN1_param_value == NULL) |
14940 if (IN1_param_value == NULL) |
13686 IN1_param_value = function_call_param_iterator.next(); |
14941 IN1_param_value = function_call_param_iterator.next(); |
13687 symbol_c *IN1_type_symbol = search_expression_type->get_type(IN1_param_value); |
14942 if (IN1_param_value != NULL) { |
13688 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN1_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN1_type_symbol, last_type_symbol) : IN1_type_symbol ; |
14943 IN1_type_symbol = search_expression_type->get_type(IN1_param_value); |
13689 |
14944 last_type_symbol = last_type_symbol && IN1_type_symbol && search_expression_type->is_same_type(IN1_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN1_type_symbol, last_type_symbol) : IN1_type_symbol ; |
13690 if(search_expression_type->is_binary_type(IN1_type_symbol)) |
14945 } |
|
14946 |
|
14947 if(IN1_type_symbol == NULL || search_expression_type->is_binary_type(IN1_type_symbol)) |
13691 { |
14948 { |
13692 |
14949 |
13693 { |
14950 { |
13694 identifier_c param_name("IN2"); |
14951 identifier_c param_name("IN2"); |
13695 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14952 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13696 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
14953 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
14954 symbol_c *IN2_type_symbol = NULL; |
13697 |
14955 |
13698 /* Get the value from a foo(<param_value>) style call */ |
14956 /* Get the value from a foo(<param_value>) style call */ |
13699 if (IN2_param_value == NULL) |
14957 if (IN2_param_value == NULL) |
13700 IN2_param_value = function_call_param_iterator.next(); |
14958 IN2_param_value = function_call_param_iterator.next(); |
13701 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
14959 if (IN2_param_value != NULL) { |
13702 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
14960 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
13703 |
14961 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
13704 if(search_expression_type->is_binary_type(IN2_type_symbol)) |
14962 } |
|
14963 |
|
14964 if(IN2_type_symbol == NULL || search_expression_type->is_binary_type(IN2_type_symbol)) |
13705 { |
14965 { |
13706 |
14966 |
13707 symbol_c * return_type_symbol = last_type_symbol; |
14967 symbol_c * return_type_symbol = last_type_symbol; |
13708 return return_type_symbol; |
14968 return return_type_symbol; |
13709 |
14969 |
13731 |
14991 |
13732 { |
14992 { |
13733 identifier_c param_name("IN1"); |
14993 identifier_c param_name("IN1"); |
13734 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14994 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13735 symbol_c *IN1_param_value = function_call_param_iterator.search(¶m_name); |
14995 symbol_c *IN1_param_value = function_call_param_iterator.search(¶m_name); |
|
14996 symbol_c *IN1_type_symbol = NULL; |
13736 |
14997 |
13737 /* Get the value from a foo(<param_value>) style call */ |
14998 /* Get the value from a foo(<param_value>) style call */ |
13738 if (IN1_param_value == NULL) |
14999 if (IN1_param_value == NULL) |
13739 IN1_param_value = function_call_param_iterator.next(); |
15000 IN1_param_value = function_call_param_iterator.next(); |
13740 symbol_c *IN1_type_symbol = search_expression_type->get_type(IN1_param_value); |
15001 if (IN1_param_value != NULL) { |
13741 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN1_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN1_type_symbol, last_type_symbol) : IN1_type_symbol ; |
15002 IN1_type_symbol = search_expression_type->get_type(IN1_param_value); |
13742 |
15003 last_type_symbol = last_type_symbol && IN1_type_symbol && search_expression_type->is_same_type(IN1_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN1_type_symbol, last_type_symbol) : IN1_type_symbol ; |
13743 if(search_expression_type->is_binary_type(IN1_type_symbol)) |
15004 } |
|
15005 |
|
15006 if(IN1_type_symbol == NULL || search_expression_type->is_binary_type(IN1_type_symbol)) |
13744 { |
15007 { |
13745 |
15008 |
13746 { |
15009 { |
13747 identifier_c param_name("IN2"); |
15010 identifier_c param_name("IN2"); |
13748 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
15011 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13749 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
15012 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
15013 symbol_c *IN2_type_symbol = NULL; |
13750 |
15014 |
13751 /* Get the value from a foo(<param_value>) style call */ |
15015 /* Get the value from a foo(<param_value>) style call */ |
13752 if (IN2_param_value == NULL) |
15016 if (IN2_param_value == NULL) |
13753 IN2_param_value = function_call_param_iterator.next(); |
15017 IN2_param_value = function_call_param_iterator.next(); |
13754 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
15018 if (IN2_param_value != NULL) { |
13755 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
15019 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
13756 |
15020 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
13757 if(search_expression_type->is_binary_type(IN2_type_symbol)) |
15021 } |
|
15022 |
|
15023 if(IN2_type_symbol == NULL || search_expression_type->is_binary_type(IN2_type_symbol)) |
13758 { |
15024 { |
13759 |
15025 |
13760 symbol_c * return_type_symbol = last_type_symbol; |
15026 symbol_c * return_type_symbol = last_type_symbol; |
13761 return return_type_symbol; |
15027 return return_type_symbol; |
13762 |
15028 |
13784 |
15050 |
13785 { |
15051 { |
13786 identifier_c param_name("IN"); |
15052 identifier_c param_name("IN"); |
13787 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
15053 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13788 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
15054 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
13789 |
15055 symbol_c *IN_type_symbol = NULL; |
13790 /* Get the value from a foo(<param_value>) style call */ |
15056 |
13791 if (IN_param_value == NULL) |
15057 /* Get the value from a foo(<param_value>) style call */ |
13792 IN_param_value = function_call_param_iterator.next(); |
15058 if (IN_param_value == NULL) |
13793 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
15059 IN_param_value = function_call_param_iterator.next(); |
13794 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
15060 if (IN_param_value != NULL) { |
13795 |
15061 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
13796 if(search_expression_type->is_binary_type(IN_type_symbol)) |
15062 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
15063 } |
|
15064 |
|
15065 if(IN_type_symbol == NULL || search_expression_type->is_binary_type(IN_type_symbol)) |
13797 { |
15066 { |
13798 |
15067 |
13799 symbol_c * return_type_symbol = IN_type_symbol; |
15068 symbol_c * return_type_symbol = IN_type_symbol; |
13800 return return_type_symbol; |
15069 return return_type_symbol; |
13801 |
15070 |
13817 |
15086 |
13818 { |
15087 { |
13819 identifier_c param_name("G"); |
15088 identifier_c param_name("G"); |
13820 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
15089 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13821 symbol_c *G_param_value = function_call_param_iterator.search(¶m_name); |
15090 symbol_c *G_param_value = function_call_param_iterator.search(¶m_name); |
|
15091 symbol_c *G_type_symbol = NULL; |
13822 |
15092 |
13823 /* Get the value from a foo(<param_value>) style call */ |
15093 /* Get the value from a foo(<param_value>) style call */ |
13824 if (G_param_value == NULL) |
15094 if (G_param_value == NULL) |
13825 G_param_value = function_call_param_iterator.next(); |
15095 G_param_value = function_call_param_iterator.next(); |
13826 symbol_c *G_type_symbol = search_expression_type->get_type(G_param_value); |
15096 if (G_param_value != NULL) { |
13827 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(G_type_symbol, last_type_symbol) ? search_expression_type->common_type(G_type_symbol, last_type_symbol) : G_type_symbol ; |
15097 G_type_symbol = search_expression_type->get_type(G_param_value); |
13828 |
15098 last_type_symbol = last_type_symbol && G_type_symbol && search_expression_type->is_same_type(G_type_symbol, last_type_symbol) ? search_expression_type->common_type(G_type_symbol, last_type_symbol) : G_type_symbol ; |
13829 if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol)) |
15099 } |
|
15100 |
|
15101 if(G_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol)) |
13830 { |
15102 { |
13831 |
15103 |
13832 { |
15104 { |
13833 identifier_c param_name("IN0"); |
15105 identifier_c param_name("IN0"); |
13834 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
15106 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13835 symbol_c *IN0_param_value = function_call_param_iterator.search(¶m_name); |
15107 symbol_c *IN0_param_value = function_call_param_iterator.search(¶m_name); |
|
15108 symbol_c *IN0_type_symbol = NULL; |
13836 |
15109 |
13837 /* Get the value from a foo(<param_value>) style call */ |
15110 /* Get the value from a foo(<param_value>) style call */ |
13838 if (IN0_param_value == NULL) |
15111 if (IN0_param_value == NULL) |
13839 IN0_param_value = function_call_param_iterator.next(); |
15112 IN0_param_value = function_call_param_iterator.next(); |
13840 symbol_c *IN0_type_symbol = search_expression_type->get_type(IN0_param_value); |
15113 if (IN0_param_value != NULL) { |
13841 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN0_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN0_type_symbol, last_type_symbol) : IN0_type_symbol ; |
15114 IN0_type_symbol = search_expression_type->get_type(IN0_param_value); |
|
15115 last_type_symbol = last_type_symbol && IN0_type_symbol && search_expression_type->is_same_type(IN0_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN0_type_symbol, last_type_symbol) : IN0_type_symbol ; |
|
15116 } |
13842 |
15117 |
13843 |
15118 |
13844 { |
15119 { |
13845 |
15120 |
13846 { |
15121 { |
13847 identifier_c param_name("IN1"); |
15122 identifier_c param_name("IN1"); |
13848 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
15123 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13849 symbol_c *IN1_param_value = function_call_param_iterator.search(¶m_name); |
15124 symbol_c *IN1_param_value = function_call_param_iterator.search(¶m_name); |
|
15125 symbol_c *IN1_type_symbol = NULL; |
13850 |
15126 |
13851 /* Get the value from a foo(<param_value>) style call */ |
15127 /* Get the value from a foo(<param_value>) style call */ |
13852 if (IN1_param_value == NULL) |
15128 if (IN1_param_value == NULL) |
13853 IN1_param_value = function_call_param_iterator.next(); |
15129 IN1_param_value = function_call_param_iterator.next(); |
13854 symbol_c *IN1_type_symbol = search_expression_type->get_type(IN1_param_value); |
15130 if (IN1_param_value != NULL) { |
13855 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN1_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN1_type_symbol, last_type_symbol) : IN1_type_symbol ; |
15131 IN1_type_symbol = search_expression_type->get_type(IN1_param_value); |
|
15132 last_type_symbol = last_type_symbol && IN1_type_symbol && search_expression_type->is_same_type(IN1_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN1_type_symbol, last_type_symbol) : IN1_type_symbol ; |
|
15133 } |
13856 |
15134 |
13857 |
15135 |
13858 { |
15136 { |
13859 |
15137 |
13860 symbol_c * return_type_symbol = last_type_symbol; |
15138 symbol_c * return_type_symbol = last_type_symbol; |
13890 |
15168 |
13891 { |
15169 { |
13892 identifier_c param_name("IN1"); |
15170 identifier_c param_name("IN1"); |
13893 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
15171 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13894 symbol_c *IN1_param_value = function_call_param_iterator.search(¶m_name); |
15172 symbol_c *IN1_param_value = function_call_param_iterator.search(¶m_name); |
|
15173 symbol_c *IN1_type_symbol = NULL; |
13895 |
15174 |
13896 /* Get the value from a foo(<param_value>) style call */ |
15175 /* Get the value from a foo(<param_value>) style call */ |
13897 if (IN1_param_value == NULL) |
15176 if (IN1_param_value == NULL) |
13898 IN1_param_value = function_call_param_iterator.next(); |
15177 IN1_param_value = function_call_param_iterator.next(); |
13899 symbol_c *IN1_type_symbol = search_expression_type->get_type(IN1_param_value); |
15178 if (IN1_param_value != NULL) { |
13900 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN1_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN1_type_symbol, last_type_symbol) : IN1_type_symbol ; |
15179 IN1_type_symbol = search_expression_type->get_type(IN1_param_value); |
|
15180 last_type_symbol = last_type_symbol && IN1_type_symbol && search_expression_type->is_same_type(IN1_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN1_type_symbol, last_type_symbol) : IN1_type_symbol ; |
|
15181 } |
13901 |
15182 |
13902 |
15183 |
13903 { |
15184 { |
13904 |
15185 |
13905 { |
15186 { |
13906 identifier_c param_name("IN2"); |
15187 identifier_c param_name("IN2"); |
13907 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
15188 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13908 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
15189 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
15190 symbol_c *IN2_type_symbol = NULL; |
13909 |
15191 |
13910 /* Get the value from a foo(<param_value>) style call */ |
15192 /* Get the value from a foo(<param_value>) style call */ |
13911 if (IN2_param_value == NULL) |
15193 if (IN2_param_value == NULL) |
13912 IN2_param_value = function_call_param_iterator.next(); |
15194 IN2_param_value = function_call_param_iterator.next(); |
13913 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
15195 if (IN2_param_value != NULL) { |
13914 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
15196 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
|
15197 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
|
15198 } |
13915 |
15199 |
13916 |
15200 |
13917 { |
15201 { |
13918 |
15202 |
13919 symbol_c * return_type_symbol = last_type_symbol; |
15203 symbol_c * return_type_symbol = last_type_symbol; |
13943 |
15227 |
13944 { |
15228 { |
13945 identifier_c param_name("IN1"); |
15229 identifier_c param_name("IN1"); |
13946 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
15230 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13947 symbol_c *IN1_param_value = function_call_param_iterator.search(¶m_name); |
15231 symbol_c *IN1_param_value = function_call_param_iterator.search(¶m_name); |
|
15232 symbol_c *IN1_type_symbol = NULL; |
13948 |
15233 |
13949 /* Get the value from a foo(<param_value>) style call */ |
15234 /* Get the value from a foo(<param_value>) style call */ |
13950 if (IN1_param_value == NULL) |
15235 if (IN1_param_value == NULL) |
13951 IN1_param_value = function_call_param_iterator.next(); |
15236 IN1_param_value = function_call_param_iterator.next(); |
13952 symbol_c *IN1_type_symbol = search_expression_type->get_type(IN1_param_value); |
15237 if (IN1_param_value != NULL) { |
13953 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN1_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN1_type_symbol, last_type_symbol) : IN1_type_symbol ; |
15238 IN1_type_symbol = search_expression_type->get_type(IN1_param_value); |
|
15239 last_type_symbol = last_type_symbol && IN1_type_symbol && search_expression_type->is_same_type(IN1_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN1_type_symbol, last_type_symbol) : IN1_type_symbol ; |
|
15240 } |
13954 |
15241 |
13955 |
15242 |
13956 { |
15243 { |
13957 |
15244 |
13958 { |
15245 { |
13959 identifier_c param_name("IN2"); |
15246 identifier_c param_name("IN2"); |
13960 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
15247 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
13961 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
15248 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
15249 symbol_c *IN2_type_symbol = NULL; |
13962 |
15250 |
13963 /* Get the value from a foo(<param_value>) style call */ |
15251 /* Get the value from a foo(<param_value>) style call */ |
13964 if (IN2_param_value == NULL) |
15252 if (IN2_param_value == NULL) |
13965 IN2_param_value = function_call_param_iterator.next(); |
15253 IN2_param_value = function_call_param_iterator.next(); |
13966 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
15254 if (IN2_param_value != NULL) { |
13967 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
15255 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
|
15256 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
|
15257 } |
13968 |
15258 |
13969 |
15259 |
13970 { |
15260 { |
13971 |
15261 |
13972 symbol_c * return_type_symbol = last_type_symbol; |
15262 symbol_c * return_type_symbol = last_type_symbol; |
13996 |
15286 |
13997 { |
15287 { |
13998 identifier_c param_name("MN"); |
15288 identifier_c param_name("MN"); |
13999 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
15289 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14000 symbol_c *MN_param_value = function_call_param_iterator.search(¶m_name); |
15290 symbol_c *MN_param_value = function_call_param_iterator.search(¶m_name); |
|
15291 symbol_c *MN_type_symbol = NULL; |
14001 |
15292 |
14002 /* Get the value from a foo(<param_value>) style call */ |
15293 /* Get the value from a foo(<param_value>) style call */ |
14003 if (MN_param_value == NULL) |
15294 if (MN_param_value == NULL) |
14004 MN_param_value = function_call_param_iterator.next(); |
15295 MN_param_value = function_call_param_iterator.next(); |
14005 symbol_c *MN_type_symbol = search_expression_type->get_type(MN_param_value); |
15296 if (MN_param_value != NULL) { |
14006 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(MN_type_symbol, last_type_symbol) ? search_expression_type->common_type(MN_type_symbol, last_type_symbol) : MN_type_symbol ; |
15297 MN_type_symbol = search_expression_type->get_type(MN_param_value); |
|
15298 last_type_symbol = last_type_symbol && MN_type_symbol && search_expression_type->is_same_type(MN_type_symbol, last_type_symbol) ? search_expression_type->common_type(MN_type_symbol, last_type_symbol) : MN_type_symbol ; |
|
15299 } |
14007 |
15300 |
14008 |
15301 |
14009 { |
15302 { |
14010 |
15303 |
14011 { |
15304 { |
14012 identifier_c param_name("IN"); |
15305 identifier_c param_name("IN"); |
14013 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
15306 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14014 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
15307 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
|
15308 symbol_c *IN_type_symbol = NULL; |
14015 |
15309 |
14016 /* Get the value from a foo(<param_value>) style call */ |
15310 /* Get the value from a foo(<param_value>) style call */ |
14017 if (IN_param_value == NULL) |
15311 if (IN_param_value == NULL) |
14018 IN_param_value = function_call_param_iterator.next(); |
15312 IN_param_value = function_call_param_iterator.next(); |
14019 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
15313 if (IN_param_value != NULL) { |
14020 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
15314 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
|
15315 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
15316 } |
14021 |
15317 |
14022 |
15318 |
14023 { |
15319 { |
14024 |
15320 |
14025 { |
15321 { |
14026 identifier_c param_name("MX"); |
15322 identifier_c param_name("MX"); |
14027 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
15323 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14028 symbol_c *MX_param_value = function_call_param_iterator.search(¶m_name); |
15324 symbol_c *MX_param_value = function_call_param_iterator.search(¶m_name); |
|
15325 symbol_c *MX_type_symbol = NULL; |
14029 |
15326 |
14030 /* Get the value from a foo(<param_value>) style call */ |
15327 /* Get the value from a foo(<param_value>) style call */ |
14031 if (MX_param_value == NULL) |
15328 if (MX_param_value == NULL) |
14032 MX_param_value = function_call_param_iterator.next(); |
15329 MX_param_value = function_call_param_iterator.next(); |
14033 symbol_c *MX_type_symbol = search_expression_type->get_type(MX_param_value); |
15330 if (MX_param_value != NULL) { |
14034 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(MX_type_symbol, last_type_symbol) ? search_expression_type->common_type(MX_type_symbol, last_type_symbol) : MX_type_symbol ; |
15331 MX_type_symbol = search_expression_type->get_type(MX_param_value); |
|
15332 last_type_symbol = last_type_symbol && MX_type_symbol && search_expression_type->is_same_type(MX_type_symbol, last_type_symbol) ? search_expression_type->common_type(MX_type_symbol, last_type_symbol) : MX_type_symbol ; |
|
15333 } |
14035 |
15334 |
14036 |
15335 |
14037 { |
15336 { |
14038 |
15337 |
14039 symbol_c * return_type_symbol = IN_type_symbol; |
15338 symbol_c * return_type_symbol = IN_type_symbol; |
14069 |
15368 |
14070 { |
15369 { |
14071 identifier_c param_name("K"); |
15370 identifier_c param_name("K"); |
14072 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
15371 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14073 symbol_c *K_param_value = function_call_param_iterator.search(¶m_name); |
15372 symbol_c *K_param_value = function_call_param_iterator.search(¶m_name); |
|
15373 symbol_c *K_type_symbol = NULL; |
14074 |
15374 |
14075 /* Get the value from a foo(<param_value>) style call */ |
15375 /* Get the value from a foo(<param_value>) style call */ |
14076 if (K_param_value == NULL) |
15376 if (K_param_value == NULL) |
14077 K_param_value = function_call_param_iterator.next(); |
15377 K_param_value = function_call_param_iterator.next(); |
14078 symbol_c *K_type_symbol = search_expression_type->get_type(K_param_value); |
15378 if (K_param_value != NULL) { |
14079 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(K_type_symbol, last_type_symbol) ? search_expression_type->common_type(K_type_symbol, last_type_symbol) : K_type_symbol ; |
15379 K_type_symbol = search_expression_type->get_type(K_param_value); |
14080 |
15380 last_type_symbol = last_type_symbol && K_type_symbol && search_expression_type->is_same_type(K_type_symbol, last_type_symbol) ? search_expression_type->common_type(K_type_symbol, last_type_symbol) : K_type_symbol ; |
14081 if(search_expression_type->is_integer_type(K_type_symbol)) |
15381 } |
|
15382 |
|
15383 if(K_type_symbol == NULL || search_expression_type->is_integer_type(K_type_symbol)) |
14082 { |
15384 { |
14083 |
15385 |
14084 { |
15386 { |
14085 identifier_c param_name("IN0"); |
15387 identifier_c param_name("IN0"); |
14086 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
15388 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14087 symbol_c *IN0_param_value = function_call_param_iterator.search(¶m_name); |
15389 symbol_c *IN0_param_value = function_call_param_iterator.search(¶m_name); |
|
15390 symbol_c *IN0_type_symbol = NULL; |
14088 |
15391 |
14089 /* Get the value from a foo(<param_value>) style call */ |
15392 /* Get the value from a foo(<param_value>) style call */ |
14090 if (IN0_param_value == NULL) |
15393 if (IN0_param_value == NULL) |
14091 IN0_param_value = function_call_param_iterator.next(); |
15394 IN0_param_value = function_call_param_iterator.next(); |
14092 symbol_c *IN0_type_symbol = search_expression_type->get_type(IN0_param_value); |
15395 if (IN0_param_value != NULL) { |
14093 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN0_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN0_type_symbol, last_type_symbol) : IN0_type_symbol ; |
15396 IN0_type_symbol = search_expression_type->get_type(IN0_param_value); |
|
15397 last_type_symbol = last_type_symbol && IN0_type_symbol && search_expression_type->is_same_type(IN0_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN0_type_symbol, last_type_symbol) : IN0_type_symbol ; |
|
15398 } |
14094 |
15399 |
14095 |
15400 |
14096 { |
15401 { |
14097 |
15402 |
14098 { |
15403 { |
14099 identifier_c param_name("IN1"); |
15404 identifier_c param_name("IN1"); |
14100 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
15405 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14101 symbol_c *IN1_param_value = function_call_param_iterator.search(¶m_name); |
15406 symbol_c *IN1_param_value = function_call_param_iterator.search(¶m_name); |
|
15407 symbol_c *IN1_type_symbol = NULL; |
14102 |
15408 |
14103 /* Get the value from a foo(<param_value>) style call */ |
15409 /* Get the value from a foo(<param_value>) style call */ |
14104 if (IN1_param_value == NULL) |
15410 if (IN1_param_value == NULL) |
14105 IN1_param_value = function_call_param_iterator.next(); |
15411 IN1_param_value = function_call_param_iterator.next(); |
14106 symbol_c *IN1_type_symbol = search_expression_type->get_type(IN1_param_value); |
15412 if (IN1_param_value != NULL) { |
14107 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN1_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN1_type_symbol, last_type_symbol) : IN1_type_symbol ; |
15413 IN1_type_symbol = search_expression_type->get_type(IN1_param_value); |
|
15414 last_type_symbol = last_type_symbol && IN1_type_symbol && search_expression_type->is_same_type(IN1_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN1_type_symbol, last_type_symbol) : IN1_type_symbol ; |
|
15415 } |
14108 |
15416 |
14109 |
15417 |
14110 { |
15418 { |
14111 |
15419 |
14112 symbol_c * return_type_symbol = last_type_symbol; |
15420 symbol_c * return_type_symbol = last_type_symbol; |
14142 |
15450 |
14143 { |
15451 { |
14144 identifier_c param_name("IN1"); |
15452 identifier_c param_name("IN1"); |
14145 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
15453 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14146 symbol_c *IN1_param_value = function_call_param_iterator.search(¶m_name); |
15454 symbol_c *IN1_param_value = function_call_param_iterator.search(¶m_name); |
|
15455 symbol_c *IN1_type_symbol = NULL; |
14147 |
15456 |
14148 /* Get the value from a foo(<param_value>) style call */ |
15457 /* Get the value from a foo(<param_value>) style call */ |
14149 if (IN1_param_value == NULL) |
15458 if (IN1_param_value == NULL) |
14150 IN1_param_value = function_call_param_iterator.next(); |
15459 IN1_param_value = function_call_param_iterator.next(); |
14151 symbol_c *IN1_type_symbol = search_expression_type->get_type(IN1_param_value); |
15460 if (IN1_param_value != NULL) { |
14152 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN1_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN1_type_symbol, last_type_symbol) : IN1_type_symbol ; |
15461 IN1_type_symbol = search_expression_type->get_type(IN1_param_value); |
|
15462 last_type_symbol = last_type_symbol && IN1_type_symbol && search_expression_type->is_same_type(IN1_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN1_type_symbol, last_type_symbol) : IN1_type_symbol ; |
|
15463 } |
14153 |
15464 |
14154 |
15465 |
14155 { |
15466 { |
14156 |
15467 |
14157 { |
15468 { |
14158 identifier_c param_name("IN2"); |
15469 identifier_c param_name("IN2"); |
14159 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
15470 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14160 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
15471 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
15472 symbol_c *IN2_type_symbol = NULL; |
14161 |
15473 |
14162 /* Get the value from a foo(<param_value>) style call */ |
15474 /* Get the value from a foo(<param_value>) style call */ |
14163 if (IN2_param_value == NULL) |
15475 if (IN2_param_value == NULL) |
14164 IN2_param_value = function_call_param_iterator.next(); |
15476 IN2_param_value = function_call_param_iterator.next(); |
14165 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
15477 if (IN2_param_value != NULL) { |
14166 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
15478 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
|
15479 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
|
15480 } |
14167 |
15481 |
14168 |
15482 |
14169 { |
15483 { |
14170 |
15484 |
14171 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name; |
15485 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name; |
14195 |
15509 |
14196 { |
15510 { |
14197 identifier_c param_name("IN1"); |
15511 identifier_c param_name("IN1"); |
14198 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
15512 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14199 symbol_c *IN1_param_value = function_call_param_iterator.search(¶m_name); |
15513 symbol_c *IN1_param_value = function_call_param_iterator.search(¶m_name); |
|
15514 symbol_c *IN1_type_symbol = NULL; |
14200 |
15515 |
14201 /* Get the value from a foo(<param_value>) style call */ |
15516 /* Get the value from a foo(<param_value>) style call */ |
14202 if (IN1_param_value == NULL) |
15517 if (IN1_param_value == NULL) |
14203 IN1_param_value = function_call_param_iterator.next(); |
15518 IN1_param_value = function_call_param_iterator.next(); |
14204 symbol_c *IN1_type_symbol = search_expression_type->get_type(IN1_param_value); |
15519 if (IN1_param_value != NULL) { |
14205 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN1_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN1_type_symbol, last_type_symbol) : IN1_type_symbol ; |
15520 IN1_type_symbol = search_expression_type->get_type(IN1_param_value); |
|
15521 last_type_symbol = last_type_symbol && IN1_type_symbol && search_expression_type->is_same_type(IN1_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN1_type_symbol, last_type_symbol) : IN1_type_symbol ; |
|
15522 } |
14206 |
15523 |
14207 |
15524 |
14208 { |
15525 { |
14209 |
15526 |
14210 { |
15527 { |
14211 identifier_c param_name("IN2"); |
15528 identifier_c param_name("IN2"); |
14212 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
15529 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14213 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
15530 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
15531 symbol_c *IN2_type_symbol = NULL; |
14214 |
15532 |
14215 /* Get the value from a foo(<param_value>) style call */ |
15533 /* Get the value from a foo(<param_value>) style call */ |
14216 if (IN2_param_value == NULL) |
15534 if (IN2_param_value == NULL) |
14217 IN2_param_value = function_call_param_iterator.next(); |
15535 IN2_param_value = function_call_param_iterator.next(); |
14218 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
15536 if (IN2_param_value != NULL) { |
14219 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
15537 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
|
15538 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
|
15539 } |
14220 |
15540 |
14221 |
15541 |
14222 { |
15542 { |
14223 |
15543 |
14224 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name; |
15544 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name; |
14248 |
15568 |
14249 { |
15569 { |
14250 identifier_c param_name("IN1"); |
15570 identifier_c param_name("IN1"); |
14251 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
15571 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14252 symbol_c *IN1_param_value = function_call_param_iterator.search(¶m_name); |
15572 symbol_c *IN1_param_value = function_call_param_iterator.search(¶m_name); |
|
15573 symbol_c *IN1_type_symbol = NULL; |
14253 |
15574 |
14254 /* Get the value from a foo(<param_value>) style call */ |
15575 /* Get the value from a foo(<param_value>) style call */ |
14255 if (IN1_param_value == NULL) |
15576 if (IN1_param_value == NULL) |
14256 IN1_param_value = function_call_param_iterator.next(); |
15577 IN1_param_value = function_call_param_iterator.next(); |
14257 symbol_c *IN1_type_symbol = search_expression_type->get_type(IN1_param_value); |
15578 if (IN1_param_value != NULL) { |
14258 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN1_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN1_type_symbol, last_type_symbol) : IN1_type_symbol ; |
15579 IN1_type_symbol = search_expression_type->get_type(IN1_param_value); |
|
15580 last_type_symbol = last_type_symbol && IN1_type_symbol && search_expression_type->is_same_type(IN1_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN1_type_symbol, last_type_symbol) : IN1_type_symbol ; |
|
15581 } |
14259 |
15582 |
14260 |
15583 |
14261 { |
15584 { |
14262 |
15585 |
14263 { |
15586 { |
14264 identifier_c param_name("IN2"); |
15587 identifier_c param_name("IN2"); |
14265 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
15588 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14266 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
15589 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
15590 symbol_c *IN2_type_symbol = NULL; |
14267 |
15591 |
14268 /* Get the value from a foo(<param_value>) style call */ |
15592 /* Get the value from a foo(<param_value>) style call */ |
14269 if (IN2_param_value == NULL) |
15593 if (IN2_param_value == NULL) |
14270 IN2_param_value = function_call_param_iterator.next(); |
15594 IN2_param_value = function_call_param_iterator.next(); |
14271 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
15595 if (IN2_param_value != NULL) { |
14272 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
15596 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
|
15597 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
|
15598 } |
14273 |
15599 |
14274 |
15600 |
14275 { |
15601 { |
14276 |
15602 |
14277 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name; |
15603 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name; |
14301 |
15627 |
14302 { |
15628 { |
14303 identifier_c param_name("IN1"); |
15629 identifier_c param_name("IN1"); |
14304 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
15630 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14305 symbol_c *IN1_param_value = function_call_param_iterator.search(¶m_name); |
15631 symbol_c *IN1_param_value = function_call_param_iterator.search(¶m_name); |
|
15632 symbol_c *IN1_type_symbol = NULL; |
14306 |
15633 |
14307 /* Get the value from a foo(<param_value>) style call */ |
15634 /* Get the value from a foo(<param_value>) style call */ |
14308 if (IN1_param_value == NULL) |
15635 if (IN1_param_value == NULL) |
14309 IN1_param_value = function_call_param_iterator.next(); |
15636 IN1_param_value = function_call_param_iterator.next(); |
14310 symbol_c *IN1_type_symbol = search_expression_type->get_type(IN1_param_value); |
15637 if (IN1_param_value != NULL) { |
14311 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN1_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN1_type_symbol, last_type_symbol) : IN1_type_symbol ; |
15638 IN1_type_symbol = search_expression_type->get_type(IN1_param_value); |
|
15639 last_type_symbol = last_type_symbol && IN1_type_symbol && search_expression_type->is_same_type(IN1_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN1_type_symbol, last_type_symbol) : IN1_type_symbol ; |
|
15640 } |
14312 |
15641 |
14313 |
15642 |
14314 { |
15643 { |
14315 |
15644 |
14316 { |
15645 { |
14317 identifier_c param_name("IN2"); |
15646 identifier_c param_name("IN2"); |
14318 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
15647 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14319 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
15648 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
15649 symbol_c *IN2_type_symbol = NULL; |
14320 |
15650 |
14321 /* Get the value from a foo(<param_value>) style call */ |
15651 /* Get the value from a foo(<param_value>) style call */ |
14322 if (IN2_param_value == NULL) |
15652 if (IN2_param_value == NULL) |
14323 IN2_param_value = function_call_param_iterator.next(); |
15653 IN2_param_value = function_call_param_iterator.next(); |
14324 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
15654 if (IN2_param_value != NULL) { |
14325 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
15655 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
|
15656 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
|
15657 } |
14326 |
15658 |
14327 |
15659 |
14328 { |
15660 { |
14329 |
15661 |
14330 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name; |
15662 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name; |
14354 |
15686 |
14355 { |
15687 { |
14356 identifier_c param_name("IN1"); |
15688 identifier_c param_name("IN1"); |
14357 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
15689 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14358 symbol_c *IN1_param_value = function_call_param_iterator.search(¶m_name); |
15690 symbol_c *IN1_param_value = function_call_param_iterator.search(¶m_name); |
|
15691 symbol_c *IN1_type_symbol = NULL; |
14359 |
15692 |
14360 /* Get the value from a foo(<param_value>) style call */ |
15693 /* Get the value from a foo(<param_value>) style call */ |
14361 if (IN1_param_value == NULL) |
15694 if (IN1_param_value == NULL) |
14362 IN1_param_value = function_call_param_iterator.next(); |
15695 IN1_param_value = function_call_param_iterator.next(); |
14363 symbol_c *IN1_type_symbol = search_expression_type->get_type(IN1_param_value); |
15696 if (IN1_param_value != NULL) { |
14364 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN1_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN1_type_symbol, last_type_symbol) : IN1_type_symbol ; |
15697 IN1_type_symbol = search_expression_type->get_type(IN1_param_value); |
|
15698 last_type_symbol = last_type_symbol && IN1_type_symbol && search_expression_type->is_same_type(IN1_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN1_type_symbol, last_type_symbol) : IN1_type_symbol ; |
|
15699 } |
14365 |
15700 |
14366 |
15701 |
14367 { |
15702 { |
14368 |
15703 |
14369 { |
15704 { |
14370 identifier_c param_name("IN2"); |
15705 identifier_c param_name("IN2"); |
14371 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
15706 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14372 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
15707 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
15708 symbol_c *IN2_type_symbol = NULL; |
14373 |
15709 |
14374 /* Get the value from a foo(<param_value>) style call */ |
15710 /* Get the value from a foo(<param_value>) style call */ |
14375 if (IN2_param_value == NULL) |
15711 if (IN2_param_value == NULL) |
14376 IN2_param_value = function_call_param_iterator.next(); |
15712 IN2_param_value = function_call_param_iterator.next(); |
14377 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
15713 if (IN2_param_value != NULL) { |
14378 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
15714 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
|
15715 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
|
15716 } |
14379 |
15717 |
14380 |
15718 |
14381 { |
15719 { |
14382 |
15720 |
14383 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name; |
15721 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name; |
14407 |
15745 |
14408 { |
15746 { |
14409 identifier_c param_name("IN1"); |
15747 identifier_c param_name("IN1"); |
14410 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
15748 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14411 symbol_c *IN1_param_value = function_call_param_iterator.search(¶m_name); |
15749 symbol_c *IN1_param_value = function_call_param_iterator.search(¶m_name); |
|
15750 symbol_c *IN1_type_symbol = NULL; |
14412 |
15751 |
14413 /* Get the value from a foo(<param_value>) style call */ |
15752 /* Get the value from a foo(<param_value>) style call */ |
14414 if (IN1_param_value == NULL) |
15753 if (IN1_param_value == NULL) |
14415 IN1_param_value = function_call_param_iterator.next(); |
15754 IN1_param_value = function_call_param_iterator.next(); |
14416 symbol_c *IN1_type_symbol = search_expression_type->get_type(IN1_param_value); |
15755 if (IN1_param_value != NULL) { |
14417 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN1_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN1_type_symbol, last_type_symbol) : IN1_type_symbol ; |
15756 IN1_type_symbol = search_expression_type->get_type(IN1_param_value); |
|
15757 last_type_symbol = last_type_symbol && IN1_type_symbol && search_expression_type->is_same_type(IN1_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN1_type_symbol, last_type_symbol) : IN1_type_symbol ; |
|
15758 } |
14418 |
15759 |
14419 |
15760 |
14420 { |
15761 { |
14421 |
15762 |
14422 { |
15763 { |
14423 identifier_c param_name("IN2"); |
15764 identifier_c param_name("IN2"); |
14424 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
15765 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14425 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
15766 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
15767 symbol_c *IN2_type_symbol = NULL; |
14426 |
15768 |
14427 /* Get the value from a foo(<param_value>) style call */ |
15769 /* Get the value from a foo(<param_value>) style call */ |
14428 if (IN2_param_value == NULL) |
15770 if (IN2_param_value == NULL) |
14429 IN2_param_value = function_call_param_iterator.next(); |
15771 IN2_param_value = function_call_param_iterator.next(); |
14430 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
15772 if (IN2_param_value != NULL) { |
14431 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
15773 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
|
15774 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
|
15775 } |
14432 |
15776 |
14433 |
15777 |
14434 { |
15778 { |
14435 |
15779 |
14436 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name; |
15780 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name; |
14460 |
15804 |
14461 { |
15805 { |
14462 identifier_c param_name("IN"); |
15806 identifier_c param_name("IN"); |
14463 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
15807 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14464 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
15808 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
14465 |
15809 symbol_c *IN_type_symbol = NULL; |
14466 /* Get the value from a foo(<param_value>) style call */ |
15810 |
14467 if (IN_param_value == NULL) |
15811 /* Get the value from a foo(<param_value>) style call */ |
14468 IN_param_value = function_call_param_iterator.next(); |
15812 if (IN_param_value == NULL) |
14469 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
15813 IN_param_value = function_call_param_iterator.next(); |
14470 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
15814 if (IN_param_value != NULL) { |
14471 |
15815 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
14472 if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
15816 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
15817 } |
|
15818 |
|
15819 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
14473 { |
15820 { |
14474 |
15821 |
14475 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name; |
15822 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name; |
14476 return return_type_symbol; |
15823 return return_type_symbol; |
14477 |
15824 |
14493 |
15840 |
14494 { |
15841 { |
14495 identifier_c param_name("IN"); |
15842 identifier_c param_name("IN"); |
14496 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
15843 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14497 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
15844 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
14498 |
15845 symbol_c *IN_type_symbol = NULL; |
14499 /* Get the value from a foo(<param_value>) style call */ |
15846 |
14500 if (IN_param_value == NULL) |
15847 /* Get the value from a foo(<param_value>) style call */ |
14501 IN_param_value = function_call_param_iterator.next(); |
15848 if (IN_param_value == NULL) |
14502 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
15849 IN_param_value = function_call_param_iterator.next(); |
14503 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
15850 if (IN_param_value != NULL) { |
14504 |
15851 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
14505 if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
15852 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
15853 } |
|
15854 |
|
15855 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
14506 { |
15856 { |
14507 |
15857 |
14508 { |
15858 { |
14509 identifier_c param_name("L"); |
15859 identifier_c param_name("L"); |
14510 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
15860 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14511 symbol_c *L_param_value = function_call_param_iterator.search(¶m_name); |
15861 symbol_c *L_param_value = function_call_param_iterator.search(¶m_name); |
|
15862 symbol_c *L_type_symbol = NULL; |
14512 |
15863 |
14513 /* Get the value from a foo(<param_value>) style call */ |
15864 /* Get the value from a foo(<param_value>) style call */ |
14514 if (L_param_value == NULL) |
15865 if (L_param_value == NULL) |
14515 L_param_value = function_call_param_iterator.next(); |
15866 L_param_value = function_call_param_iterator.next(); |
14516 symbol_c *L_type_symbol = search_expression_type->get_type(L_param_value); |
15867 if (L_param_value != NULL) { |
14517 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(L_type_symbol, last_type_symbol) ? search_expression_type->common_type(L_type_symbol, last_type_symbol) : L_type_symbol ; |
15868 L_type_symbol = search_expression_type->get_type(L_param_value); |
14518 |
15869 last_type_symbol = last_type_symbol && L_type_symbol && search_expression_type->is_same_type(L_type_symbol, last_type_symbol) ? search_expression_type->common_type(L_type_symbol, last_type_symbol) : L_type_symbol ; |
14519 if(search_expression_type->is_integer_type(L_type_symbol)) |
15870 } |
|
15871 |
|
15872 if(L_type_symbol == NULL || search_expression_type->is_integer_type(L_type_symbol)) |
14520 { |
15873 { |
14521 |
15874 |
14522 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
15875 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
14523 return return_type_symbol; |
15876 return return_type_symbol; |
14524 |
15877 |
14546 |
15899 |
14547 { |
15900 { |
14548 identifier_c param_name("IN"); |
15901 identifier_c param_name("IN"); |
14549 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
15902 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14550 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
15903 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
14551 |
15904 symbol_c *IN_type_symbol = NULL; |
14552 /* Get the value from a foo(<param_value>) style call */ |
15905 |
14553 if (IN_param_value == NULL) |
15906 /* Get the value from a foo(<param_value>) style call */ |
14554 IN_param_value = function_call_param_iterator.next(); |
15907 if (IN_param_value == NULL) |
14555 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
15908 IN_param_value = function_call_param_iterator.next(); |
14556 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
15909 if (IN_param_value != NULL) { |
14557 |
15910 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
14558 if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
15911 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
15912 } |
|
15913 |
|
15914 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
14559 { |
15915 { |
14560 |
15916 |
14561 { |
15917 { |
14562 identifier_c param_name("L"); |
15918 identifier_c param_name("L"); |
14563 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
15919 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14564 symbol_c *L_param_value = function_call_param_iterator.search(¶m_name); |
15920 symbol_c *L_param_value = function_call_param_iterator.search(¶m_name); |
|
15921 symbol_c *L_type_symbol = NULL; |
14565 |
15922 |
14566 /* Get the value from a foo(<param_value>) style call */ |
15923 /* Get the value from a foo(<param_value>) style call */ |
14567 if (L_param_value == NULL) |
15924 if (L_param_value == NULL) |
14568 L_param_value = function_call_param_iterator.next(); |
15925 L_param_value = function_call_param_iterator.next(); |
14569 symbol_c *L_type_symbol = search_expression_type->get_type(L_param_value); |
15926 if (L_param_value != NULL) { |
14570 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(L_type_symbol, last_type_symbol) ? search_expression_type->common_type(L_type_symbol, last_type_symbol) : L_type_symbol ; |
15927 L_type_symbol = search_expression_type->get_type(L_param_value); |
14571 |
15928 last_type_symbol = last_type_symbol && L_type_symbol && search_expression_type->is_same_type(L_type_symbol, last_type_symbol) ? search_expression_type->common_type(L_type_symbol, last_type_symbol) : L_type_symbol ; |
14572 if(search_expression_type->is_integer_type(L_type_symbol)) |
15929 } |
|
15930 |
|
15931 if(L_type_symbol == NULL || search_expression_type->is_integer_type(L_type_symbol)) |
14573 { |
15932 { |
14574 |
15933 |
14575 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
15934 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
14576 return return_type_symbol; |
15935 return return_type_symbol; |
14577 |
15936 |
14599 |
15958 |
14600 { |
15959 { |
14601 identifier_c param_name("IN"); |
15960 identifier_c param_name("IN"); |
14602 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
15961 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14603 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
15962 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
14604 |
15963 symbol_c *IN_type_symbol = NULL; |
14605 /* Get the value from a foo(<param_value>) style call */ |
15964 |
14606 if (IN_param_value == NULL) |
15965 /* Get the value from a foo(<param_value>) style call */ |
14607 IN_param_value = function_call_param_iterator.next(); |
15966 if (IN_param_value == NULL) |
14608 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
15967 IN_param_value = function_call_param_iterator.next(); |
14609 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
15968 if (IN_param_value != NULL) { |
14610 |
15969 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
14611 if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
15970 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
15971 } |
|
15972 |
|
15973 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
14612 { |
15974 { |
14613 |
15975 |
14614 { |
15976 { |
14615 identifier_c param_name("L"); |
15977 identifier_c param_name("L"); |
14616 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
15978 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14617 symbol_c *L_param_value = function_call_param_iterator.search(¶m_name); |
15979 symbol_c *L_param_value = function_call_param_iterator.search(¶m_name); |
|
15980 symbol_c *L_type_symbol = NULL; |
14618 |
15981 |
14619 /* Get the value from a foo(<param_value>) style call */ |
15982 /* Get the value from a foo(<param_value>) style call */ |
14620 if (L_param_value == NULL) |
15983 if (L_param_value == NULL) |
14621 L_param_value = function_call_param_iterator.next(); |
15984 L_param_value = function_call_param_iterator.next(); |
14622 symbol_c *L_type_symbol = search_expression_type->get_type(L_param_value); |
15985 if (L_param_value != NULL) { |
14623 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(L_type_symbol, last_type_symbol) ? search_expression_type->common_type(L_type_symbol, last_type_symbol) : L_type_symbol ; |
15986 L_type_symbol = search_expression_type->get_type(L_param_value); |
14624 |
15987 last_type_symbol = last_type_symbol && L_type_symbol && search_expression_type->is_same_type(L_type_symbol, last_type_symbol) ? search_expression_type->common_type(L_type_symbol, last_type_symbol) : L_type_symbol ; |
14625 if(search_expression_type->is_integer_type(L_type_symbol)) |
15988 } |
|
15989 |
|
15990 if(L_type_symbol == NULL || search_expression_type->is_integer_type(L_type_symbol)) |
14626 { |
15991 { |
14627 |
15992 |
14628 { |
15993 { |
14629 identifier_c param_name("P"); |
15994 identifier_c param_name("P"); |
14630 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
15995 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14631 symbol_c *P_param_value = function_call_param_iterator.search(¶m_name); |
15996 symbol_c *P_param_value = function_call_param_iterator.search(¶m_name); |
|
15997 symbol_c *P_type_symbol = NULL; |
14632 |
15998 |
14633 /* Get the value from a foo(<param_value>) style call */ |
15999 /* Get the value from a foo(<param_value>) style call */ |
14634 if (P_param_value == NULL) |
16000 if (P_param_value == NULL) |
14635 P_param_value = function_call_param_iterator.next(); |
16001 P_param_value = function_call_param_iterator.next(); |
14636 symbol_c *P_type_symbol = search_expression_type->get_type(P_param_value); |
16002 if (P_param_value != NULL) { |
14637 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(P_type_symbol, last_type_symbol) ? search_expression_type->common_type(P_type_symbol, last_type_symbol) : P_type_symbol ; |
16003 P_type_symbol = search_expression_type->get_type(P_param_value); |
|
16004 last_type_symbol = last_type_symbol && P_type_symbol && search_expression_type->is_same_type(P_type_symbol, last_type_symbol) ? search_expression_type->common_type(P_type_symbol, last_type_symbol) : P_type_symbol ; |
|
16005 } |
14638 |
16006 |
14639 if(search_expression_type->is_integer_type(P_type_symbol)) |
16007 if(P_type_symbol == NULL || search_expression_type->is_integer_type(P_type_symbol)) |
14640 { |
16008 { |
14641 |
16009 |
14642 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
16010 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
14643 return return_type_symbol; |
16011 return return_type_symbol; |
14644 |
16012 |
14672 |
16040 |
14673 { |
16041 { |
14674 identifier_c param_name("IN1"); |
16042 identifier_c param_name("IN1"); |
14675 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
16043 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14676 symbol_c *IN1_param_value = function_call_param_iterator.search(¶m_name); |
16044 symbol_c *IN1_param_value = function_call_param_iterator.search(¶m_name); |
|
16045 symbol_c *IN1_type_symbol = NULL; |
14677 |
16046 |
14678 /* Get the value from a foo(<param_value>) style call */ |
16047 /* Get the value from a foo(<param_value>) style call */ |
14679 if (IN1_param_value == NULL) |
16048 if (IN1_param_value == NULL) |
14680 IN1_param_value = function_call_param_iterator.next(); |
16049 IN1_param_value = function_call_param_iterator.next(); |
14681 symbol_c *IN1_type_symbol = search_expression_type->get_type(IN1_param_value); |
16050 if (IN1_param_value != NULL) { |
14682 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN1_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN1_type_symbol, last_type_symbol) : IN1_type_symbol ; |
16051 IN1_type_symbol = search_expression_type->get_type(IN1_param_value); |
14683 |
16052 last_type_symbol = last_type_symbol && IN1_type_symbol && search_expression_type->is_same_type(IN1_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN1_type_symbol, last_type_symbol) : IN1_type_symbol ; |
14684 if(search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol)) |
16053 } |
|
16054 |
|
16055 if(IN1_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol)) |
14685 { |
16056 { |
14686 |
16057 |
14687 { |
16058 { |
14688 identifier_c param_name("IN2"); |
16059 identifier_c param_name("IN2"); |
14689 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
16060 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14690 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
16061 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
16062 symbol_c *IN2_type_symbol = NULL; |
14691 |
16063 |
14692 /* Get the value from a foo(<param_value>) style call */ |
16064 /* Get the value from a foo(<param_value>) style call */ |
14693 if (IN2_param_value == NULL) |
16065 if (IN2_param_value == NULL) |
14694 IN2_param_value = function_call_param_iterator.next(); |
16066 IN2_param_value = function_call_param_iterator.next(); |
14695 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
16067 if (IN2_param_value != NULL) { |
14696 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
16068 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
14697 |
16069 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
14698 if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol)) |
16070 } |
|
16071 |
|
16072 if(IN2_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol)) |
14699 { |
16073 { |
14700 |
16074 |
14701 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name; |
16075 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name; |
14702 return return_type_symbol; |
16076 return return_type_symbol; |
14703 |
16077 |
14707 ERROR; |
16081 ERROR; |
14708 } |
16082 } |
14709 |
16083 |
14710 } |
16084 } |
14711 |
16085 |
14712 if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
16086 if(IN1_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
14713 { |
16087 { |
14714 |
16088 |
14715 { |
16089 { |
14716 identifier_c param_name("IN2"); |
16090 identifier_c param_name("IN2"); |
14717 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
16091 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14718 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
16092 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
16093 symbol_c *IN2_type_symbol = NULL; |
14719 |
16094 |
14720 /* Get the value from a foo(<param_value>) style call */ |
16095 /* Get the value from a foo(<param_value>) style call */ |
14721 if (IN2_param_value == NULL) |
16096 if (IN2_param_value == NULL) |
14722 IN2_param_value = function_call_param_iterator.next(); |
16097 IN2_param_value = function_call_param_iterator.next(); |
14723 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
16098 if (IN2_param_value != NULL) { |
14724 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
16099 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
14725 |
16100 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
14726 if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
16101 } |
|
16102 |
|
16103 if(IN2_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
14727 { |
16104 { |
14728 |
16105 |
14729 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
16106 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
14730 return return_type_symbol; |
16107 return return_type_symbol; |
14731 |
16108 |
14753 |
16130 |
14754 { |
16131 { |
14755 identifier_c param_name("IN1"); |
16132 identifier_c param_name("IN1"); |
14756 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
16133 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14757 symbol_c *IN1_param_value = function_call_param_iterator.search(¶m_name); |
16134 symbol_c *IN1_param_value = function_call_param_iterator.search(¶m_name); |
|
16135 symbol_c *IN1_type_symbol = NULL; |
14758 |
16136 |
14759 /* Get the value from a foo(<param_value>) style call */ |
16137 /* Get the value from a foo(<param_value>) style call */ |
14760 if (IN1_param_value == NULL) |
16138 if (IN1_param_value == NULL) |
14761 IN1_param_value = function_call_param_iterator.next(); |
16139 IN1_param_value = function_call_param_iterator.next(); |
14762 symbol_c *IN1_type_symbol = search_expression_type->get_type(IN1_param_value); |
16140 if (IN1_param_value != NULL) { |
14763 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN1_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN1_type_symbol, last_type_symbol) : IN1_type_symbol ; |
16141 IN1_type_symbol = search_expression_type->get_type(IN1_param_value); |
14764 |
16142 last_type_symbol = last_type_symbol && IN1_type_symbol && search_expression_type->is_same_type(IN1_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN1_type_symbol, last_type_symbol) : IN1_type_symbol ; |
14765 if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
16143 } |
|
16144 |
|
16145 if(IN1_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
14766 { |
16146 { |
14767 |
16147 |
14768 { |
16148 { |
14769 identifier_c param_name("IN2"); |
16149 identifier_c param_name("IN2"); |
14770 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
16150 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14771 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
16151 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
16152 symbol_c *IN2_type_symbol = NULL; |
14772 |
16153 |
14773 /* Get the value from a foo(<param_value>) style call */ |
16154 /* Get the value from a foo(<param_value>) style call */ |
14774 if (IN2_param_value == NULL) |
16155 if (IN2_param_value == NULL) |
14775 IN2_param_value = function_call_param_iterator.next(); |
16156 IN2_param_value = function_call_param_iterator.next(); |
14776 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
16157 if (IN2_param_value != NULL) { |
14777 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
16158 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
14778 |
16159 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
14779 if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
16160 } |
|
16161 |
|
16162 if(IN2_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
14780 { |
16163 { |
14781 |
16164 |
14782 { |
16165 { |
14783 identifier_c param_name("P"); |
16166 identifier_c param_name("P"); |
14784 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
16167 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14785 symbol_c *P_param_value = function_call_param_iterator.search(¶m_name); |
16168 symbol_c *P_param_value = function_call_param_iterator.search(¶m_name); |
|
16169 symbol_c *P_type_symbol = NULL; |
14786 |
16170 |
14787 /* Get the value from a foo(<param_value>) style call */ |
16171 /* Get the value from a foo(<param_value>) style call */ |
14788 if (P_param_value == NULL) |
16172 if (P_param_value == NULL) |
14789 P_param_value = function_call_param_iterator.next(); |
16173 P_param_value = function_call_param_iterator.next(); |
14790 symbol_c *P_type_symbol = search_expression_type->get_type(P_param_value); |
16174 if (P_param_value != NULL) { |
14791 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(P_type_symbol, last_type_symbol) ? search_expression_type->common_type(P_type_symbol, last_type_symbol) : P_type_symbol ; |
16175 P_type_symbol = search_expression_type->get_type(P_param_value); |
|
16176 last_type_symbol = last_type_symbol && P_type_symbol && search_expression_type->is_same_type(P_type_symbol, last_type_symbol) ? search_expression_type->common_type(P_type_symbol, last_type_symbol) : P_type_symbol ; |
|
16177 } |
14792 |
16178 |
14793 if(search_expression_type->is_integer_type(P_type_symbol)) |
16179 if(P_type_symbol == NULL || search_expression_type->is_integer_type(P_type_symbol)) |
14794 { |
16180 { |
14795 |
16181 |
14796 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
16182 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
14797 return return_type_symbol; |
16183 return return_type_symbol; |
14798 |
16184 |
14826 |
16212 |
14827 { |
16213 { |
14828 identifier_c param_name("IN"); |
16214 identifier_c param_name("IN"); |
14829 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
16215 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14830 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
16216 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
14831 |
16217 symbol_c *IN_type_symbol = NULL; |
14832 /* Get the value from a foo(<param_value>) style call */ |
16218 |
14833 if (IN_param_value == NULL) |
16219 /* Get the value from a foo(<param_value>) style call */ |
14834 IN_param_value = function_call_param_iterator.next(); |
16220 if (IN_param_value == NULL) |
14835 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
16221 IN_param_value = function_call_param_iterator.next(); |
14836 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
16222 if (IN_param_value != NULL) { |
14837 |
16223 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
14838 if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
16224 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
16225 } |
|
16226 |
|
16227 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
14839 { |
16228 { |
14840 |
16229 |
14841 { |
16230 { |
14842 identifier_c param_name("L"); |
16231 identifier_c param_name("L"); |
14843 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
16232 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14844 symbol_c *L_param_value = function_call_param_iterator.search(¶m_name); |
16233 symbol_c *L_param_value = function_call_param_iterator.search(¶m_name); |
|
16234 symbol_c *L_type_symbol = NULL; |
14845 |
16235 |
14846 /* Get the value from a foo(<param_value>) style call */ |
16236 /* Get the value from a foo(<param_value>) style call */ |
14847 if (L_param_value == NULL) |
16237 if (L_param_value == NULL) |
14848 L_param_value = function_call_param_iterator.next(); |
16238 L_param_value = function_call_param_iterator.next(); |
14849 symbol_c *L_type_symbol = search_expression_type->get_type(L_param_value); |
16239 if (L_param_value != NULL) { |
14850 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(L_type_symbol, last_type_symbol) ? search_expression_type->common_type(L_type_symbol, last_type_symbol) : L_type_symbol ; |
16240 L_type_symbol = search_expression_type->get_type(L_param_value); |
14851 |
16241 last_type_symbol = last_type_symbol && L_type_symbol && search_expression_type->is_same_type(L_type_symbol, last_type_symbol) ? search_expression_type->common_type(L_type_symbol, last_type_symbol) : L_type_symbol ; |
14852 if(search_expression_type->is_integer_type(L_type_symbol)) |
16242 } |
|
16243 |
|
16244 if(L_type_symbol == NULL || search_expression_type->is_integer_type(L_type_symbol)) |
14853 { |
16245 { |
14854 |
16246 |
14855 { |
16247 { |
14856 identifier_c param_name("P"); |
16248 identifier_c param_name("P"); |
14857 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
16249 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14858 symbol_c *P_param_value = function_call_param_iterator.search(¶m_name); |
16250 symbol_c *P_param_value = function_call_param_iterator.search(¶m_name); |
|
16251 symbol_c *P_type_symbol = NULL; |
14859 |
16252 |
14860 /* Get the value from a foo(<param_value>) style call */ |
16253 /* Get the value from a foo(<param_value>) style call */ |
14861 if (P_param_value == NULL) |
16254 if (P_param_value == NULL) |
14862 P_param_value = function_call_param_iterator.next(); |
16255 P_param_value = function_call_param_iterator.next(); |
14863 symbol_c *P_type_symbol = search_expression_type->get_type(P_param_value); |
16256 if (P_param_value != NULL) { |
14864 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(P_type_symbol, last_type_symbol) ? search_expression_type->common_type(P_type_symbol, last_type_symbol) : P_type_symbol ; |
16257 P_type_symbol = search_expression_type->get_type(P_param_value); |
|
16258 last_type_symbol = last_type_symbol && P_type_symbol && search_expression_type->is_same_type(P_type_symbol, last_type_symbol) ? search_expression_type->common_type(P_type_symbol, last_type_symbol) : P_type_symbol ; |
|
16259 } |
14865 |
16260 |
14866 if(search_expression_type->is_integer_type(P_type_symbol)) |
16261 if(P_type_symbol == NULL || search_expression_type->is_integer_type(P_type_symbol)) |
14867 { |
16262 { |
14868 |
16263 |
14869 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
16264 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
14870 return return_type_symbol; |
16265 return return_type_symbol; |
14871 |
16266 |
14899 |
16294 |
14900 { |
16295 { |
14901 identifier_c param_name("IN1"); |
16296 identifier_c param_name("IN1"); |
14902 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
16297 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14903 symbol_c *IN1_param_value = function_call_param_iterator.search(¶m_name); |
16298 symbol_c *IN1_param_value = function_call_param_iterator.search(¶m_name); |
|
16299 symbol_c *IN1_type_symbol = NULL; |
14904 |
16300 |
14905 /* Get the value from a foo(<param_value>) style call */ |
16301 /* Get the value from a foo(<param_value>) style call */ |
14906 if (IN1_param_value == NULL) |
16302 if (IN1_param_value == NULL) |
14907 IN1_param_value = function_call_param_iterator.next(); |
16303 IN1_param_value = function_call_param_iterator.next(); |
14908 symbol_c *IN1_type_symbol = search_expression_type->get_type(IN1_param_value); |
16304 if (IN1_param_value != NULL) { |
14909 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN1_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN1_type_symbol, last_type_symbol) : IN1_type_symbol ; |
16305 IN1_type_symbol = search_expression_type->get_type(IN1_param_value); |
14910 |
16306 last_type_symbol = last_type_symbol && IN1_type_symbol && search_expression_type->is_same_type(IN1_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN1_type_symbol, last_type_symbol) : IN1_type_symbol ; |
14911 if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
16307 } |
|
16308 |
|
16309 if(IN1_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
14912 { |
16310 { |
14913 |
16311 |
14914 { |
16312 { |
14915 identifier_c param_name("IN2"); |
16313 identifier_c param_name("IN2"); |
14916 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
16314 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14917 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
16315 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
16316 symbol_c *IN2_type_symbol = NULL; |
14918 |
16317 |
14919 /* Get the value from a foo(<param_value>) style call */ |
16318 /* Get the value from a foo(<param_value>) style call */ |
14920 if (IN2_param_value == NULL) |
16319 if (IN2_param_value == NULL) |
14921 IN2_param_value = function_call_param_iterator.next(); |
16320 IN2_param_value = function_call_param_iterator.next(); |
14922 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
16321 if (IN2_param_value != NULL) { |
14923 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
16322 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
14924 |
16323 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
14925 if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
16324 } |
|
16325 |
|
16326 if(IN2_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
14926 { |
16327 { |
14927 |
16328 |
14928 { |
16329 { |
14929 identifier_c param_name("L"); |
16330 identifier_c param_name("L"); |
14930 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
16331 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14931 symbol_c *L_param_value = function_call_param_iterator.search(¶m_name); |
16332 symbol_c *L_param_value = function_call_param_iterator.search(¶m_name); |
|
16333 symbol_c *L_type_symbol = NULL; |
14932 |
16334 |
14933 /* Get the value from a foo(<param_value>) style call */ |
16335 /* Get the value from a foo(<param_value>) style call */ |
14934 if (L_param_value == NULL) |
16336 if (L_param_value == NULL) |
14935 L_param_value = function_call_param_iterator.next(); |
16337 L_param_value = function_call_param_iterator.next(); |
14936 symbol_c *L_type_symbol = search_expression_type->get_type(L_param_value); |
16338 if (L_param_value != NULL) { |
14937 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(L_type_symbol, last_type_symbol) ? search_expression_type->common_type(L_type_symbol, last_type_symbol) : L_type_symbol ; |
16339 L_type_symbol = search_expression_type->get_type(L_param_value); |
|
16340 last_type_symbol = last_type_symbol && L_type_symbol && search_expression_type->is_same_type(L_type_symbol, last_type_symbol) ? search_expression_type->common_type(L_type_symbol, last_type_symbol) : L_type_symbol ; |
|
16341 } |
14938 |
16342 |
14939 if(search_expression_type->is_integer_type(L_type_symbol)) |
16343 if(L_type_symbol == NULL || search_expression_type->is_integer_type(L_type_symbol)) |
14940 { |
16344 { |
14941 |
16345 |
14942 { |
16346 { |
14943 identifier_c param_name("P"); |
16347 identifier_c param_name("P"); |
14944 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
16348 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14945 symbol_c *P_param_value = function_call_param_iterator.search(¶m_name); |
16349 symbol_c *P_param_value = function_call_param_iterator.search(¶m_name); |
|
16350 symbol_c *P_type_symbol = NULL; |
14946 |
16351 |
14947 /* Get the value from a foo(<param_value>) style call */ |
16352 /* Get the value from a foo(<param_value>) style call */ |
14948 if (P_param_value == NULL) |
16353 if (P_param_value == NULL) |
14949 P_param_value = function_call_param_iterator.next(); |
16354 P_param_value = function_call_param_iterator.next(); |
14950 symbol_c *P_type_symbol = search_expression_type->get_type(P_param_value); |
16355 if (P_param_value != NULL) { |
14951 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(P_type_symbol, last_type_symbol) ? search_expression_type->common_type(P_type_symbol, last_type_symbol) : P_type_symbol ; |
16356 P_type_symbol = search_expression_type->get_type(P_param_value); |
|
16357 last_type_symbol = last_type_symbol && P_type_symbol && search_expression_type->is_same_type(P_type_symbol, last_type_symbol) ? search_expression_type->common_type(P_type_symbol, last_type_symbol) : P_type_symbol ; |
|
16358 } |
14952 |
16359 |
14953 if(search_expression_type->is_integer_type(P_type_symbol)) |
16360 if(P_type_symbol == NULL || search_expression_type->is_integer_type(P_type_symbol)) |
14954 { |
16361 { |
14955 |
16362 |
14956 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
16363 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
14957 return return_type_symbol; |
16364 return return_type_symbol; |
14958 |
16365 |
14992 |
16399 |
14993 { |
16400 { |
14994 identifier_c param_name("IN1"); |
16401 identifier_c param_name("IN1"); |
14995 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
16402 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
14996 symbol_c *IN1_param_value = function_call_param_iterator.search(¶m_name); |
16403 symbol_c *IN1_param_value = function_call_param_iterator.search(¶m_name); |
|
16404 symbol_c *IN1_type_symbol = NULL; |
14997 |
16405 |
14998 /* Get the value from a foo(<param_value>) style call */ |
16406 /* Get the value from a foo(<param_value>) style call */ |
14999 if (IN1_param_value == NULL) |
16407 if (IN1_param_value == NULL) |
15000 IN1_param_value = function_call_param_iterator.next(); |
16408 IN1_param_value = function_call_param_iterator.next(); |
15001 symbol_c *IN1_type_symbol = search_expression_type->get_type(IN1_param_value); |
16409 if (IN1_param_value != NULL) { |
15002 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN1_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN1_type_symbol, last_type_symbol) : IN1_type_symbol ; |
16410 IN1_type_symbol = search_expression_type->get_type(IN1_param_value); |
15003 |
16411 last_type_symbol = last_type_symbol && IN1_type_symbol && search_expression_type->is_same_type(IN1_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN1_type_symbol, last_type_symbol) : IN1_type_symbol ; |
15004 if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
16412 } |
|
16413 |
|
16414 if(IN1_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
15005 { |
16415 { |
15006 |
16416 |
15007 { |
16417 { |
15008 identifier_c param_name("IN2"); |
16418 identifier_c param_name("IN2"); |
15009 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
16419 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
15010 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
16420 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
16421 symbol_c *IN2_type_symbol = NULL; |
15011 |
16422 |
15012 /* Get the value from a foo(<param_value>) style call */ |
16423 /* Get the value from a foo(<param_value>) style call */ |
15013 if (IN2_param_value == NULL) |
16424 if (IN2_param_value == NULL) |
15014 IN2_param_value = function_call_param_iterator.next(); |
16425 IN2_param_value = function_call_param_iterator.next(); |
15015 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
16426 if (IN2_param_value != NULL) { |
15016 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
16427 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
15017 |
16428 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
15018 if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
16429 } |
|
16430 |
|
16431 if(IN2_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
15019 { |
16432 { |
15020 |
16433 |
15021 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name; |
16434 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name; |
15022 return return_type_symbol; |
16435 return return_type_symbol; |
15023 |
16436 |
25095 |
26508 |
25096 { |
26509 { |
25097 symbol_c *IN1_type_symbol = param_data_type; |
26510 symbol_c *IN1_type_symbol = param_data_type; |
25098 last_type_symbol = param_data_type; |
26511 last_type_symbol = param_data_type; |
25099 |
26512 |
25100 if(search_expression_type->is_num_type(IN1_type_symbol)) |
26513 if(IN1_type_symbol == NULL || search_expression_type->is_num_type(IN1_type_symbol)) |
25101 { |
26514 { |
25102 |
26515 |
25103 { |
26516 { |
25104 identifier_c param_name("IN2"); |
26517 identifier_c param_name("IN2"); |
25105 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
26518 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
25106 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
26519 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
26520 symbol_c *IN2_type_symbol = NULL; |
25107 |
26521 |
25108 /* Get the value from a foo(<param_value>) style call */ |
26522 /* Get the value from a foo(<param_value>) style call */ |
25109 if (IN2_param_value == NULL) |
26523 if (IN2_param_value == NULL) |
25110 IN2_param_value = function_call_param_iterator.next(); |
26524 IN2_param_value = function_call_param_iterator.next(); |
25111 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
26525 if (IN2_param_value != NULL) { |
25112 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
26526 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
25113 |
26527 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
25114 if(search_expression_type->is_num_type(IN2_type_symbol)) |
26528 } |
|
26529 |
|
26530 if(IN2_type_symbol == NULL || search_expression_type->is_num_type(IN2_type_symbol)) |
25115 { |
26531 { |
25116 |
26532 |
25117 symbol_c * return_type_symbol = last_type_symbol; |
26533 symbol_c * return_type_symbol = last_type_symbol; |
25118 return return_type_symbol; |
26534 return return_type_symbol; |
25119 |
26535 |
25123 ERROR; |
26539 ERROR; |
25124 } |
26540 } |
25125 |
26541 |
25126 } |
26542 } |
25127 |
26543 |
25128 if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol)) |
26544 if(IN1_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol)) |
25129 { |
26545 { |
25130 |
26546 |
25131 { |
26547 { |
25132 identifier_c param_name("IN2"); |
26548 identifier_c param_name("IN2"); |
25133 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
26549 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
25134 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
26550 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
26551 symbol_c *IN2_type_symbol = NULL; |
25135 |
26552 |
25136 /* Get the value from a foo(<param_value>) style call */ |
26553 /* Get the value from a foo(<param_value>) style call */ |
25137 if (IN2_param_value == NULL) |
26554 if (IN2_param_value == NULL) |
25138 IN2_param_value = function_call_param_iterator.next(); |
26555 IN2_param_value = function_call_param_iterator.next(); |
25139 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
26556 if (IN2_param_value != NULL) { |
25140 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
26557 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
25141 |
26558 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
25142 if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
26559 } |
|
26560 |
|
26561 if(IN2_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
25143 { |
26562 { |
25144 |
26563 |
25145 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name; |
26564 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name; |
25146 return return_type_symbol; |
26565 return return_type_symbol; |
25147 |
26566 |
25151 ERROR; |
26570 ERROR; |
25152 } |
26571 } |
25153 |
26572 |
25154 } |
26573 } |
25155 |
26574 |
25156 if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol)) |
26575 if(IN1_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol)) |
25157 { |
26576 { |
25158 |
26577 |
25159 { |
26578 { |
25160 identifier_c param_name("IN2"); |
26579 identifier_c param_name("IN2"); |
25161 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
26580 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
25162 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
26581 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
26582 symbol_c *IN2_type_symbol = NULL; |
25163 |
26583 |
25164 /* Get the value from a foo(<param_value>) style call */ |
26584 /* Get the value from a foo(<param_value>) style call */ |
25165 if (IN2_param_value == NULL) |
26585 if (IN2_param_value == NULL) |
25166 IN2_param_value = function_call_param_iterator.next(); |
26586 IN2_param_value = function_call_param_iterator.next(); |
25167 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
26587 if (IN2_param_value != NULL) { |
25168 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
26588 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
25169 |
26589 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
25170 if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
26590 } |
|
26591 |
|
26592 if(IN2_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
25171 { |
26593 { |
25172 |
26594 |
25173 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name; |
26595 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name; |
25174 return return_type_symbol; |
26596 return return_type_symbol; |
25175 |
26597 |
25179 ERROR; |
26601 ERROR; |
25180 } |
26602 } |
25181 |
26603 |
25182 } |
26604 } |
25183 |
26605 |
25184 if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
26606 if(IN1_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
25185 { |
26607 { |
25186 |
26608 |
25187 { |
26609 { |
25188 identifier_c param_name("IN2"); |
26610 identifier_c param_name("IN2"); |
25189 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
26611 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
25190 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
26612 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
26613 symbol_c *IN2_type_symbol = NULL; |
25191 |
26614 |
25192 /* Get the value from a foo(<param_value>) style call */ |
26615 /* Get the value from a foo(<param_value>) style call */ |
25193 if (IN2_param_value == NULL) |
26616 if (IN2_param_value == NULL) |
25194 IN2_param_value = function_call_param_iterator.next(); |
26617 IN2_param_value = function_call_param_iterator.next(); |
25195 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
26618 if (IN2_param_value != NULL) { |
25196 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
26619 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
25197 |
26620 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
25198 if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
26621 } |
|
26622 |
|
26623 if(IN2_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
25199 { |
26624 { |
25200 |
26625 |
25201 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
26626 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
25202 return return_type_symbol; |
26627 return return_type_symbol; |
25203 |
26628 |
25225 |
26650 |
25226 { |
26651 { |
25227 symbol_c *IN1_type_symbol = param_data_type; |
26652 symbol_c *IN1_type_symbol = param_data_type; |
25228 last_type_symbol = param_data_type; |
26653 last_type_symbol = param_data_type; |
25229 |
26654 |
25230 if(search_expression_type->is_num_type(IN1_type_symbol)) |
26655 if(IN1_type_symbol == NULL || search_expression_type->is_num_type(IN1_type_symbol)) |
25231 { |
26656 { |
25232 |
26657 |
25233 { |
26658 { |
25234 identifier_c param_name("IN2"); |
26659 identifier_c param_name("IN2"); |
25235 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
26660 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
25236 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
26661 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
26662 symbol_c *IN2_type_symbol = NULL; |
25237 |
26663 |
25238 /* Get the value from a foo(<param_value>) style call */ |
26664 /* Get the value from a foo(<param_value>) style call */ |
25239 if (IN2_param_value == NULL) |
26665 if (IN2_param_value == NULL) |
25240 IN2_param_value = function_call_param_iterator.next(); |
26666 IN2_param_value = function_call_param_iterator.next(); |
25241 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
26667 if (IN2_param_value != NULL) { |
25242 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
26668 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
25243 |
26669 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
25244 if(search_expression_type->is_num_type(IN2_type_symbol)) |
26670 } |
|
26671 |
|
26672 if(IN2_type_symbol == NULL || search_expression_type->is_num_type(IN2_type_symbol)) |
25245 { |
26673 { |
25246 |
26674 |
25247 symbol_c * return_type_symbol = last_type_symbol; |
26675 symbol_c * return_type_symbol = last_type_symbol; |
25248 return return_type_symbol; |
26676 return return_type_symbol; |
25249 |
26677 |
25253 ERROR; |
26681 ERROR; |
25254 } |
26682 } |
25255 |
26683 |
25256 } |
26684 } |
25257 |
26685 |
25258 if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
26686 if(IN1_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
25259 { |
26687 { |
25260 |
26688 |
25261 { |
26689 { |
25262 identifier_c param_name("IN2"); |
26690 identifier_c param_name("IN2"); |
25263 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
26691 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
25264 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
26692 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
26693 symbol_c *IN2_type_symbol = NULL; |
25265 |
26694 |
25266 /* Get the value from a foo(<param_value>) style call */ |
26695 /* Get the value from a foo(<param_value>) style call */ |
25267 if (IN2_param_value == NULL) |
26696 if (IN2_param_value == NULL) |
25268 IN2_param_value = function_call_param_iterator.next(); |
26697 IN2_param_value = function_call_param_iterator.next(); |
25269 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
26698 if (IN2_param_value != NULL) { |
25270 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
26699 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
25271 |
26700 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
25272 if(search_expression_type->is_num_type(IN2_type_symbol)) |
26701 } |
|
26702 |
|
26703 if(IN2_type_symbol == NULL || search_expression_type->is_num_type(IN2_type_symbol)) |
25273 { |
26704 { |
25274 |
26705 |
25275 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
26706 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
25276 return return_type_symbol; |
26707 return return_type_symbol; |
25277 |
26708 |
25299 |
26730 |
25300 { |
26731 { |
25301 symbol_c *IN1_type_symbol = param_data_type; |
26732 symbol_c *IN1_type_symbol = param_data_type; |
25302 last_type_symbol = param_data_type; |
26733 last_type_symbol = param_data_type; |
25303 |
26734 |
25304 if(search_expression_type->is_num_type(IN1_type_symbol)) |
26735 if(IN1_type_symbol == NULL || search_expression_type->is_num_type(IN1_type_symbol)) |
25305 { |
26736 { |
25306 |
26737 |
25307 { |
26738 { |
25308 identifier_c param_name("IN2"); |
26739 identifier_c param_name("IN2"); |
25309 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
26740 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
25310 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
26741 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
26742 symbol_c *IN2_type_symbol = NULL; |
25311 |
26743 |
25312 /* Get the value from a foo(<param_value>) style call */ |
26744 /* Get the value from a foo(<param_value>) style call */ |
25313 if (IN2_param_value == NULL) |
26745 if (IN2_param_value == NULL) |
25314 IN2_param_value = function_call_param_iterator.next(); |
26746 IN2_param_value = function_call_param_iterator.next(); |
25315 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
26747 if (IN2_param_value != NULL) { |
25316 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
26748 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
25317 |
26749 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
25318 if(search_expression_type->is_num_type(IN2_type_symbol)) |
26750 } |
|
26751 |
|
26752 if(IN2_type_symbol == NULL || search_expression_type->is_num_type(IN2_type_symbol)) |
25319 { |
26753 { |
25320 |
26754 |
25321 symbol_c * return_type_symbol = last_type_symbol; |
26755 symbol_c * return_type_symbol = last_type_symbol; |
25322 return return_type_symbol; |
26756 return return_type_symbol; |
25323 |
26757 |
25327 ERROR; |
26761 ERROR; |
25328 } |
26762 } |
25329 |
26763 |
25330 } |
26764 } |
25331 |
26765 |
25332 if(search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol)) |
26766 if(IN1_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol)) |
25333 { |
26767 { |
25334 |
26768 |
25335 { |
26769 { |
25336 identifier_c param_name("IN2"); |
26770 identifier_c param_name("IN2"); |
25337 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
26771 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
25338 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
26772 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
26773 symbol_c *IN2_type_symbol = NULL; |
25339 |
26774 |
25340 /* Get the value from a foo(<param_value>) style call */ |
26775 /* Get the value from a foo(<param_value>) style call */ |
25341 if (IN2_param_value == NULL) |
26776 if (IN2_param_value == NULL) |
25342 IN2_param_value = function_call_param_iterator.next(); |
26777 IN2_param_value = function_call_param_iterator.next(); |
25343 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
26778 if (IN2_param_value != NULL) { |
25344 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
26779 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
25345 |
26780 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
25346 if(search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol)) |
26781 } |
|
26782 |
|
26783 if(IN2_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol)) |
25347 { |
26784 { |
25348 |
26785 |
25349 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
26786 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
25350 return return_type_symbol; |
26787 return return_type_symbol; |
25351 |
26788 |
25355 ERROR; |
26792 ERROR; |
25356 } |
26793 } |
25357 |
26794 |
25358 } |
26795 } |
25359 |
26796 |
25360 if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol)) |
26797 if(IN1_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol)) |
25361 { |
26798 { |
25362 |
26799 |
25363 { |
26800 { |
25364 identifier_c param_name("IN2"); |
26801 identifier_c param_name("IN2"); |
25365 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
26802 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
25366 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
26803 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
26804 symbol_c *IN2_type_symbol = NULL; |
25367 |
26805 |
25368 /* Get the value from a foo(<param_value>) style call */ |
26806 /* Get the value from a foo(<param_value>) style call */ |
25369 if (IN2_param_value == NULL) |
26807 if (IN2_param_value == NULL) |
25370 IN2_param_value = function_call_param_iterator.next(); |
26808 IN2_param_value = function_call_param_iterator.next(); |
25371 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
26809 if (IN2_param_value != NULL) { |
25372 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
26810 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
25373 |
26811 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
25374 if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol)) |
26812 } |
|
26813 |
|
26814 if(IN2_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol)) |
25375 { |
26815 { |
25376 |
26816 |
25377 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
26817 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
25378 return return_type_symbol; |
26818 return return_type_symbol; |
25379 |
26819 |
25380 } |
26820 } |
25381 |
26821 |
25382 if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
26822 if(IN2_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
25383 { |
26823 { |
25384 |
26824 |
25385 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name; |
26825 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name; |
25386 return return_type_symbol; |
26826 return return_type_symbol; |
25387 |
26827 |
25391 ERROR; |
26831 ERROR; |
25392 } |
26832 } |
25393 |
26833 |
25394 } |
26834 } |
25395 |
26835 |
25396 if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol)) |
26836 if(IN1_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol)) |
25397 { |
26837 { |
25398 |
26838 |
25399 { |
26839 { |
25400 identifier_c param_name("IN2"); |
26840 identifier_c param_name("IN2"); |
25401 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
26841 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
25402 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
26842 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
26843 symbol_c *IN2_type_symbol = NULL; |
25403 |
26844 |
25404 /* Get the value from a foo(<param_value>) style call */ |
26845 /* Get the value from a foo(<param_value>) style call */ |
25405 if (IN2_param_value == NULL) |
26846 if (IN2_param_value == NULL) |
25406 IN2_param_value = function_call_param_iterator.next(); |
26847 IN2_param_value = function_call_param_iterator.next(); |
25407 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
26848 if (IN2_param_value != NULL) { |
25408 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
26849 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
25409 |
26850 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
25410 if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol)) |
26851 } |
|
26852 |
|
26853 if(IN2_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol)) |
25411 { |
26854 { |
25412 |
26855 |
25413 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
26856 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
25414 return return_type_symbol; |
26857 return return_type_symbol; |
25415 |
26858 |
25416 } |
26859 } |
25417 |
26860 |
25418 if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
26861 if(IN2_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
25419 { |
26862 { |
25420 |
26863 |
25421 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name; |
26864 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name; |
25422 return return_type_symbol; |
26865 return return_type_symbol; |
25423 |
26866 |
25427 ERROR; |
26870 ERROR; |
25428 } |
26871 } |
25429 |
26872 |
25430 } |
26873 } |
25431 |
26874 |
25432 if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
26875 if(IN1_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
25433 { |
26876 { |
25434 |
26877 |
25435 { |
26878 { |
25436 identifier_c param_name("IN2"); |
26879 identifier_c param_name("IN2"); |
25437 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
26880 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
25438 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
26881 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
26882 symbol_c *IN2_type_symbol = NULL; |
25439 |
26883 |
25440 /* Get the value from a foo(<param_value>) style call */ |
26884 /* Get the value from a foo(<param_value>) style call */ |
25441 if (IN2_param_value == NULL) |
26885 if (IN2_param_value == NULL) |
25442 IN2_param_value = function_call_param_iterator.next(); |
26886 IN2_param_value = function_call_param_iterator.next(); |
25443 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
26887 if (IN2_param_value != NULL) { |
25444 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
26888 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
25445 |
26889 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
25446 if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
26890 } |
|
26891 |
|
26892 if(IN2_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
25447 { |
26893 { |
25448 |
26894 |
25449 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
26895 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
25450 return return_type_symbol; |
26896 return return_type_symbol; |
25451 |
26897 |
25473 |
26919 |
25474 { |
26920 { |
25475 symbol_c *IN1_type_symbol = param_data_type; |
26921 symbol_c *IN1_type_symbol = param_data_type; |
25476 last_type_symbol = param_data_type; |
26922 last_type_symbol = param_data_type; |
25477 |
26923 |
25478 if(search_expression_type->is_num_type(IN1_type_symbol)) |
26924 if(IN1_type_symbol == NULL || search_expression_type->is_num_type(IN1_type_symbol)) |
25479 { |
26925 { |
25480 |
26926 |
25481 { |
26927 { |
25482 identifier_c param_name("IN2"); |
26928 identifier_c param_name("IN2"); |
25483 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
26929 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
25484 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
26930 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
26931 symbol_c *IN2_type_symbol = NULL; |
25485 |
26932 |
25486 /* Get the value from a foo(<param_value>) style call */ |
26933 /* Get the value from a foo(<param_value>) style call */ |
25487 if (IN2_param_value == NULL) |
26934 if (IN2_param_value == NULL) |
25488 IN2_param_value = function_call_param_iterator.next(); |
26935 IN2_param_value = function_call_param_iterator.next(); |
25489 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
26936 if (IN2_param_value != NULL) { |
25490 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
26937 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
25491 |
26938 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
25492 if(search_expression_type->is_num_type(IN2_type_symbol)) |
26939 } |
|
26940 |
|
26941 if(IN2_type_symbol == NULL || search_expression_type->is_num_type(IN2_type_symbol)) |
25493 { |
26942 { |
25494 |
26943 |
25495 symbol_c * return_type_symbol = last_type_symbol; |
26944 symbol_c * return_type_symbol = last_type_symbol; |
25496 return return_type_symbol; |
26945 return return_type_symbol; |
25497 |
26946 |
25501 ERROR; |
26950 ERROR; |
25502 } |
26951 } |
25503 |
26952 |
25504 } |
26953 } |
25505 |
26954 |
25506 if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
26955 if(IN1_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol)) |
25507 { |
26956 { |
25508 |
26957 |
25509 { |
26958 { |
25510 identifier_c param_name("IN2"); |
26959 identifier_c param_name("IN2"); |
25511 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
26960 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
25512 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
26961 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
26962 symbol_c *IN2_type_symbol = NULL; |
25513 |
26963 |
25514 /* Get the value from a foo(<param_value>) style call */ |
26964 /* Get the value from a foo(<param_value>) style call */ |
25515 if (IN2_param_value == NULL) |
26965 if (IN2_param_value == NULL) |
25516 IN2_param_value = function_call_param_iterator.next(); |
26966 IN2_param_value = function_call_param_iterator.next(); |
25517 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
26967 if (IN2_param_value != NULL) { |
25518 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
26968 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
25519 |
26969 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
25520 if(search_expression_type->is_num_type(IN2_type_symbol)) |
26970 } |
|
26971 |
|
26972 if(IN2_type_symbol == NULL || search_expression_type->is_num_type(IN2_type_symbol)) |
25521 { |
26973 { |
25522 |
26974 |
25523 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
26975 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name; |
25524 return return_type_symbol; |
26976 return return_type_symbol; |
25525 |
26977 |
25547 |
26999 |
25548 { |
27000 { |
25549 symbol_c *IN1_type_symbol = param_data_type; |
27001 symbol_c *IN1_type_symbol = param_data_type; |
25550 last_type_symbol = param_data_type; |
27002 last_type_symbol = param_data_type; |
25551 |
27003 |
25552 if(search_expression_type->is_num_type(IN1_type_symbol)) |
27004 if(IN1_type_symbol == NULL || search_expression_type->is_num_type(IN1_type_symbol)) |
25553 { |
27005 { |
25554 |
27006 |
25555 { |
27007 { |
25556 identifier_c param_name("IN2"); |
27008 identifier_c param_name("IN2"); |
25557 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
27009 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
25558 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
27010 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
27011 symbol_c *IN2_type_symbol = NULL; |
25559 |
27012 |
25560 /* Get the value from a foo(<param_value>) style call */ |
27013 /* Get the value from a foo(<param_value>) style call */ |
25561 if (IN2_param_value == NULL) |
27014 if (IN2_param_value == NULL) |
25562 IN2_param_value = function_call_param_iterator.next(); |
27015 IN2_param_value = function_call_param_iterator.next(); |
25563 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
27016 if (IN2_param_value != NULL) { |
25564 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
27017 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
25565 |
27018 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
25566 if(search_expression_type->is_num_type(IN2_type_symbol)) |
27019 } |
|
27020 |
|
27021 if(IN2_type_symbol == NULL || search_expression_type->is_num_type(IN2_type_symbol)) |
25567 { |
27022 { |
25568 |
27023 |
25569 symbol_c * return_type_symbol = last_type_symbol; |
27024 symbol_c * return_type_symbol = last_type_symbol; |
25570 return return_type_symbol; |
27025 return return_type_symbol; |
25571 |
27026 |
25593 |
27048 |
25594 { |
27049 { |
25595 symbol_c *IN1_type_symbol = param_data_type; |
27050 symbol_c *IN1_type_symbol = param_data_type; |
25596 last_type_symbol = param_data_type; |
27051 last_type_symbol = param_data_type; |
25597 |
27052 |
25598 if(search_expression_type->is_real_type(IN1_type_symbol)) |
27053 if(IN1_type_symbol == NULL || search_expression_type->is_real_type(IN1_type_symbol)) |
25599 { |
27054 { |
25600 |
27055 |
25601 { |
27056 { |
25602 identifier_c param_name("IN2"); |
27057 identifier_c param_name("IN2"); |
25603 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
27058 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
25604 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
27059 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
27060 symbol_c *IN2_type_symbol = NULL; |
25605 |
27061 |
25606 /* Get the value from a foo(<param_value>) style call */ |
27062 /* Get the value from a foo(<param_value>) style call */ |
25607 if (IN2_param_value == NULL) |
27063 if (IN2_param_value == NULL) |
25608 IN2_param_value = function_call_param_iterator.next(); |
27064 IN2_param_value = function_call_param_iterator.next(); |
25609 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
27065 if (IN2_param_value != NULL) { |
25610 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
27066 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
25611 |
27067 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
25612 if(search_expression_type->is_num_type(IN2_type_symbol)) |
27068 } |
|
27069 |
|
27070 if(IN2_type_symbol == NULL || search_expression_type->is_num_type(IN2_type_symbol)) |
25613 { |
27071 { |
25614 |
27072 |
25615 symbol_c * return_type_symbol = last_type_symbol; |
27073 symbol_c * return_type_symbol = last_type_symbol; |
25616 return return_type_symbol; |
27074 return return_type_symbol; |
25617 |
27075 |
25665 |
27123 |
25666 { |
27124 { |
25667 symbol_c *IN_type_symbol = param_data_type; |
27125 symbol_c *IN_type_symbol = param_data_type; |
25668 last_type_symbol = param_data_type; |
27126 last_type_symbol = param_data_type; |
25669 |
27127 |
25670 if(search_expression_type->is_binary_type(IN_type_symbol)) |
27128 if(IN_type_symbol == NULL || search_expression_type->is_binary_type(IN_type_symbol)) |
25671 { |
27129 { |
25672 |
27130 |
25673 { |
27131 { |
25674 identifier_c param_name("N"); |
27132 identifier_c param_name("N"); |
25675 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
27133 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
25676 symbol_c *N_param_value = function_call_param_iterator.search(¶m_name); |
27134 symbol_c *N_param_value = function_call_param_iterator.search(¶m_name); |
|
27135 symbol_c *N_type_symbol = NULL; |
25677 |
27136 |
25678 /* Get the value from a foo(<param_value>) style call */ |
27137 /* Get the value from a foo(<param_value>) style call */ |
25679 if (N_param_value == NULL) |
27138 if (N_param_value == NULL) |
25680 N_param_value = function_call_param_iterator.next(); |
27139 N_param_value = function_call_param_iterator.next(); |
25681 symbol_c *N_type_symbol = search_expression_type->get_type(N_param_value); |
27140 if (N_param_value != NULL) { |
25682 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(N_type_symbol, last_type_symbol) ? search_expression_type->common_type(N_type_symbol, last_type_symbol) : N_type_symbol ; |
27141 N_type_symbol = search_expression_type->get_type(N_param_value); |
25683 |
27142 last_type_symbol = last_type_symbol && N_type_symbol && search_expression_type->is_same_type(N_type_symbol, last_type_symbol) ? search_expression_type->common_type(N_type_symbol, last_type_symbol) : N_type_symbol ; |
25684 if(search_expression_type->is_integer_type(N_type_symbol)) |
27143 } |
|
27144 |
|
27145 if(N_type_symbol == NULL || search_expression_type->is_integer_type(N_type_symbol)) |
25685 { |
27146 { |
25686 |
27147 |
25687 symbol_c * return_type_symbol = IN_type_symbol; |
27148 symbol_c * return_type_symbol = IN_type_symbol; |
25688 return return_type_symbol; |
27149 return return_type_symbol; |
25689 |
27150 |
25711 |
27172 |
25712 { |
27173 { |
25713 symbol_c *IN_type_symbol = param_data_type; |
27174 symbol_c *IN_type_symbol = param_data_type; |
25714 last_type_symbol = param_data_type; |
27175 last_type_symbol = param_data_type; |
25715 |
27176 |
25716 if(search_expression_type->is_binary_type(IN_type_symbol)) |
27177 if(IN_type_symbol == NULL || search_expression_type->is_binary_type(IN_type_symbol)) |
25717 { |
27178 { |
25718 |
27179 |
25719 { |
27180 { |
25720 identifier_c param_name("N"); |
27181 identifier_c param_name("N"); |
25721 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
27182 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
25722 symbol_c *N_param_value = function_call_param_iterator.search(¶m_name); |
27183 symbol_c *N_param_value = function_call_param_iterator.search(¶m_name); |
|
27184 symbol_c *N_type_symbol = NULL; |
25723 |
27185 |
25724 /* Get the value from a foo(<param_value>) style call */ |
27186 /* Get the value from a foo(<param_value>) style call */ |
25725 if (N_param_value == NULL) |
27187 if (N_param_value == NULL) |
25726 N_param_value = function_call_param_iterator.next(); |
27188 N_param_value = function_call_param_iterator.next(); |
25727 symbol_c *N_type_symbol = search_expression_type->get_type(N_param_value); |
27189 if (N_param_value != NULL) { |
25728 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(N_type_symbol, last_type_symbol) ? search_expression_type->common_type(N_type_symbol, last_type_symbol) : N_type_symbol ; |
27190 N_type_symbol = search_expression_type->get_type(N_param_value); |
25729 |
27191 last_type_symbol = last_type_symbol && N_type_symbol && search_expression_type->is_same_type(N_type_symbol, last_type_symbol) ? search_expression_type->common_type(N_type_symbol, last_type_symbol) : N_type_symbol ; |
25730 if(search_expression_type->is_integer_type(N_type_symbol)) |
27192 } |
|
27193 |
|
27194 if(N_type_symbol == NULL || search_expression_type->is_integer_type(N_type_symbol)) |
25731 { |
27195 { |
25732 |
27196 |
25733 symbol_c * return_type_symbol = IN_type_symbol; |
27197 symbol_c * return_type_symbol = IN_type_symbol; |
25734 return return_type_symbol; |
27198 return return_type_symbol; |
25735 |
27199 |
25757 |
27221 |
25758 { |
27222 { |
25759 symbol_c *IN_type_symbol = param_data_type; |
27223 symbol_c *IN_type_symbol = param_data_type; |
25760 last_type_symbol = param_data_type; |
27224 last_type_symbol = param_data_type; |
25761 |
27225 |
25762 if(search_expression_type->is_nbinary_type(IN_type_symbol)) |
27226 if(IN_type_symbol == NULL || search_expression_type->is_nbinary_type(IN_type_symbol)) |
25763 { |
27227 { |
25764 |
27228 |
25765 { |
27229 { |
25766 identifier_c param_name("N"); |
27230 identifier_c param_name("N"); |
25767 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
27231 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
25768 symbol_c *N_param_value = function_call_param_iterator.search(¶m_name); |
27232 symbol_c *N_param_value = function_call_param_iterator.search(¶m_name); |
|
27233 symbol_c *N_type_symbol = NULL; |
25769 |
27234 |
25770 /* Get the value from a foo(<param_value>) style call */ |
27235 /* Get the value from a foo(<param_value>) style call */ |
25771 if (N_param_value == NULL) |
27236 if (N_param_value == NULL) |
25772 N_param_value = function_call_param_iterator.next(); |
27237 N_param_value = function_call_param_iterator.next(); |
25773 symbol_c *N_type_symbol = search_expression_type->get_type(N_param_value); |
27238 if (N_param_value != NULL) { |
25774 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(N_type_symbol, last_type_symbol) ? search_expression_type->common_type(N_type_symbol, last_type_symbol) : N_type_symbol ; |
27239 N_type_symbol = search_expression_type->get_type(N_param_value); |
25775 |
27240 last_type_symbol = last_type_symbol && N_type_symbol && search_expression_type->is_same_type(N_type_symbol, last_type_symbol) ? search_expression_type->common_type(N_type_symbol, last_type_symbol) : N_type_symbol ; |
25776 if(search_expression_type->is_integer_type(N_type_symbol)) |
27241 } |
|
27242 |
|
27243 if(N_type_symbol == NULL || search_expression_type->is_integer_type(N_type_symbol)) |
25777 { |
27244 { |
25778 |
27245 |
25779 symbol_c * return_type_symbol = IN_type_symbol; |
27246 symbol_c * return_type_symbol = IN_type_symbol; |
25780 return return_type_symbol; |
27247 return return_type_symbol; |
25781 |
27248 |
25803 |
27270 |
25804 { |
27271 { |
25805 symbol_c *IN_type_symbol = param_data_type; |
27272 symbol_c *IN_type_symbol = param_data_type; |
25806 last_type_symbol = param_data_type; |
27273 last_type_symbol = param_data_type; |
25807 |
27274 |
25808 if(search_expression_type->is_nbinary_type(IN_type_symbol)) |
27275 if(IN_type_symbol == NULL || search_expression_type->is_nbinary_type(IN_type_symbol)) |
25809 { |
27276 { |
25810 |
27277 |
25811 { |
27278 { |
25812 identifier_c param_name("N"); |
27279 identifier_c param_name("N"); |
25813 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
27280 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
25814 symbol_c *N_param_value = function_call_param_iterator.search(¶m_name); |
27281 symbol_c *N_param_value = function_call_param_iterator.search(¶m_name); |
|
27282 symbol_c *N_type_symbol = NULL; |
25815 |
27283 |
25816 /* Get the value from a foo(<param_value>) style call */ |
27284 /* Get the value from a foo(<param_value>) style call */ |
25817 if (N_param_value == NULL) |
27285 if (N_param_value == NULL) |
25818 N_param_value = function_call_param_iterator.next(); |
27286 N_param_value = function_call_param_iterator.next(); |
25819 symbol_c *N_type_symbol = search_expression_type->get_type(N_param_value); |
27287 if (N_param_value != NULL) { |
25820 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(N_type_symbol, last_type_symbol) ? search_expression_type->common_type(N_type_symbol, last_type_symbol) : N_type_symbol ; |
27288 N_type_symbol = search_expression_type->get_type(N_param_value); |
25821 |
27289 last_type_symbol = last_type_symbol && N_type_symbol && search_expression_type->is_same_type(N_type_symbol, last_type_symbol) ? search_expression_type->common_type(N_type_symbol, last_type_symbol) : N_type_symbol ; |
25822 if(search_expression_type->is_integer_type(N_type_symbol)) |
27290 } |
|
27291 |
|
27292 if(N_type_symbol == NULL || search_expression_type->is_integer_type(N_type_symbol)) |
25823 { |
27293 { |
25824 |
27294 |
25825 symbol_c * return_type_symbol = IN_type_symbol; |
27295 symbol_c * return_type_symbol = IN_type_symbol; |
25826 return return_type_symbol; |
27296 return return_type_symbol; |
25827 |
27297 |
25849 |
27319 |
25850 { |
27320 { |
25851 symbol_c *IN1_type_symbol = param_data_type; |
27321 symbol_c *IN1_type_symbol = param_data_type; |
25852 last_type_symbol = param_data_type; |
27322 last_type_symbol = param_data_type; |
25853 |
27323 |
25854 if(search_expression_type->is_binary_type(IN1_type_symbol)) |
27324 if(IN1_type_symbol == NULL || search_expression_type->is_binary_type(IN1_type_symbol)) |
25855 { |
27325 { |
25856 |
27326 |
25857 { |
27327 { |
25858 identifier_c param_name("IN2"); |
27328 identifier_c param_name("IN2"); |
25859 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
27329 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
25860 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
27330 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
27331 symbol_c *IN2_type_symbol = NULL; |
25861 |
27332 |
25862 /* Get the value from a foo(<param_value>) style call */ |
27333 /* Get the value from a foo(<param_value>) style call */ |
25863 if (IN2_param_value == NULL) |
27334 if (IN2_param_value == NULL) |
25864 IN2_param_value = function_call_param_iterator.next(); |
27335 IN2_param_value = function_call_param_iterator.next(); |
25865 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
27336 if (IN2_param_value != NULL) { |
25866 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
27337 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
25867 |
27338 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
25868 if(search_expression_type->is_binary_type(IN2_type_symbol)) |
27339 } |
|
27340 |
|
27341 if(IN2_type_symbol == NULL || search_expression_type->is_binary_type(IN2_type_symbol)) |
25869 { |
27342 { |
25870 |
27343 |
25871 symbol_c * return_type_symbol = last_type_symbol; |
27344 symbol_c * return_type_symbol = last_type_symbol; |
25872 return return_type_symbol; |
27345 return return_type_symbol; |
25873 |
27346 |
25895 |
27368 |
25896 { |
27369 { |
25897 symbol_c *IN1_type_symbol = param_data_type; |
27370 symbol_c *IN1_type_symbol = param_data_type; |
25898 last_type_symbol = param_data_type; |
27371 last_type_symbol = param_data_type; |
25899 |
27372 |
25900 if(search_expression_type->is_binary_type(IN1_type_symbol)) |
27373 if(IN1_type_symbol == NULL || search_expression_type->is_binary_type(IN1_type_symbol)) |
25901 { |
27374 { |
25902 |
27375 |
25903 { |
27376 { |
25904 identifier_c param_name("IN2"); |
27377 identifier_c param_name("IN2"); |
25905 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
27378 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
25906 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
27379 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
27380 symbol_c *IN2_type_symbol = NULL; |
25907 |
27381 |
25908 /* Get the value from a foo(<param_value>) style call */ |
27382 /* Get the value from a foo(<param_value>) style call */ |
25909 if (IN2_param_value == NULL) |
27383 if (IN2_param_value == NULL) |
25910 IN2_param_value = function_call_param_iterator.next(); |
27384 IN2_param_value = function_call_param_iterator.next(); |
25911 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
27385 if (IN2_param_value != NULL) { |
25912 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
27386 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
25913 |
27387 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
25914 if(search_expression_type->is_binary_type(IN2_type_symbol)) |
27388 } |
|
27389 |
|
27390 if(IN2_type_symbol == NULL || search_expression_type->is_binary_type(IN2_type_symbol)) |
25915 { |
27391 { |
25916 |
27392 |
25917 symbol_c * return_type_symbol = last_type_symbol; |
27393 symbol_c * return_type_symbol = last_type_symbol; |
25918 return return_type_symbol; |
27394 return return_type_symbol; |
25919 |
27395 |
25941 |
27417 |
25942 { |
27418 { |
25943 symbol_c *IN1_type_symbol = param_data_type; |
27419 symbol_c *IN1_type_symbol = param_data_type; |
25944 last_type_symbol = param_data_type; |
27420 last_type_symbol = param_data_type; |
25945 |
27421 |
25946 if(search_expression_type->is_binary_type(IN1_type_symbol)) |
27422 if(IN1_type_symbol == NULL || search_expression_type->is_binary_type(IN1_type_symbol)) |
25947 { |
27423 { |
25948 |
27424 |
25949 { |
27425 { |
25950 identifier_c param_name("IN2"); |
27426 identifier_c param_name("IN2"); |
25951 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
27427 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
25952 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
27428 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
27429 symbol_c *IN2_type_symbol = NULL; |
25953 |
27430 |
25954 /* Get the value from a foo(<param_value>) style call */ |
27431 /* Get the value from a foo(<param_value>) style call */ |
25955 if (IN2_param_value == NULL) |
27432 if (IN2_param_value == NULL) |
25956 IN2_param_value = function_call_param_iterator.next(); |
27433 IN2_param_value = function_call_param_iterator.next(); |
25957 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
27434 if (IN2_param_value != NULL) { |
25958 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
27435 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
25959 |
27436 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
25960 if(search_expression_type->is_binary_type(IN2_type_symbol)) |
27437 } |
|
27438 |
|
27439 if(IN2_type_symbol == NULL || search_expression_type->is_binary_type(IN2_type_symbol)) |
25961 { |
27440 { |
25962 |
27441 |
25963 symbol_c * return_type_symbol = last_type_symbol; |
27442 symbol_c * return_type_symbol = last_type_symbol; |
25964 return return_type_symbol; |
27443 return return_type_symbol; |
25965 |
27444 |
26013 |
27492 |
26014 { |
27493 { |
26015 symbol_c *G_type_symbol = param_data_type; |
27494 symbol_c *G_type_symbol = param_data_type; |
26016 last_type_symbol = param_data_type; |
27495 last_type_symbol = param_data_type; |
26017 |
27496 |
26018 if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol)) |
27497 if(G_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol)) |
26019 { |
27498 { |
26020 |
27499 |
26021 { |
27500 { |
26022 identifier_c param_name("IN0"); |
27501 identifier_c param_name("IN0"); |
26023 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
27502 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
26024 symbol_c *IN0_param_value = function_call_param_iterator.search(¶m_name); |
27503 symbol_c *IN0_param_value = function_call_param_iterator.search(¶m_name); |
|
27504 symbol_c *IN0_type_symbol = NULL; |
26025 |
27505 |
26026 /* Get the value from a foo(<param_value>) style call */ |
27506 /* Get the value from a foo(<param_value>) style call */ |
26027 if (IN0_param_value == NULL) |
27507 if (IN0_param_value == NULL) |
26028 IN0_param_value = function_call_param_iterator.next(); |
27508 IN0_param_value = function_call_param_iterator.next(); |
26029 symbol_c *IN0_type_symbol = search_expression_type->get_type(IN0_param_value); |
27509 if (IN0_param_value != NULL) { |
26030 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN0_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN0_type_symbol, last_type_symbol) : IN0_type_symbol ; |
27510 IN0_type_symbol = search_expression_type->get_type(IN0_param_value); |
|
27511 last_type_symbol = last_type_symbol && IN0_type_symbol && search_expression_type->is_same_type(IN0_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN0_type_symbol, last_type_symbol) : IN0_type_symbol ; |
|
27512 } |
26031 |
27513 |
26032 |
27514 |
26033 { |
27515 { |
26034 |
27516 |
26035 { |
27517 { |
26036 identifier_c param_name("IN1"); |
27518 identifier_c param_name("IN1"); |
26037 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
27519 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
26038 symbol_c *IN1_param_value = function_call_param_iterator.search(¶m_name); |
27520 symbol_c *IN1_param_value = function_call_param_iterator.search(¶m_name); |
|
27521 symbol_c *IN1_type_symbol = NULL; |
26039 |
27522 |
26040 /* Get the value from a foo(<param_value>) style call */ |
27523 /* Get the value from a foo(<param_value>) style call */ |
26041 if (IN1_param_value == NULL) |
27524 if (IN1_param_value == NULL) |
26042 IN1_param_value = function_call_param_iterator.next(); |
27525 IN1_param_value = function_call_param_iterator.next(); |
26043 symbol_c *IN1_type_symbol = search_expression_type->get_type(IN1_param_value); |
27526 if (IN1_param_value != NULL) { |
26044 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN1_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN1_type_symbol, last_type_symbol) : IN1_type_symbol ; |
27527 IN1_type_symbol = search_expression_type->get_type(IN1_param_value); |
|
27528 last_type_symbol = last_type_symbol && IN1_type_symbol && search_expression_type->is_same_type(IN1_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN1_type_symbol, last_type_symbol) : IN1_type_symbol ; |
|
27529 } |
26045 |
27530 |
26046 |
27531 |
26047 { |
27532 { |
26048 |
27533 |
26049 symbol_c * return_type_symbol = last_type_symbol; |
27534 symbol_c * return_type_symbol = last_type_symbol; |
26086 |
27571 |
26087 { |
27572 { |
26088 identifier_c param_name("IN2"); |
27573 identifier_c param_name("IN2"); |
26089 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
27574 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
26090 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
27575 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
27576 symbol_c *IN2_type_symbol = NULL; |
26091 |
27577 |
26092 /* Get the value from a foo(<param_value>) style call */ |
27578 /* Get the value from a foo(<param_value>) style call */ |
26093 if (IN2_param_value == NULL) |
27579 if (IN2_param_value == NULL) |
26094 IN2_param_value = function_call_param_iterator.next(); |
27580 IN2_param_value = function_call_param_iterator.next(); |
26095 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
27581 if (IN2_param_value != NULL) { |
26096 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
27582 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
|
27583 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
|
27584 } |
26097 |
27585 |
26098 |
27586 |
26099 { |
27587 { |
26100 |
27588 |
26101 symbol_c * return_type_symbol = last_type_symbol; |
27589 symbol_c * return_type_symbol = last_type_symbol; |
26132 |
27620 |
26133 { |
27621 { |
26134 identifier_c param_name("IN2"); |
27622 identifier_c param_name("IN2"); |
26135 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
27623 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
26136 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
27624 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
27625 symbol_c *IN2_type_symbol = NULL; |
26137 |
27626 |
26138 /* Get the value from a foo(<param_value>) style call */ |
27627 /* Get the value from a foo(<param_value>) style call */ |
26139 if (IN2_param_value == NULL) |
27628 if (IN2_param_value == NULL) |
26140 IN2_param_value = function_call_param_iterator.next(); |
27629 IN2_param_value = function_call_param_iterator.next(); |
26141 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
27630 if (IN2_param_value != NULL) { |
26142 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
27631 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
|
27632 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
|
27633 } |
26143 |
27634 |
26144 |
27635 |
26145 { |
27636 { |
26146 |
27637 |
26147 symbol_c * return_type_symbol = last_type_symbol; |
27638 symbol_c * return_type_symbol = last_type_symbol; |
26178 |
27669 |
26179 { |
27670 { |
26180 identifier_c param_name("IN"); |
27671 identifier_c param_name("IN"); |
26181 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
27672 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
26182 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
27673 symbol_c *IN_param_value = function_call_param_iterator.search(¶m_name); |
|
27674 symbol_c *IN_type_symbol = NULL; |
26183 |
27675 |
26184 /* Get the value from a foo(<param_value>) style call */ |
27676 /* Get the value from a foo(<param_value>) style call */ |
26185 if (IN_param_value == NULL) |
27677 if (IN_param_value == NULL) |
26186 IN_param_value = function_call_param_iterator.next(); |
27678 IN_param_value = function_call_param_iterator.next(); |
26187 symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value); |
27679 if (IN_param_value != NULL) { |
26188 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
27680 IN_type_symbol = search_expression_type->get_type(IN_param_value); |
|
27681 last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ; |
|
27682 } |
26189 |
27683 |
26190 |
27684 |
26191 { |
27685 { |
26192 |
27686 |
26193 { |
27687 { |
26194 identifier_c param_name("MX"); |
27688 identifier_c param_name("MX"); |
26195 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
27689 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
26196 symbol_c *MX_param_value = function_call_param_iterator.search(¶m_name); |
27690 symbol_c *MX_param_value = function_call_param_iterator.search(¶m_name); |
|
27691 symbol_c *MX_type_symbol = NULL; |
26197 |
27692 |
26198 /* Get the value from a foo(<param_value>) style call */ |
27693 /* Get the value from a foo(<param_value>) style call */ |
26199 if (MX_param_value == NULL) |
27694 if (MX_param_value == NULL) |
26200 MX_param_value = function_call_param_iterator.next(); |
27695 MX_param_value = function_call_param_iterator.next(); |
26201 symbol_c *MX_type_symbol = search_expression_type->get_type(MX_param_value); |
27696 if (MX_param_value != NULL) { |
26202 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(MX_type_symbol, last_type_symbol) ? search_expression_type->common_type(MX_type_symbol, last_type_symbol) : MX_type_symbol ; |
27697 MX_type_symbol = search_expression_type->get_type(MX_param_value); |
|
27698 last_type_symbol = last_type_symbol && MX_type_symbol && search_expression_type->is_same_type(MX_type_symbol, last_type_symbol) ? search_expression_type->common_type(MX_type_symbol, last_type_symbol) : MX_type_symbol ; |
|
27699 } |
26203 |
27700 |
26204 |
27701 |
26205 { |
27702 { |
26206 |
27703 |
26207 symbol_c * return_type_symbol = IN_type_symbol; |
27704 symbol_c * return_type_symbol = IN_type_symbol; |
26237 |
27734 |
26238 { |
27735 { |
26239 symbol_c *K_type_symbol = param_data_type; |
27736 symbol_c *K_type_symbol = param_data_type; |
26240 last_type_symbol = param_data_type; |
27737 last_type_symbol = param_data_type; |
26241 |
27738 |
26242 if(search_expression_type->is_integer_type(K_type_symbol)) |
27739 if(K_type_symbol == NULL || search_expression_type->is_integer_type(K_type_symbol)) |
26243 { |
27740 { |
26244 |
27741 |
26245 { |
27742 { |
26246 identifier_c param_name("IN0"); |
27743 identifier_c param_name("IN0"); |
26247 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
27744 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
26248 symbol_c *IN0_param_value = function_call_param_iterator.search(¶m_name); |
27745 symbol_c *IN0_param_value = function_call_param_iterator.search(¶m_name); |
|
27746 symbol_c *IN0_type_symbol = NULL; |
26249 |
27747 |
26250 /* Get the value from a foo(<param_value>) style call */ |
27748 /* Get the value from a foo(<param_value>) style call */ |
26251 if (IN0_param_value == NULL) |
27749 if (IN0_param_value == NULL) |
26252 IN0_param_value = function_call_param_iterator.next(); |
27750 IN0_param_value = function_call_param_iterator.next(); |
26253 symbol_c *IN0_type_symbol = search_expression_type->get_type(IN0_param_value); |
27751 if (IN0_param_value != NULL) { |
26254 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN0_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN0_type_symbol, last_type_symbol) : IN0_type_symbol ; |
27752 IN0_type_symbol = search_expression_type->get_type(IN0_param_value); |
|
27753 last_type_symbol = last_type_symbol && IN0_type_symbol && search_expression_type->is_same_type(IN0_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN0_type_symbol, last_type_symbol) : IN0_type_symbol ; |
|
27754 } |
26255 |
27755 |
26256 |
27756 |
26257 { |
27757 { |
26258 |
27758 |
26259 { |
27759 { |
26260 identifier_c param_name("IN1"); |
27760 identifier_c param_name("IN1"); |
26261 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
27761 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
26262 symbol_c *IN1_param_value = function_call_param_iterator.search(¶m_name); |
27762 symbol_c *IN1_param_value = function_call_param_iterator.search(¶m_name); |
|
27763 symbol_c *IN1_type_symbol = NULL; |
26263 |
27764 |
26264 /* Get the value from a foo(<param_value>) style call */ |
27765 /* Get the value from a foo(<param_value>) style call */ |
26265 if (IN1_param_value == NULL) |
27766 if (IN1_param_value == NULL) |
26266 IN1_param_value = function_call_param_iterator.next(); |
27767 IN1_param_value = function_call_param_iterator.next(); |
26267 symbol_c *IN1_type_symbol = search_expression_type->get_type(IN1_param_value); |
27768 if (IN1_param_value != NULL) { |
26268 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN1_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN1_type_symbol, last_type_symbol) : IN1_type_symbol ; |
27769 IN1_type_symbol = search_expression_type->get_type(IN1_param_value); |
|
27770 last_type_symbol = last_type_symbol && IN1_type_symbol && search_expression_type->is_same_type(IN1_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN1_type_symbol, last_type_symbol) : IN1_type_symbol ; |
|
27771 } |
26269 |
27772 |
26270 |
27773 |
26271 { |
27774 { |
26272 |
27775 |
26273 symbol_c * return_type_symbol = last_type_symbol; |
27776 symbol_c * return_type_symbol = last_type_symbol; |
26310 |
27813 |
26311 { |
27814 { |
26312 identifier_c param_name("IN2"); |
27815 identifier_c param_name("IN2"); |
26313 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
27816 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
26314 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
27817 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
27818 symbol_c *IN2_type_symbol = NULL; |
26315 |
27819 |
26316 /* Get the value from a foo(<param_value>) style call */ |
27820 /* Get the value from a foo(<param_value>) style call */ |
26317 if (IN2_param_value == NULL) |
27821 if (IN2_param_value == NULL) |
26318 IN2_param_value = function_call_param_iterator.next(); |
27822 IN2_param_value = function_call_param_iterator.next(); |
26319 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
27823 if (IN2_param_value != NULL) { |
26320 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
27824 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
|
27825 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
|
27826 } |
26321 |
27827 |
26322 |
27828 |
26323 { |
27829 { |
26324 |
27830 |
26325 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name; |
27831 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name; |
26356 |
27862 |
26357 { |
27863 { |
26358 identifier_c param_name("IN2"); |
27864 identifier_c param_name("IN2"); |
26359 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
27865 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
26360 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
27866 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
27867 symbol_c *IN2_type_symbol = NULL; |
26361 |
27868 |
26362 /* Get the value from a foo(<param_value>) style call */ |
27869 /* Get the value from a foo(<param_value>) style call */ |
26363 if (IN2_param_value == NULL) |
27870 if (IN2_param_value == NULL) |
26364 IN2_param_value = function_call_param_iterator.next(); |
27871 IN2_param_value = function_call_param_iterator.next(); |
26365 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
27872 if (IN2_param_value != NULL) { |
26366 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
27873 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
|
27874 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
|
27875 } |
26367 |
27876 |
26368 |
27877 |
26369 { |
27878 { |
26370 |
27879 |
26371 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name; |
27880 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name; |
26402 |
27911 |
26403 { |
27912 { |
26404 identifier_c param_name("IN2"); |
27913 identifier_c param_name("IN2"); |
26405 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
27914 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
26406 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
27915 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
27916 symbol_c *IN2_type_symbol = NULL; |
26407 |
27917 |
26408 /* Get the value from a foo(<param_value>) style call */ |
27918 /* Get the value from a foo(<param_value>) style call */ |
26409 if (IN2_param_value == NULL) |
27919 if (IN2_param_value == NULL) |
26410 IN2_param_value = function_call_param_iterator.next(); |
27920 IN2_param_value = function_call_param_iterator.next(); |
26411 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
27921 if (IN2_param_value != NULL) { |
26412 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
27922 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
|
27923 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
|
27924 } |
26413 |
27925 |
26414 |
27926 |
26415 { |
27927 { |
26416 |
27928 |
26417 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name; |
27929 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name; |
26448 |
27960 |
26449 { |
27961 { |
26450 identifier_c param_name("IN2"); |
27962 identifier_c param_name("IN2"); |
26451 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
27963 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
26452 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
27964 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
27965 symbol_c *IN2_type_symbol = NULL; |
26453 |
27966 |
26454 /* Get the value from a foo(<param_value>) style call */ |
27967 /* Get the value from a foo(<param_value>) style call */ |
26455 if (IN2_param_value == NULL) |
27968 if (IN2_param_value == NULL) |
26456 IN2_param_value = function_call_param_iterator.next(); |
27969 IN2_param_value = function_call_param_iterator.next(); |
26457 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
27970 if (IN2_param_value != NULL) { |
26458 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
27971 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
|
27972 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
|
27973 } |
26459 |
27974 |
26460 |
27975 |
26461 { |
27976 { |
26462 |
27977 |
26463 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name; |
27978 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name; |
26494 |
28009 |
26495 { |
28010 { |
26496 identifier_c param_name("IN2"); |
28011 identifier_c param_name("IN2"); |
26497 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
28012 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
26498 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
28013 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
28014 symbol_c *IN2_type_symbol = NULL; |
26499 |
28015 |
26500 /* Get the value from a foo(<param_value>) style call */ |
28016 /* Get the value from a foo(<param_value>) style call */ |
26501 if (IN2_param_value == NULL) |
28017 if (IN2_param_value == NULL) |
26502 IN2_param_value = function_call_param_iterator.next(); |
28018 IN2_param_value = function_call_param_iterator.next(); |
26503 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
28019 if (IN2_param_value != NULL) { |
26504 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
28020 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
|
28021 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
|
28022 } |
26505 |
28023 |
26506 |
28024 |
26507 { |
28025 { |
26508 |
28026 |
26509 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name; |
28027 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name; |
26540 |
28058 |
26541 { |
28059 { |
26542 identifier_c param_name("IN2"); |
28060 identifier_c param_name("IN2"); |
26543 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
28061 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
26544 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
28062 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
28063 symbol_c *IN2_type_symbol = NULL; |
26545 |
28064 |
26546 /* Get the value from a foo(<param_value>) style call */ |
28065 /* Get the value from a foo(<param_value>) style call */ |
26547 if (IN2_param_value == NULL) |
28066 if (IN2_param_value == NULL) |
26548 IN2_param_value = function_call_param_iterator.next(); |
28067 IN2_param_value = function_call_param_iterator.next(); |
26549 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
28068 if (IN2_param_value != NULL) { |
26550 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
28069 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
|
28070 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
|
28071 } |
26551 |
28072 |
26552 |
28073 |
26553 { |
28074 { |
26554 |
28075 |
26555 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name; |
28076 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name; |
26605 |
28126 |
26606 { |
28127 { |
26607 symbol_c *IN_type_symbol = param_data_type; |
28128 symbol_c *IN_type_symbol = param_data_type; |
26608 last_type_symbol = param_data_type; |
28129 last_type_symbol = param_data_type; |
26609 |
28130 |
26610 if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
28131 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
26611 { |
28132 { |
26612 |
28133 |
26613 { |
28134 { |
26614 identifier_c param_name("L"); |
28135 identifier_c param_name("L"); |
26615 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
28136 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
26616 symbol_c *L_param_value = function_call_param_iterator.search(¶m_name); |
28137 symbol_c *L_param_value = function_call_param_iterator.search(¶m_name); |
|
28138 symbol_c *L_type_symbol = NULL; |
26617 |
28139 |
26618 /* Get the value from a foo(<param_value>) style call */ |
28140 /* Get the value from a foo(<param_value>) style call */ |
26619 if (L_param_value == NULL) |
28141 if (L_param_value == NULL) |
26620 L_param_value = function_call_param_iterator.next(); |
28142 L_param_value = function_call_param_iterator.next(); |
26621 symbol_c *L_type_symbol = search_expression_type->get_type(L_param_value); |
28143 if (L_param_value != NULL) { |
26622 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(L_type_symbol, last_type_symbol) ? search_expression_type->common_type(L_type_symbol, last_type_symbol) : L_type_symbol ; |
28144 L_type_symbol = search_expression_type->get_type(L_param_value); |
26623 |
28145 last_type_symbol = last_type_symbol && L_type_symbol && search_expression_type->is_same_type(L_type_symbol, last_type_symbol) ? search_expression_type->common_type(L_type_symbol, last_type_symbol) : L_type_symbol ; |
26624 if(search_expression_type->is_integer_type(L_type_symbol)) |
28146 } |
|
28147 |
|
28148 if(L_type_symbol == NULL || search_expression_type->is_integer_type(L_type_symbol)) |
26625 { |
28149 { |
26626 |
28150 |
26627 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
28151 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
26628 return return_type_symbol; |
28152 return return_type_symbol; |
26629 |
28153 |
26651 |
28175 |
26652 { |
28176 { |
26653 symbol_c *IN_type_symbol = param_data_type; |
28177 symbol_c *IN_type_symbol = param_data_type; |
26654 last_type_symbol = param_data_type; |
28178 last_type_symbol = param_data_type; |
26655 |
28179 |
26656 if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
28180 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
26657 { |
28181 { |
26658 |
28182 |
26659 { |
28183 { |
26660 identifier_c param_name("L"); |
28184 identifier_c param_name("L"); |
26661 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
28185 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
26662 symbol_c *L_param_value = function_call_param_iterator.search(¶m_name); |
28186 symbol_c *L_param_value = function_call_param_iterator.search(¶m_name); |
|
28187 symbol_c *L_type_symbol = NULL; |
26663 |
28188 |
26664 /* Get the value from a foo(<param_value>) style call */ |
28189 /* Get the value from a foo(<param_value>) style call */ |
26665 if (L_param_value == NULL) |
28190 if (L_param_value == NULL) |
26666 L_param_value = function_call_param_iterator.next(); |
28191 L_param_value = function_call_param_iterator.next(); |
26667 symbol_c *L_type_symbol = search_expression_type->get_type(L_param_value); |
28192 if (L_param_value != NULL) { |
26668 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(L_type_symbol, last_type_symbol) ? search_expression_type->common_type(L_type_symbol, last_type_symbol) : L_type_symbol ; |
28193 L_type_symbol = search_expression_type->get_type(L_param_value); |
26669 |
28194 last_type_symbol = last_type_symbol && L_type_symbol && search_expression_type->is_same_type(L_type_symbol, last_type_symbol) ? search_expression_type->common_type(L_type_symbol, last_type_symbol) : L_type_symbol ; |
26670 if(search_expression_type->is_integer_type(L_type_symbol)) |
28195 } |
|
28196 |
|
28197 if(L_type_symbol == NULL || search_expression_type->is_integer_type(L_type_symbol)) |
26671 { |
28198 { |
26672 |
28199 |
26673 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
28200 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
26674 return return_type_symbol; |
28201 return return_type_symbol; |
26675 |
28202 |
26697 |
28224 |
26698 { |
28225 { |
26699 symbol_c *IN_type_symbol = param_data_type; |
28226 symbol_c *IN_type_symbol = param_data_type; |
26700 last_type_symbol = param_data_type; |
28227 last_type_symbol = param_data_type; |
26701 |
28228 |
26702 if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
28229 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
26703 { |
28230 { |
26704 |
28231 |
26705 { |
28232 { |
26706 identifier_c param_name("L"); |
28233 identifier_c param_name("L"); |
26707 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
28234 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
26708 symbol_c *L_param_value = function_call_param_iterator.search(¶m_name); |
28235 symbol_c *L_param_value = function_call_param_iterator.search(¶m_name); |
|
28236 symbol_c *L_type_symbol = NULL; |
26709 |
28237 |
26710 /* Get the value from a foo(<param_value>) style call */ |
28238 /* Get the value from a foo(<param_value>) style call */ |
26711 if (L_param_value == NULL) |
28239 if (L_param_value == NULL) |
26712 L_param_value = function_call_param_iterator.next(); |
28240 L_param_value = function_call_param_iterator.next(); |
26713 symbol_c *L_type_symbol = search_expression_type->get_type(L_param_value); |
28241 if (L_param_value != NULL) { |
26714 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(L_type_symbol, last_type_symbol) ? search_expression_type->common_type(L_type_symbol, last_type_symbol) : L_type_symbol ; |
28242 L_type_symbol = search_expression_type->get_type(L_param_value); |
26715 |
28243 last_type_symbol = last_type_symbol && L_type_symbol && search_expression_type->is_same_type(L_type_symbol, last_type_symbol) ? search_expression_type->common_type(L_type_symbol, last_type_symbol) : L_type_symbol ; |
26716 if(search_expression_type->is_integer_type(L_type_symbol)) |
28244 } |
|
28245 |
|
28246 if(L_type_symbol == NULL || search_expression_type->is_integer_type(L_type_symbol)) |
26717 { |
28247 { |
26718 |
28248 |
26719 { |
28249 { |
26720 identifier_c param_name("P"); |
28250 identifier_c param_name("P"); |
26721 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
28251 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
26722 symbol_c *P_param_value = function_call_param_iterator.search(¶m_name); |
28252 symbol_c *P_param_value = function_call_param_iterator.search(¶m_name); |
|
28253 symbol_c *P_type_symbol = NULL; |
26723 |
28254 |
26724 /* Get the value from a foo(<param_value>) style call */ |
28255 /* Get the value from a foo(<param_value>) style call */ |
26725 if (P_param_value == NULL) |
28256 if (P_param_value == NULL) |
26726 P_param_value = function_call_param_iterator.next(); |
28257 P_param_value = function_call_param_iterator.next(); |
26727 symbol_c *P_type_symbol = search_expression_type->get_type(P_param_value); |
28258 if (P_param_value != NULL) { |
26728 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(P_type_symbol, last_type_symbol) ? search_expression_type->common_type(P_type_symbol, last_type_symbol) : P_type_symbol ; |
28259 P_type_symbol = search_expression_type->get_type(P_param_value); |
|
28260 last_type_symbol = last_type_symbol && P_type_symbol && search_expression_type->is_same_type(P_type_symbol, last_type_symbol) ? search_expression_type->common_type(P_type_symbol, last_type_symbol) : P_type_symbol ; |
|
28261 } |
26729 |
28262 |
26730 if(search_expression_type->is_integer_type(P_type_symbol)) |
28263 if(P_type_symbol == NULL || search_expression_type->is_integer_type(P_type_symbol)) |
26731 { |
28264 { |
26732 |
28265 |
26733 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
28266 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
26734 return return_type_symbol; |
28267 return return_type_symbol; |
26735 |
28268 |
26763 |
28296 |
26764 { |
28297 { |
26765 symbol_c *IN1_type_symbol = param_data_type; |
28298 symbol_c *IN1_type_symbol = param_data_type; |
26766 last_type_symbol = param_data_type; |
28299 last_type_symbol = param_data_type; |
26767 |
28300 |
26768 if(search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol)) |
28301 if(IN1_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol)) |
26769 { |
28302 { |
26770 |
28303 |
26771 { |
28304 { |
26772 identifier_c param_name("IN2"); |
28305 identifier_c param_name("IN2"); |
26773 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
28306 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
26774 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
28307 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
28308 symbol_c *IN2_type_symbol = NULL; |
26775 |
28309 |
26776 /* Get the value from a foo(<param_value>) style call */ |
28310 /* Get the value from a foo(<param_value>) style call */ |
26777 if (IN2_param_value == NULL) |
28311 if (IN2_param_value == NULL) |
26778 IN2_param_value = function_call_param_iterator.next(); |
28312 IN2_param_value = function_call_param_iterator.next(); |
26779 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
28313 if (IN2_param_value != NULL) { |
26780 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
28314 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
26781 |
28315 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
26782 if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol)) |
28316 } |
|
28317 |
|
28318 if(IN2_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol)) |
26783 { |
28319 { |
26784 |
28320 |
26785 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name; |
28321 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name; |
26786 return return_type_symbol; |
28322 return return_type_symbol; |
26787 |
28323 |
26791 ERROR; |
28327 ERROR; |
26792 } |
28328 } |
26793 |
28329 |
26794 } |
28330 } |
26795 |
28331 |
26796 if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
28332 if(IN1_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
26797 { |
28333 { |
26798 |
28334 |
26799 { |
28335 { |
26800 identifier_c param_name("IN2"); |
28336 identifier_c param_name("IN2"); |
26801 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
28337 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
26802 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
28338 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
28339 symbol_c *IN2_type_symbol = NULL; |
26803 |
28340 |
26804 /* Get the value from a foo(<param_value>) style call */ |
28341 /* Get the value from a foo(<param_value>) style call */ |
26805 if (IN2_param_value == NULL) |
28342 if (IN2_param_value == NULL) |
26806 IN2_param_value = function_call_param_iterator.next(); |
28343 IN2_param_value = function_call_param_iterator.next(); |
26807 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
28344 if (IN2_param_value != NULL) { |
26808 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
28345 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
26809 |
28346 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
26810 if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
28347 } |
|
28348 |
|
28349 if(IN2_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
26811 { |
28350 { |
26812 |
28351 |
26813 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
28352 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
26814 return return_type_symbol; |
28353 return return_type_symbol; |
26815 |
28354 |
26837 |
28376 |
26838 { |
28377 { |
26839 symbol_c *IN1_type_symbol = param_data_type; |
28378 symbol_c *IN1_type_symbol = param_data_type; |
26840 last_type_symbol = param_data_type; |
28379 last_type_symbol = param_data_type; |
26841 |
28380 |
26842 if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
28381 if(IN1_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
26843 { |
28382 { |
26844 |
28383 |
26845 { |
28384 { |
26846 identifier_c param_name("IN2"); |
28385 identifier_c param_name("IN2"); |
26847 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
28386 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
26848 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
28387 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
28388 symbol_c *IN2_type_symbol = NULL; |
26849 |
28389 |
26850 /* Get the value from a foo(<param_value>) style call */ |
28390 /* Get the value from a foo(<param_value>) style call */ |
26851 if (IN2_param_value == NULL) |
28391 if (IN2_param_value == NULL) |
26852 IN2_param_value = function_call_param_iterator.next(); |
28392 IN2_param_value = function_call_param_iterator.next(); |
26853 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
28393 if (IN2_param_value != NULL) { |
26854 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
28394 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
26855 |
28395 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
26856 if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
28396 } |
|
28397 |
|
28398 if(IN2_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
26857 { |
28399 { |
26858 |
28400 |
26859 { |
28401 { |
26860 identifier_c param_name("P"); |
28402 identifier_c param_name("P"); |
26861 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
28403 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
26862 symbol_c *P_param_value = function_call_param_iterator.search(¶m_name); |
28404 symbol_c *P_param_value = function_call_param_iterator.search(¶m_name); |
|
28405 symbol_c *P_type_symbol = NULL; |
26863 |
28406 |
26864 /* Get the value from a foo(<param_value>) style call */ |
28407 /* Get the value from a foo(<param_value>) style call */ |
26865 if (P_param_value == NULL) |
28408 if (P_param_value == NULL) |
26866 P_param_value = function_call_param_iterator.next(); |
28409 P_param_value = function_call_param_iterator.next(); |
26867 symbol_c *P_type_symbol = search_expression_type->get_type(P_param_value); |
28410 if (P_param_value != NULL) { |
26868 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(P_type_symbol, last_type_symbol) ? search_expression_type->common_type(P_type_symbol, last_type_symbol) : P_type_symbol ; |
28411 P_type_symbol = search_expression_type->get_type(P_param_value); |
|
28412 last_type_symbol = last_type_symbol && P_type_symbol && search_expression_type->is_same_type(P_type_symbol, last_type_symbol) ? search_expression_type->common_type(P_type_symbol, last_type_symbol) : P_type_symbol ; |
|
28413 } |
26869 |
28414 |
26870 if(search_expression_type->is_integer_type(P_type_symbol)) |
28415 if(P_type_symbol == NULL || search_expression_type->is_integer_type(P_type_symbol)) |
26871 { |
28416 { |
26872 |
28417 |
26873 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
28418 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
26874 return return_type_symbol; |
28419 return return_type_symbol; |
26875 |
28420 |
26903 |
28448 |
26904 { |
28449 { |
26905 symbol_c *IN_type_symbol = param_data_type; |
28450 symbol_c *IN_type_symbol = param_data_type; |
26906 last_type_symbol = param_data_type; |
28451 last_type_symbol = param_data_type; |
26907 |
28452 |
26908 if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
28453 if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
26909 { |
28454 { |
26910 |
28455 |
26911 { |
28456 { |
26912 identifier_c param_name("L"); |
28457 identifier_c param_name("L"); |
26913 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
28458 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
26914 symbol_c *L_param_value = function_call_param_iterator.search(¶m_name); |
28459 symbol_c *L_param_value = function_call_param_iterator.search(¶m_name); |
|
28460 symbol_c *L_type_symbol = NULL; |
26915 |
28461 |
26916 /* Get the value from a foo(<param_value>) style call */ |
28462 /* Get the value from a foo(<param_value>) style call */ |
26917 if (L_param_value == NULL) |
28463 if (L_param_value == NULL) |
26918 L_param_value = function_call_param_iterator.next(); |
28464 L_param_value = function_call_param_iterator.next(); |
26919 symbol_c *L_type_symbol = search_expression_type->get_type(L_param_value); |
28465 if (L_param_value != NULL) { |
26920 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(L_type_symbol, last_type_symbol) ? search_expression_type->common_type(L_type_symbol, last_type_symbol) : L_type_symbol ; |
28466 L_type_symbol = search_expression_type->get_type(L_param_value); |
26921 |
28467 last_type_symbol = last_type_symbol && L_type_symbol && search_expression_type->is_same_type(L_type_symbol, last_type_symbol) ? search_expression_type->common_type(L_type_symbol, last_type_symbol) : L_type_symbol ; |
26922 if(search_expression_type->is_integer_type(L_type_symbol)) |
28468 } |
|
28469 |
|
28470 if(L_type_symbol == NULL || search_expression_type->is_integer_type(L_type_symbol)) |
26923 { |
28471 { |
26924 |
28472 |
26925 { |
28473 { |
26926 identifier_c param_name("P"); |
28474 identifier_c param_name("P"); |
26927 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
28475 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
26928 symbol_c *P_param_value = function_call_param_iterator.search(¶m_name); |
28476 symbol_c *P_param_value = function_call_param_iterator.search(¶m_name); |
|
28477 symbol_c *P_type_symbol = NULL; |
26929 |
28478 |
26930 /* Get the value from a foo(<param_value>) style call */ |
28479 /* Get the value from a foo(<param_value>) style call */ |
26931 if (P_param_value == NULL) |
28480 if (P_param_value == NULL) |
26932 P_param_value = function_call_param_iterator.next(); |
28481 P_param_value = function_call_param_iterator.next(); |
26933 symbol_c *P_type_symbol = search_expression_type->get_type(P_param_value); |
28482 if (P_param_value != NULL) { |
26934 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(P_type_symbol, last_type_symbol) ? search_expression_type->common_type(P_type_symbol, last_type_symbol) : P_type_symbol ; |
28483 P_type_symbol = search_expression_type->get_type(P_param_value); |
|
28484 last_type_symbol = last_type_symbol && P_type_symbol && search_expression_type->is_same_type(P_type_symbol, last_type_symbol) ? search_expression_type->common_type(P_type_symbol, last_type_symbol) : P_type_symbol ; |
|
28485 } |
26935 |
28486 |
26936 if(search_expression_type->is_integer_type(P_type_symbol)) |
28487 if(P_type_symbol == NULL || search_expression_type->is_integer_type(P_type_symbol)) |
26937 { |
28488 { |
26938 |
28489 |
26939 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
28490 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
26940 return return_type_symbol; |
28491 return return_type_symbol; |
26941 |
28492 |
26969 |
28520 |
26970 { |
28521 { |
26971 symbol_c *IN1_type_symbol = param_data_type; |
28522 symbol_c *IN1_type_symbol = param_data_type; |
26972 last_type_symbol = param_data_type; |
28523 last_type_symbol = param_data_type; |
26973 |
28524 |
26974 if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
28525 if(IN1_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
26975 { |
28526 { |
26976 |
28527 |
26977 { |
28528 { |
26978 identifier_c param_name("IN2"); |
28529 identifier_c param_name("IN2"); |
26979 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
28530 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
26980 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
28531 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
28532 symbol_c *IN2_type_symbol = NULL; |
26981 |
28533 |
26982 /* Get the value from a foo(<param_value>) style call */ |
28534 /* Get the value from a foo(<param_value>) style call */ |
26983 if (IN2_param_value == NULL) |
28535 if (IN2_param_value == NULL) |
26984 IN2_param_value = function_call_param_iterator.next(); |
28536 IN2_param_value = function_call_param_iterator.next(); |
26985 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
28537 if (IN2_param_value != NULL) { |
26986 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
28538 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
26987 |
28539 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
26988 if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
28540 } |
|
28541 |
|
28542 if(IN2_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
26989 { |
28543 { |
26990 |
28544 |
26991 { |
28545 { |
26992 identifier_c param_name("L"); |
28546 identifier_c param_name("L"); |
26993 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
28547 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
26994 symbol_c *L_param_value = function_call_param_iterator.search(¶m_name); |
28548 symbol_c *L_param_value = function_call_param_iterator.search(¶m_name); |
|
28549 symbol_c *L_type_symbol = NULL; |
26995 |
28550 |
26996 /* Get the value from a foo(<param_value>) style call */ |
28551 /* Get the value from a foo(<param_value>) style call */ |
26997 if (L_param_value == NULL) |
28552 if (L_param_value == NULL) |
26998 L_param_value = function_call_param_iterator.next(); |
28553 L_param_value = function_call_param_iterator.next(); |
26999 symbol_c *L_type_symbol = search_expression_type->get_type(L_param_value); |
28554 if (L_param_value != NULL) { |
27000 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(L_type_symbol, last_type_symbol) ? search_expression_type->common_type(L_type_symbol, last_type_symbol) : L_type_symbol ; |
28555 L_type_symbol = search_expression_type->get_type(L_param_value); |
|
28556 last_type_symbol = last_type_symbol && L_type_symbol && search_expression_type->is_same_type(L_type_symbol, last_type_symbol) ? search_expression_type->common_type(L_type_symbol, last_type_symbol) : L_type_symbol ; |
|
28557 } |
27001 |
28558 |
27002 if(search_expression_type->is_integer_type(L_type_symbol)) |
28559 if(L_type_symbol == NULL || search_expression_type->is_integer_type(L_type_symbol)) |
27003 { |
28560 { |
27004 |
28561 |
27005 { |
28562 { |
27006 identifier_c param_name("P"); |
28563 identifier_c param_name("P"); |
27007 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
28564 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
27008 symbol_c *P_param_value = function_call_param_iterator.search(¶m_name); |
28565 symbol_c *P_param_value = function_call_param_iterator.search(¶m_name); |
|
28566 symbol_c *P_type_symbol = NULL; |
27009 |
28567 |
27010 /* Get the value from a foo(<param_value>) style call */ |
28568 /* Get the value from a foo(<param_value>) style call */ |
27011 if (P_param_value == NULL) |
28569 if (P_param_value == NULL) |
27012 P_param_value = function_call_param_iterator.next(); |
28570 P_param_value = function_call_param_iterator.next(); |
27013 symbol_c *P_type_symbol = search_expression_type->get_type(P_param_value); |
28571 if (P_param_value != NULL) { |
27014 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(P_type_symbol, last_type_symbol) ? search_expression_type->common_type(P_type_symbol, last_type_symbol) : P_type_symbol ; |
28572 P_type_symbol = search_expression_type->get_type(P_param_value); |
|
28573 last_type_symbol = last_type_symbol && P_type_symbol && search_expression_type->is_same_type(P_type_symbol, last_type_symbol) ? search_expression_type->common_type(P_type_symbol, last_type_symbol) : P_type_symbol ; |
|
28574 } |
27015 |
28575 |
27016 if(search_expression_type->is_integer_type(P_type_symbol)) |
28576 if(P_type_symbol == NULL || search_expression_type->is_integer_type(P_type_symbol)) |
27017 { |
28577 { |
27018 |
28578 |
27019 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
28579 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name; |
27020 return return_type_symbol; |
28580 return return_type_symbol; |
27021 |
28581 |
27055 |
28615 |
27056 { |
28616 { |
27057 symbol_c *IN1_type_symbol = param_data_type; |
28617 symbol_c *IN1_type_symbol = param_data_type; |
27058 last_type_symbol = param_data_type; |
28618 last_type_symbol = param_data_type; |
27059 |
28619 |
27060 if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
28620 if(IN1_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
27061 { |
28621 { |
27062 |
28622 |
27063 { |
28623 { |
27064 identifier_c param_name("IN2"); |
28624 identifier_c param_name("IN2"); |
27065 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
28625 /* Get the value from a foo(<param_name> = <param_value>) style call */ |
27066 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
28626 symbol_c *IN2_param_value = function_call_param_iterator.search(¶m_name); |
|
28627 symbol_c *IN2_type_symbol = NULL; |
27067 |
28628 |
27068 /* Get the value from a foo(<param_value>) style call */ |
28629 /* Get the value from a foo(<param_value>) style call */ |
27069 if (IN2_param_value == NULL) |
28630 if (IN2_param_value == NULL) |
27070 IN2_param_value = function_call_param_iterator.next(); |
28631 IN2_param_value = function_call_param_iterator.next(); |
27071 symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
28632 if (IN2_param_value != NULL) { |
27072 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
28633 IN2_type_symbol = search_expression_type->get_type(IN2_param_value); |
27073 |
28634 last_type_symbol = last_type_symbol && IN2_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ; |
27074 if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
28635 } |
|
28636 |
|
28637 if(IN2_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol)) |
27075 { |
28638 { |
27076 |
28639 |
27077 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name; |
28640 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name; |
27078 return return_type_symbol; |
28641 return return_type_symbol; |
27079 |
28642 |