equal
deleted
inserted
replaced
248 } |
248 } |
249 #endif |
249 #endif |
250 if (function_invocation_error) |
250 if (function_invocation_error) |
251 /* when handling a IL function call, and an error is found in the first parameter, then we bug out and do not print out any more error messages. */ |
251 /* when handling a IL function call, and an error is found in the first parameter, then we bug out and do not print out any more error messages. */ |
252 return; |
252 return; |
253 } |
253 } else { |
254 else if (!get_datatype_info_c::is_type_valid(param_value->datatype)) { |
254 if (!get_datatype_info_c::is_type_valid(param_value->datatype)) { |
255 function_invocation_error = true; |
255 function_invocation_error = true; |
256 STAGE3_ERROR(0, param_value, param_value, "Data type incompatibility for value passed in position %d when invoking %s '%s'", i, POU_str, ((identifier_c *)fcall_data.function_name)->value); |
256 STAGE3_ERROR(0, param_value, param_value, "Data type incompatibility for value passed in position %d when invoking %s '%s'", i, POU_str, ((identifier_c *)fcall_data.function_name)->value); |
|
257 } |
|
258 param_value->accept(*this); |
257 } |
259 } |
258 } |
260 } |
259 } |
261 } |
260 |
262 |
261 if (NULL == fcall_data.called_function_declaration) { |
263 if (NULL == fcall_data.called_function_declaration) { |