stage4/generate_c/il_code_gen.c
changeset 169 bea932bc60b0
parent 165 83963465b773
child 199 b075f28ec081
equal deleted inserted replaced
168:225db59fe6fe 169:bea932bc60b0
    42             symbol_c *IN_param_value = &this->default_variable_name;
    42             symbol_c *IN_param_value = &this->default_variable_name;
    43         
    43         
    44             symbol_c *IN_type_symbol = param_data_type;
    44             symbol_c *IN_type_symbol = param_data_type;
    45             last_type_symbol = param_data_type;
    45             last_type_symbol = param_data_type;
    46             
    46             
    47             if(search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol))
    47             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol))
    48             {
    48             {
    49         
    49         
       
    50                 
       
    51                 if (IN_type_symbol == NULL)
       
    52                   IN_type_symbol = last_type_symbol;
    50                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
    53                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
    51                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
    54                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
    52                 function_type_prefix = return_type_symbol;
    55                 function_type_prefix = return_type_symbol;
    53                 break;
    56                 break;
    54                 
    57                 
    73             symbol_c *IN_param_value = &this->default_variable_name;
    76             symbol_c *IN_param_value = &this->default_variable_name;
    74         
    77         
    75             symbol_c *IN_type_symbol = param_data_type;
    78             symbol_c *IN_type_symbol = param_data_type;
    76             last_type_symbol = param_data_type;
    79             last_type_symbol = param_data_type;
    77             
    80             
    78             if(search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol))
    81             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol))
    79             {
    82             {
    80         
    83         
       
    84                 
       
    85                 if (IN_type_symbol == NULL)
       
    86                   IN_type_symbol = last_type_symbol;
    81                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
    87                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
    82                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
    88                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
    83                 function_type_prefix = return_type_symbol;
    89                 function_type_prefix = return_type_symbol;
    84                 break;
    90                 break;
    85                 
    91                 
   104             symbol_c *IN_param_value = &this->default_variable_name;
   110             symbol_c *IN_param_value = &this->default_variable_name;
   105         
   111         
   106             symbol_c *IN_type_symbol = param_data_type;
   112             symbol_c *IN_type_symbol = param_data_type;
   107             last_type_symbol = param_data_type;
   113             last_type_symbol = param_data_type;
   108             
   114             
   109             if(search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol))
   115             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol))
   110             {
   116             {
   111         
   117         
       
   118                 
       
   119                 if (IN_type_symbol == NULL)
       
   120                   IN_type_symbol = last_type_symbol;
   112                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
   121                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
   113                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
   122                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
   114                 function_type_prefix = return_type_symbol;
   123                 function_type_prefix = return_type_symbol;
   115                 break;
   124                 break;
   116                 
   125                 
   135             symbol_c *IN_param_value = &this->default_variable_name;
   144             symbol_c *IN_param_value = &this->default_variable_name;
   136         
   145         
   137             symbol_c *IN_type_symbol = param_data_type;
   146             symbol_c *IN_type_symbol = param_data_type;
   138             last_type_symbol = param_data_type;
   147             last_type_symbol = param_data_type;
   139             
   148             
   140             if(search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol))
   149             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol))
   141             {
   150             {
   142         
   151         
   143                 function_name = (symbol_c*)(new pragma_c("__real_to_time"));
   152                 function_name = (symbol_c*)(new pragma_c("__real_to_time"));
       
   153                 
       
   154                 if (IN_type_symbol == NULL)
       
   155                   IN_type_symbol = last_type_symbol;
   144                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
   156                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
   145                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
   157                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
   146                 function_type_prefix = return_type_symbol;
   158                 function_type_prefix = return_type_symbol;
   147                 break;
   159                 break;
   148                 
   160                 
   167             symbol_c *IN_param_value = &this->default_variable_name;
   179             symbol_c *IN_param_value = &this->default_variable_name;
   168         
   180         
   169             symbol_c *IN_type_symbol = param_data_type;
   181             symbol_c *IN_type_symbol = param_data_type;
   170             last_type_symbol = param_data_type;
   182             last_type_symbol = param_data_type;
   171             
   183             
   172             if(search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol))
   184             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol))
   173             {
   185             {
   174         
   186         
       
   187                 
       
   188                 if (IN_type_symbol == NULL)
       
   189                   IN_type_symbol = last_type_symbol;
   175                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
   190                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
   176                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
   191                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
   177                 function_type_prefix = return_type_symbol;
   192                 function_type_prefix = return_type_symbol;
   178                 break;
   193                 break;
   179                 
   194                 
   198             symbol_c *IN_param_value = &this->default_variable_name;
   213             symbol_c *IN_param_value = &this->default_variable_name;
   199         
   214         
   200             symbol_c *IN_type_symbol = param_data_type;
   215             symbol_c *IN_type_symbol = param_data_type;
   201             last_type_symbol = param_data_type;
   216             last_type_symbol = param_data_type;
   202             
   217             
   203             if(search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol))
   218             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol))
   204             {
   219             {
   205         
   220         
   206                 function_name = (symbol_c*)(new pragma_c("__real_to_time"));
   221                 function_name = (symbol_c*)(new pragma_c("__real_to_time"));
       
   222                 
       
   223                 if (IN_type_symbol == NULL)
       
   224                   IN_type_symbol = last_type_symbol;
   207                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
   225                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
   208                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
   226                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
   209                 function_type_prefix = return_type_symbol;
   227                 function_type_prefix = return_type_symbol;
   210                 break;
   228                 break;
   211                 
   229                 
   230             symbol_c *IN_param_value = &this->default_variable_name;
   248             symbol_c *IN_param_value = &this->default_variable_name;
   231         
   249         
   232             symbol_c *IN_type_symbol = param_data_type;
   250             symbol_c *IN_type_symbol = param_data_type;
   233             last_type_symbol = param_data_type;
   251             last_type_symbol = param_data_type;
   234             
   252             
   235             if(search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol))
   253             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol))
   236             {
   254             {
   237         
   255         
   238                 function_name = (symbol_c*)(new pragma_c("__real_to_time"));
   256                 function_name = (symbol_c*)(new pragma_c("__real_to_time"));
       
   257                 
       
   258                 if (IN_type_symbol == NULL)
       
   259                   IN_type_symbol = last_type_symbol;
   239                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
   260                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
   240                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
   261                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
   241                 function_type_prefix = return_type_symbol;
   262                 function_type_prefix = return_type_symbol;
   242                 break;
   263                 break;
   243                 
   264                 
   262             symbol_c *IN_param_value = &this->default_variable_name;
   283             symbol_c *IN_param_value = &this->default_variable_name;
   263         
   284         
   264             symbol_c *IN_type_symbol = param_data_type;
   285             symbol_c *IN_type_symbol = param_data_type;
   265             last_type_symbol = param_data_type;
   286             last_type_symbol = param_data_type;
   266             
   287             
   267             if(search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol))
   288             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol))
   268             {
   289             {
   269         
   290         
       
   291                 
       
   292                 if (IN_type_symbol == NULL)
       
   293                   IN_type_symbol = last_type_symbol;
   270                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
   294                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
   271                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
   295                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
   272                 function_type_prefix = return_type_symbol;
   296                 function_type_prefix = return_type_symbol;
   273                 break;
   297                 break;
   274                 
   298                 
   293             symbol_c *IN_param_value = &this->default_variable_name;
   317             symbol_c *IN_param_value = &this->default_variable_name;
   294         
   318         
   295             symbol_c *IN_type_symbol = param_data_type;
   319             symbol_c *IN_type_symbol = param_data_type;
   296             last_type_symbol = param_data_type;
   320             last_type_symbol = param_data_type;
   297             
   321             
   298             if(search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol))
   322             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol))
   299             {
   323             {
   300         
   324         
       
   325                 
       
   326                 if (IN_type_symbol == NULL)
       
   327                   IN_type_symbol = last_type_symbol;
   301                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
   328                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
   302                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
   329                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
   303                 function_type_prefix = return_type_symbol;
   330                 function_type_prefix = return_type_symbol;
   304                 break;
   331                 break;
   305                 
   332                 
   324             symbol_c *IN_param_value = &this->default_variable_name;
   351             symbol_c *IN_param_value = &this->default_variable_name;
   325         
   352         
   326             symbol_c *IN_type_symbol = param_data_type;
   353             symbol_c *IN_type_symbol = param_data_type;
   327             last_type_symbol = param_data_type;
   354             last_type_symbol = param_data_type;
   328             
   355             
   329             if(search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol))
   356             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol))
   330             {
   357             {
   331         
   358         
   332                 function_name = (symbol_c*)(new pragma_c("__real_to_string"));
   359                 function_name = (symbol_c*)(new pragma_c("__real_to_string"));
       
   360                 
       
   361                 if (IN_type_symbol == NULL)
       
   362                   IN_type_symbol = last_type_symbol;
   333                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
   363                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
   334                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
   364                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
   335                 function_type_prefix = return_type_symbol;
   365                 function_type_prefix = return_type_symbol;
   336                 break;
   366                 break;
   337                 
   367                 
   356             symbol_c *IN_param_value = &this->default_variable_name;
   386             symbol_c *IN_param_value = &this->default_variable_name;
   357         
   387         
   358             symbol_c *IN_type_symbol = param_data_type;
   388             symbol_c *IN_type_symbol = param_data_type;
   359             last_type_symbol = param_data_type;
   389             last_type_symbol = param_data_type;
   360             
   390             
   361             if(search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol))
   391             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol))
   362             {
   392             {
   363         
   393         
       
   394                 
       
   395                 if (IN_type_symbol == NULL)
       
   396                   IN_type_symbol = last_type_symbol;
   364                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
   397                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
   365                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
   398                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
   366                 function_type_prefix = return_type_symbol;
   399                 function_type_prefix = return_type_symbol;
   367                 break;
   400                 break;
   368                 
   401                 
   387             symbol_c *IN_param_value = &this->default_variable_name;
   420             symbol_c *IN_param_value = &this->default_variable_name;
   388         
   421         
   389             symbol_c *IN_type_symbol = param_data_type;
   422             symbol_c *IN_type_symbol = param_data_type;
   390             last_type_symbol = param_data_type;
   423             last_type_symbol = param_data_type;
   391             
   424             
   392             if(search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol))
   425             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol))
   393             {
   426             {
   394         
   427         
       
   428                 
       
   429                 if (IN_type_symbol == NULL)
       
   430                   IN_type_symbol = last_type_symbol;
   395                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
   431                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
   396                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
   432                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
   397                 function_type_prefix = return_type_symbol;
   433                 function_type_prefix = return_type_symbol;
   398                 break;
   434                 break;
   399                 
   435                 
   418             symbol_c *IN_param_value = &this->default_variable_name;
   454             symbol_c *IN_param_value = &this->default_variable_name;
   419         
   455         
   420             symbol_c *IN_type_symbol = param_data_type;
   456             symbol_c *IN_type_symbol = param_data_type;
   421             last_type_symbol = param_data_type;
   457             last_type_symbol = param_data_type;
   422             
   458             
   423             if(search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol))
   459             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol))
   424             {
   460             {
   425         
   461         
       
   462                 
       
   463                 if (IN_type_symbol == NULL)
       
   464                   IN_type_symbol = last_type_symbol;
   426                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
   465                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
   427                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
   466                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
   428                 function_type_prefix = return_type_symbol;
   467                 function_type_prefix = return_type_symbol;
   429                 break;
   468                 break;
   430                 
   469                 
   449             symbol_c *IN_param_value = &this->default_variable_name;
   488             symbol_c *IN_param_value = &this->default_variable_name;
   450         
   489         
   451             symbol_c *IN_type_symbol = param_data_type;
   490             symbol_c *IN_type_symbol = param_data_type;
   452             last_type_symbol = param_data_type;
   491             last_type_symbol = param_data_type;
   453             
   492             
   454             if(search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol))
   493             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol))
   455             {
   494             {
   456         
   495         
       
   496                 
       
   497                 if (IN_type_symbol == NULL)
       
   498                   IN_type_symbol = last_type_symbol;
   457                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
   499                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
   458                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
   500                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
   459                 function_type_prefix = return_type_symbol;
   501                 function_type_prefix = return_type_symbol;
   460                 break;
   502                 break;
   461                 
   503                 
   480             symbol_c *IN_param_value = &this->default_variable_name;
   522             symbol_c *IN_param_value = &this->default_variable_name;
   481         
   523         
   482             symbol_c *IN_type_symbol = param_data_type;
   524             symbol_c *IN_type_symbol = param_data_type;
   483             last_type_symbol = param_data_type;
   525             last_type_symbol = param_data_type;
   484             
   526             
   485             if(search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol))
   527             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol))
   486             {
   528             {
   487         
   529         
       
   530                 
       
   531                 if (IN_type_symbol == NULL)
       
   532                   IN_type_symbol = last_type_symbol;
   488                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
   533                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
   489                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
   534                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
   490                 function_type_prefix = return_type_symbol;
   535                 function_type_prefix = return_type_symbol;
   491                 break;
   536                 break;
   492                 
   537                 
   511             symbol_c *IN_param_value = &this->default_variable_name;
   556             symbol_c *IN_param_value = &this->default_variable_name;
   512         
   557         
   513             symbol_c *IN_type_symbol = param_data_type;
   558             symbol_c *IN_type_symbol = param_data_type;
   514             last_type_symbol = param_data_type;
   559             last_type_symbol = param_data_type;
   515             
   560             
   516             if(search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol))
   561             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol))
   517             {
   562             {
   518         
   563         
       
   564                 
       
   565                 if (IN_type_symbol == NULL)
       
   566                   IN_type_symbol = last_type_symbol;
   519                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
   567                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
   520                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
   568                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
   521                 function_type_prefix = return_type_symbol;
   569                 function_type_prefix = return_type_symbol;
   522                 break;
   570                 break;
   523                 
   571                 
   542             symbol_c *IN_param_value = &this->default_variable_name;
   590             symbol_c *IN_param_value = &this->default_variable_name;
   543         
   591         
   544             symbol_c *IN_type_symbol = param_data_type;
   592             symbol_c *IN_type_symbol = param_data_type;
   545             last_type_symbol = param_data_type;
   593             last_type_symbol = param_data_type;
   546             
   594             
   547             if(search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol))
   595             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol))
   548             {
   596             {
   549         
   597         
       
   598                 
       
   599                 if (IN_type_symbol == NULL)
       
   600                   IN_type_symbol = last_type_symbol;
   550                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
   601                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
   551                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
   602                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
   552                 function_type_prefix = return_type_symbol;
   603                 function_type_prefix = return_type_symbol;
   553                 break;
   604                 break;
   554                 
   605                 
   573             symbol_c *IN_param_value = &this->default_variable_name;
   624             symbol_c *IN_param_value = &this->default_variable_name;
   574         
   625         
   575             symbol_c *IN_type_symbol = param_data_type;
   626             symbol_c *IN_type_symbol = param_data_type;
   576             last_type_symbol = param_data_type;
   627             last_type_symbol = param_data_type;
   577             
   628             
   578             if(search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol))
   629             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol))
   579             {
   630             {
   580         
   631         
   581                 function_name = (symbol_c*)(new pragma_c("__real_to_time"));
   632                 function_name = (symbol_c*)(new pragma_c("__real_to_time"));
       
   633                 
       
   634                 if (IN_type_symbol == NULL)
       
   635                   IN_type_symbol = last_type_symbol;
   582                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
   636                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
   583                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
   637                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
   584                 function_type_prefix = return_type_symbol;
   638                 function_type_prefix = return_type_symbol;
   585                 break;
   639                 break;
   586                 
   640                 
   605             symbol_c *IN_param_value = &this->default_variable_name;
   659             symbol_c *IN_param_value = &this->default_variable_name;
   606         
   660         
   607             symbol_c *IN_type_symbol = param_data_type;
   661             symbol_c *IN_type_symbol = param_data_type;
   608             last_type_symbol = param_data_type;
   662             last_type_symbol = param_data_type;
   609             
   663             
   610             if(search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol))
   664             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol))
   611             {
   665             {
   612         
   666         
       
   667                 
       
   668                 if (IN_type_symbol == NULL)
       
   669                   IN_type_symbol = last_type_symbol;
   613                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
   670                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
   614                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
   671                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
   615                 function_type_prefix = return_type_symbol;
   672                 function_type_prefix = return_type_symbol;
   616                 break;
   673                 break;
   617                 
   674                 
   636             symbol_c *IN_param_value = &this->default_variable_name;
   693             symbol_c *IN_param_value = &this->default_variable_name;
   637         
   694         
   638             symbol_c *IN_type_symbol = param_data_type;
   695             symbol_c *IN_type_symbol = param_data_type;
   639             last_type_symbol = param_data_type;
   696             last_type_symbol = param_data_type;
   640             
   697             
   641             if(search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol))
   698             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol))
   642             {
   699             {
   643         
   700         
       
   701                 
       
   702                 if (IN_type_symbol == NULL)
       
   703                   IN_type_symbol = last_type_symbol;
   644                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
   704                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
   645                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
   705                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
   646                 function_type_prefix = return_type_symbol;
   706                 function_type_prefix = return_type_symbol;
   647                 break;
   707                 break;
   648                 
   708                 
   667             symbol_c *IN_param_value = &this->default_variable_name;
   727             symbol_c *IN_param_value = &this->default_variable_name;
   668         
   728         
   669             symbol_c *IN_type_symbol = param_data_type;
   729             symbol_c *IN_type_symbol = param_data_type;
   670             last_type_symbol = param_data_type;
   730             last_type_symbol = param_data_type;
   671             
   731             
   672             if(search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol))
   732             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol))
   673             {
   733             {
   674         
   734         
       
   735                 
       
   736                 if (IN_type_symbol == NULL)
       
   737                   IN_type_symbol = last_type_symbol;
   675                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
   738                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
   676                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
   739                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
   677                 function_type_prefix = return_type_symbol;
   740                 function_type_prefix = return_type_symbol;
   678                 break;
   741                 break;
   679                 
   742                 
   698             symbol_c *IN_param_value = &this->default_variable_name;
   761             symbol_c *IN_param_value = &this->default_variable_name;
   699         
   762         
   700             symbol_c *IN_type_symbol = param_data_type;
   763             symbol_c *IN_type_symbol = param_data_type;
   701             last_type_symbol = param_data_type;
   764             last_type_symbol = param_data_type;
   702             
   765             
   703             if(search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol))
   766             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol))
   704             {
   767             {
   705         
   768         
       
   769                 
       
   770                 if (IN_type_symbol == NULL)
       
   771                   IN_type_symbol = last_type_symbol;
   706                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
   772                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
   707                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
   773                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
   708                 function_type_prefix = return_type_symbol;
   774                 function_type_prefix = return_type_symbol;
   709                 break;
   775                 break;
   710                 
   776                 
   729             symbol_c *IN_param_value = &this->default_variable_name;
   795             symbol_c *IN_param_value = &this->default_variable_name;
   730         
   796         
   731             symbol_c *IN_type_symbol = param_data_type;
   797             symbol_c *IN_type_symbol = param_data_type;
   732             last_type_symbol = param_data_type;
   798             last_type_symbol = param_data_type;
   733             
   799             
   734             if(search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol))
   800             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol))
   735             {
   801             {
   736         
   802         
   737                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
   803                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
       
   804                 
       
   805                 if (IN_type_symbol == NULL)
       
   806                   IN_type_symbol = last_type_symbol;
   738                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
   807                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
   739                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
   808                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
   740                 function_type_prefix = return_type_symbol;
   809                 function_type_prefix = return_type_symbol;
   741                 break;
   810                 break;
   742                 
   811                 
   761             symbol_c *IN_param_value = &this->default_variable_name;
   830             symbol_c *IN_param_value = &this->default_variable_name;
   762         
   831         
   763             symbol_c *IN_type_symbol = param_data_type;
   832             symbol_c *IN_type_symbol = param_data_type;
   764             last_type_symbol = param_data_type;
   833             last_type_symbol = param_data_type;
   765             
   834             
   766             if(search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol))
   835             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol))
   767             {
   836             {
   768         
   837         
       
   838                 
       
   839                 if (IN_type_symbol == NULL)
       
   840                   IN_type_symbol = last_type_symbol;
   769                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
   841                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
   770                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
   842                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
   771                 function_type_prefix = return_type_symbol;
   843                 function_type_prefix = return_type_symbol;
   772                 break;
   844                 break;
   773                 
   845                 
   792             symbol_c *IN_param_value = &this->default_variable_name;
   864             symbol_c *IN_param_value = &this->default_variable_name;
   793         
   865         
   794             symbol_c *IN_type_symbol = param_data_type;
   866             symbol_c *IN_type_symbol = param_data_type;
   795             last_type_symbol = param_data_type;
   867             last_type_symbol = param_data_type;
   796             
   868             
   797             if(search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol))
   869             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol))
   798             {
   870             {
   799         
   871         
   800                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
   872                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
       
   873                 
       
   874                 if (IN_type_symbol == NULL)
       
   875                   IN_type_symbol = last_type_symbol;
   801                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
   876                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
   802                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
   877                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
   803                 function_type_prefix = return_type_symbol;
   878                 function_type_prefix = return_type_symbol;
   804                 break;
   879                 break;
   805                 
   880                 
   824             symbol_c *IN_param_value = &this->default_variable_name;
   899             symbol_c *IN_param_value = &this->default_variable_name;
   825         
   900         
   826             symbol_c *IN_type_symbol = param_data_type;
   901             symbol_c *IN_type_symbol = param_data_type;
   827             last_type_symbol = param_data_type;
   902             last_type_symbol = param_data_type;
   828             
   903             
   829             if(search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol))
   904             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol))
   830             {
   905             {
   831         
   906         
   832                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
   907                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
       
   908                 
       
   909                 if (IN_type_symbol == NULL)
       
   910                   IN_type_symbol = last_type_symbol;
   833                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
   911                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
   834                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
   912                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
   835                 function_type_prefix = return_type_symbol;
   913                 function_type_prefix = return_type_symbol;
   836                 break;
   914                 break;
   837                 
   915                 
   856             symbol_c *IN_param_value = &this->default_variable_name;
   934             symbol_c *IN_param_value = &this->default_variable_name;
   857         
   935         
   858             symbol_c *IN_type_symbol = param_data_type;
   936             symbol_c *IN_type_symbol = param_data_type;
   859             last_type_symbol = param_data_type;
   937             last_type_symbol = param_data_type;
   860             
   938             
   861             if(search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol))
   939             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol))
   862             {
   940             {
   863         
   941         
       
   942                 
       
   943                 if (IN_type_symbol == NULL)
       
   944                   IN_type_symbol = last_type_symbol;
   864                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
   945                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
   865                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
   946                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
   866                 function_type_prefix = return_type_symbol;
   947                 function_type_prefix = return_type_symbol;
   867                 break;
   948                 break;
   868                 
   949                 
   887             symbol_c *IN_param_value = &this->default_variable_name;
   968             symbol_c *IN_param_value = &this->default_variable_name;
   888         
   969         
   889             symbol_c *IN_type_symbol = param_data_type;
   970             symbol_c *IN_type_symbol = param_data_type;
   890             last_type_symbol = param_data_type;
   971             last_type_symbol = param_data_type;
   891             
   972             
   892             if(search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol))
   973             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol))
   893             {
   974             {
   894         
   975         
       
   976                 
       
   977                 if (IN_type_symbol == NULL)
       
   978                   IN_type_symbol = last_type_symbol;
   895                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
   979                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
   896                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
   980                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
   897                 function_type_prefix = return_type_symbol;
   981                 function_type_prefix = return_type_symbol;
   898                 break;
   982                 break;
   899                 
   983                 
   918             symbol_c *IN_param_value = &this->default_variable_name;
  1002             symbol_c *IN_param_value = &this->default_variable_name;
   919         
  1003         
   920             symbol_c *IN_type_symbol = param_data_type;
  1004             symbol_c *IN_type_symbol = param_data_type;
   921             last_type_symbol = param_data_type;
  1005             last_type_symbol = param_data_type;
   922             
  1006             
   923             if(search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol))
  1007             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol))
   924             {
  1008             {
   925         
  1009         
   926                 function_name = (symbol_c*)(new pragma_c("__sint_to_string"));
  1010                 function_name = (symbol_c*)(new pragma_c("__sint_to_string"));
       
  1011                 
       
  1012                 if (IN_type_symbol == NULL)
       
  1013                   IN_type_symbol = last_type_symbol;
   927                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1014                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
   928                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
  1015                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
   929                 function_type_prefix = return_type_symbol;
  1016                 function_type_prefix = return_type_symbol;
   930                 break;
  1017                 break;
   931                 
  1018                 
   950             symbol_c *IN_param_value = &this->default_variable_name;
  1037             symbol_c *IN_param_value = &this->default_variable_name;
   951         
  1038         
   952             symbol_c *IN_type_symbol = param_data_type;
  1039             symbol_c *IN_type_symbol = param_data_type;
   953             last_type_symbol = param_data_type;
  1040             last_type_symbol = param_data_type;
   954             
  1041             
   955             if(search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol))
  1042             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol))
   956             {
  1043             {
   957         
  1044         
       
  1045                 
       
  1046                 if (IN_type_symbol == NULL)
       
  1047                   IN_type_symbol = last_type_symbol;
   958                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1048                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
   959                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
  1049                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
   960                 function_type_prefix = return_type_symbol;
  1050                 function_type_prefix = return_type_symbol;
   961                 break;
  1051                 break;
   962                 
  1052                 
   981             symbol_c *IN_param_value = &this->default_variable_name;
  1071             symbol_c *IN_param_value = &this->default_variable_name;
   982         
  1072         
   983             symbol_c *IN_type_symbol = param_data_type;
  1073             symbol_c *IN_type_symbol = param_data_type;
   984             last_type_symbol = param_data_type;
  1074             last_type_symbol = param_data_type;
   985             
  1075             
   986             if(search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol))
  1076             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol))
   987             {
  1077             {
   988         
  1078         
       
  1079                 
       
  1080                 if (IN_type_symbol == NULL)
       
  1081                   IN_type_symbol = last_type_symbol;
   989                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1082                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
   990                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
  1083                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
   991                 function_type_prefix = return_type_symbol;
  1084                 function_type_prefix = return_type_symbol;
   992                 break;
  1085                 break;
   993                 
  1086                 
  1012             symbol_c *IN_param_value = &this->default_variable_name;
  1105             symbol_c *IN_param_value = &this->default_variable_name;
  1013         
  1106         
  1014             symbol_c *IN_type_symbol = param_data_type;
  1107             symbol_c *IN_type_symbol = param_data_type;
  1015             last_type_symbol = param_data_type;
  1108             last_type_symbol = param_data_type;
  1016             
  1109             
  1017             if(search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol))
  1110             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol))
  1018             {
  1111             {
  1019         
  1112         
       
  1113                 
       
  1114                 if (IN_type_symbol == NULL)
       
  1115                   IN_type_symbol = last_type_symbol;
  1020                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1116                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1021                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
  1117                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
  1022                 function_type_prefix = return_type_symbol;
  1118                 function_type_prefix = return_type_symbol;
  1023                 break;
  1119                 break;
  1024                 
  1120                 
  1043             symbol_c *IN_param_value = &this->default_variable_name;
  1139             symbol_c *IN_param_value = &this->default_variable_name;
  1044         
  1140         
  1045             symbol_c *IN_type_symbol = param_data_type;
  1141             symbol_c *IN_type_symbol = param_data_type;
  1046             last_type_symbol = param_data_type;
  1142             last_type_symbol = param_data_type;
  1047             
  1143             
  1048             if(search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol))
  1144             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol))
  1049             {
  1145             {
  1050         
  1146         
       
  1147                 
       
  1148                 if (IN_type_symbol == NULL)
       
  1149                   IN_type_symbol = last_type_symbol;
  1051                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1150                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1052                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
  1151                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
  1053                 function_type_prefix = return_type_symbol;
  1152                 function_type_prefix = return_type_symbol;
  1054                 break;
  1153                 break;
  1055                 
  1154                 
  1074             symbol_c *IN_param_value = &this->default_variable_name;
  1173             symbol_c *IN_param_value = &this->default_variable_name;
  1075         
  1174         
  1076             symbol_c *IN_type_symbol = param_data_type;
  1175             symbol_c *IN_type_symbol = param_data_type;
  1077             last_type_symbol = param_data_type;
  1176             last_type_symbol = param_data_type;
  1078             
  1177             
  1079             if(search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol))
  1178             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol))
  1080             {
  1179             {
  1081         
  1180         
       
  1181                 
       
  1182                 if (IN_type_symbol == NULL)
       
  1183                   IN_type_symbol = last_type_symbol;
  1082                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1184                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1083                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
  1185                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
  1084                 function_type_prefix = return_type_symbol;
  1186                 function_type_prefix = return_type_symbol;
  1085                 break;
  1187                 break;
  1086                 
  1188                 
  1105             symbol_c *IN_param_value = &this->default_variable_name;
  1207             symbol_c *IN_param_value = &this->default_variable_name;
  1106         
  1208         
  1107             symbol_c *IN_type_symbol = param_data_type;
  1209             symbol_c *IN_type_symbol = param_data_type;
  1108             last_type_symbol = param_data_type;
  1210             last_type_symbol = param_data_type;
  1109             
  1211             
  1110             if(search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol))
  1212             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol))
  1111             {
  1213             {
  1112         
  1214         
       
  1215                 
       
  1216                 if (IN_type_symbol == NULL)
       
  1217                   IN_type_symbol = last_type_symbol;
  1113                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1218                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1114                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
  1219                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
  1115                 function_type_prefix = return_type_symbol;
  1220                 function_type_prefix = return_type_symbol;
  1116                 break;
  1221                 break;
  1117                 
  1222                 
  1136             symbol_c *IN_param_value = &this->default_variable_name;
  1241             symbol_c *IN_param_value = &this->default_variable_name;
  1137         
  1242         
  1138             symbol_c *IN_type_symbol = param_data_type;
  1243             symbol_c *IN_type_symbol = param_data_type;
  1139             last_type_symbol = param_data_type;
  1244             last_type_symbol = param_data_type;
  1140             
  1245             
  1141             if(search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol))
  1246             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol))
  1142             {
  1247             {
  1143         
  1248         
       
  1249                 
       
  1250                 if (IN_type_symbol == NULL)
       
  1251                   IN_type_symbol = last_type_symbol;
  1144                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1252                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1145                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
  1253                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
  1146                 function_type_prefix = return_type_symbol;
  1254                 function_type_prefix = return_type_symbol;
  1147                 break;
  1255                 break;
  1148                 
  1256                 
  1167             symbol_c *IN_param_value = &this->default_variable_name;
  1275             symbol_c *IN_param_value = &this->default_variable_name;
  1168         
  1276         
  1169             symbol_c *IN_type_symbol = param_data_type;
  1277             symbol_c *IN_type_symbol = param_data_type;
  1170             last_type_symbol = param_data_type;
  1278             last_type_symbol = param_data_type;
  1171             
  1279             
  1172             if(search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol))
  1280             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol))
  1173             {
  1281             {
  1174         
  1282         
  1175                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
  1283                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
       
  1284                 
       
  1285                 if (IN_type_symbol == NULL)
       
  1286                   IN_type_symbol = last_type_symbol;
  1176                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1287                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1177                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
  1288                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
  1178                 function_type_prefix = return_type_symbol;
  1289                 function_type_prefix = return_type_symbol;
  1179                 break;
  1290                 break;
  1180                 
  1291                 
  1199             symbol_c *IN_param_value = &this->default_variable_name;
  1310             symbol_c *IN_param_value = &this->default_variable_name;
  1200         
  1311         
  1201             symbol_c *IN_type_symbol = param_data_type;
  1312             symbol_c *IN_type_symbol = param_data_type;
  1202             last_type_symbol = param_data_type;
  1313             last_type_symbol = param_data_type;
  1203             
  1314             
  1204             if(search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol))
  1315             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol))
  1205             {
  1316             {
  1206         
  1317         
       
  1318                 
       
  1319                 if (IN_type_symbol == NULL)
       
  1320                   IN_type_symbol = last_type_symbol;
  1207                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1321                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1208                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
  1322                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
  1209                 function_type_prefix = return_type_symbol;
  1323                 function_type_prefix = return_type_symbol;
  1210                 break;
  1324                 break;
  1211                 
  1325                 
  1230             symbol_c *IN_param_value = &this->default_variable_name;
  1344             symbol_c *IN_param_value = &this->default_variable_name;
  1231         
  1345         
  1232             symbol_c *IN_type_symbol = param_data_type;
  1346             symbol_c *IN_type_symbol = param_data_type;
  1233             last_type_symbol = param_data_type;
  1347             last_type_symbol = param_data_type;
  1234             
  1348             
  1235             if(search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol))
  1349             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol))
  1236             {
  1350             {
  1237         
  1351         
       
  1352                 
       
  1353                 if (IN_type_symbol == NULL)
       
  1354                   IN_type_symbol = last_type_symbol;
  1238                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1355                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1239                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
  1356                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
  1240                 function_type_prefix = return_type_symbol;
  1357                 function_type_prefix = return_type_symbol;
  1241                 break;
  1358                 break;
  1242                 
  1359                 
  1261             symbol_c *IN_param_value = &this->default_variable_name;
  1378             symbol_c *IN_param_value = &this->default_variable_name;
  1262         
  1379         
  1263             symbol_c *IN_type_symbol = param_data_type;
  1380             symbol_c *IN_type_symbol = param_data_type;
  1264             last_type_symbol = param_data_type;
  1381             last_type_symbol = param_data_type;
  1265             
  1382             
  1266             if(search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol))
  1383             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol))
  1267             {
  1384             {
  1268         
  1385         
       
  1386                 
       
  1387                 if (IN_type_symbol == NULL)
       
  1388                   IN_type_symbol = last_type_symbol;
  1269                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1389                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1270                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
  1390                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
  1271                 function_type_prefix = return_type_symbol;
  1391                 function_type_prefix = return_type_symbol;
  1272                 break;
  1392                 break;
  1273                 
  1393                 
  1292             symbol_c *IN_param_value = &this->default_variable_name;
  1412             symbol_c *IN_param_value = &this->default_variable_name;
  1293         
  1413         
  1294             symbol_c *IN_type_symbol = param_data_type;
  1414             symbol_c *IN_type_symbol = param_data_type;
  1295             last_type_symbol = param_data_type;
  1415             last_type_symbol = param_data_type;
  1296             
  1416             
  1297             if(search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol))
  1417             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol))
  1298             {
  1418             {
  1299         
  1419         
       
  1420                 
       
  1421                 if (IN_type_symbol == NULL)
       
  1422                   IN_type_symbol = last_type_symbol;
  1300                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1423                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1301                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
  1424                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
  1302                 function_type_prefix = return_type_symbol;
  1425                 function_type_prefix = return_type_symbol;
  1303                 break;
  1426                 break;
  1304                 
  1427                 
  1323             symbol_c *IN_param_value = &this->default_variable_name;
  1446             symbol_c *IN_param_value = &this->default_variable_name;
  1324         
  1447         
  1325             symbol_c *IN_type_symbol = param_data_type;
  1448             symbol_c *IN_type_symbol = param_data_type;
  1326             last_type_symbol = param_data_type;
  1449             last_type_symbol = param_data_type;
  1327             
  1450             
  1328             if(search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol))
  1451             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol))
  1329             {
  1452             {
  1330         
  1453         
  1331                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
  1454                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
       
  1455                 
       
  1456                 if (IN_type_symbol == NULL)
       
  1457                   IN_type_symbol = last_type_symbol;
  1332                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1458                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1333                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
  1459                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
  1334                 function_type_prefix = return_type_symbol;
  1460                 function_type_prefix = return_type_symbol;
  1335                 break;
  1461                 break;
  1336                 
  1462                 
  1355             symbol_c *IN_param_value = &this->default_variable_name;
  1481             symbol_c *IN_param_value = &this->default_variable_name;
  1356         
  1482         
  1357             symbol_c *IN_type_symbol = param_data_type;
  1483             symbol_c *IN_type_symbol = param_data_type;
  1358             last_type_symbol = param_data_type;
  1484             last_type_symbol = param_data_type;
  1359             
  1485             
  1360             if(search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol))
  1486             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol))
  1361             {
  1487             {
  1362         
  1488         
       
  1489                 
       
  1490                 if (IN_type_symbol == NULL)
       
  1491                   IN_type_symbol = last_type_symbol;
  1363                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1492                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1364                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
  1493                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
  1365                 function_type_prefix = return_type_symbol;
  1494                 function_type_prefix = return_type_symbol;
  1366                 break;
  1495                 break;
  1367                 
  1496                 
  1386             symbol_c *IN_param_value = &this->default_variable_name;
  1515             symbol_c *IN_param_value = &this->default_variable_name;
  1387         
  1516         
  1388             symbol_c *IN_type_symbol = param_data_type;
  1517             symbol_c *IN_type_symbol = param_data_type;
  1389             last_type_symbol = param_data_type;
  1518             last_type_symbol = param_data_type;
  1390             
  1519             
  1391             if(search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol))
  1520             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol))
  1392             {
  1521             {
  1393         
  1522         
  1394                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
  1523                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
       
  1524                 
       
  1525                 if (IN_type_symbol == NULL)
       
  1526                   IN_type_symbol = last_type_symbol;
  1395                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1527                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1396                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
  1528                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
  1397                 function_type_prefix = return_type_symbol;
  1529                 function_type_prefix = return_type_symbol;
  1398                 break;
  1530                 break;
  1399                 
  1531                 
  1418             symbol_c *IN_param_value = &this->default_variable_name;
  1550             symbol_c *IN_param_value = &this->default_variable_name;
  1419         
  1551         
  1420             symbol_c *IN_type_symbol = param_data_type;
  1552             symbol_c *IN_type_symbol = param_data_type;
  1421             last_type_symbol = param_data_type;
  1553             last_type_symbol = param_data_type;
  1422             
  1554             
  1423             if(search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol))
  1555             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol))
  1424             {
  1556             {
  1425         
  1557         
  1426                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
  1558                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
       
  1559                 
       
  1560                 if (IN_type_symbol == NULL)
       
  1561                   IN_type_symbol = last_type_symbol;
  1427                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1562                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1428                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
  1563                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
  1429                 function_type_prefix = return_type_symbol;
  1564                 function_type_prefix = return_type_symbol;
  1430                 break;
  1565                 break;
  1431                 
  1566                 
  1450             symbol_c *IN_param_value = &this->default_variable_name;
  1585             symbol_c *IN_param_value = &this->default_variable_name;
  1451         
  1586         
  1452             symbol_c *IN_type_symbol = param_data_type;
  1587             symbol_c *IN_type_symbol = param_data_type;
  1453             last_type_symbol = param_data_type;
  1588             last_type_symbol = param_data_type;
  1454             
  1589             
  1455             if(search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol))
  1590             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol))
  1456             {
  1591             {
  1457         
  1592         
       
  1593                 
       
  1594                 if (IN_type_symbol == NULL)
       
  1595                   IN_type_symbol = last_type_symbol;
  1458                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1596                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1459                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
  1597                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
  1460                 function_type_prefix = return_type_symbol;
  1598                 function_type_prefix = return_type_symbol;
  1461                 break;
  1599                 break;
  1462                 
  1600                 
  1481             symbol_c *IN_param_value = &this->default_variable_name;
  1619             symbol_c *IN_param_value = &this->default_variable_name;
  1482         
  1620         
  1483             symbol_c *IN_type_symbol = param_data_type;
  1621             symbol_c *IN_type_symbol = param_data_type;
  1484             last_type_symbol = param_data_type;
  1622             last_type_symbol = param_data_type;
  1485             
  1623             
  1486             if(search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol))
  1624             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol))
  1487             {
  1625             {
  1488         
  1626         
       
  1627                 
       
  1628                 if (IN_type_symbol == NULL)
       
  1629                   IN_type_symbol = last_type_symbol;
  1489                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1630                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1490                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
  1631                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
  1491                 function_type_prefix = return_type_symbol;
  1632                 function_type_prefix = return_type_symbol;
  1492                 break;
  1633                 break;
  1493                 
  1634                 
  1512             symbol_c *IN_param_value = &this->default_variable_name;
  1653             symbol_c *IN_param_value = &this->default_variable_name;
  1513         
  1654         
  1514             symbol_c *IN_type_symbol = param_data_type;
  1655             symbol_c *IN_type_symbol = param_data_type;
  1515             last_type_symbol = param_data_type;
  1656             last_type_symbol = param_data_type;
  1516             
  1657             
  1517             if(search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol))
  1658             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol))
  1518             {
  1659             {
  1519         
  1660         
  1520                 function_name = (symbol_c*)(new pragma_c("__sint_to_string"));
  1661                 function_name = (symbol_c*)(new pragma_c("__sint_to_string"));
       
  1662                 
       
  1663                 if (IN_type_symbol == NULL)
       
  1664                   IN_type_symbol = last_type_symbol;
  1521                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1665                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1522                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
  1666                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
  1523                 function_type_prefix = return_type_symbol;
  1667                 function_type_prefix = return_type_symbol;
  1524                 break;
  1668                 break;
  1525                 
  1669                 
  1544             symbol_c *IN_param_value = &this->default_variable_name;
  1688             symbol_c *IN_param_value = &this->default_variable_name;
  1545         
  1689         
  1546             symbol_c *IN_type_symbol = param_data_type;
  1690             symbol_c *IN_type_symbol = param_data_type;
  1547             last_type_symbol = param_data_type;
  1691             last_type_symbol = param_data_type;
  1548             
  1692             
  1549             if(search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol))
  1693             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol))
  1550             {
  1694             {
  1551         
  1695         
       
  1696                 
       
  1697                 if (IN_type_symbol == NULL)
       
  1698                   IN_type_symbol = last_type_symbol;
  1552                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1699                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1553                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
  1700                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
  1554                 function_type_prefix = return_type_symbol;
  1701                 function_type_prefix = return_type_symbol;
  1555                 break;
  1702                 break;
  1556                 
  1703                 
  1575             symbol_c *IN_param_value = &this->default_variable_name;
  1722             symbol_c *IN_param_value = &this->default_variable_name;
  1576         
  1723         
  1577             symbol_c *IN_type_symbol = param_data_type;
  1724             symbol_c *IN_type_symbol = param_data_type;
  1578             last_type_symbol = param_data_type;
  1725             last_type_symbol = param_data_type;
  1579             
  1726             
  1580             if(search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol))
  1727             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol))
  1581             {
  1728             {
  1582         
  1729         
       
  1730                 
       
  1731                 if (IN_type_symbol == NULL)
       
  1732                   IN_type_symbol = last_type_symbol;
  1583                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1733                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1584                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
  1734                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
  1585                 function_type_prefix = return_type_symbol;
  1735                 function_type_prefix = return_type_symbol;
  1586                 break;
  1736                 break;
  1587                 
  1737                 
  1606             symbol_c *IN_param_value = &this->default_variable_name;
  1756             symbol_c *IN_param_value = &this->default_variable_name;
  1607         
  1757         
  1608             symbol_c *IN_type_symbol = param_data_type;
  1758             symbol_c *IN_type_symbol = param_data_type;
  1609             last_type_symbol = param_data_type;
  1759             last_type_symbol = param_data_type;
  1610             
  1760             
  1611             if(search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol))
  1761             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol))
  1612             {
  1762             {
  1613         
  1763         
       
  1764                 
       
  1765                 if (IN_type_symbol == NULL)
       
  1766                   IN_type_symbol = last_type_symbol;
  1614                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1767                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1615                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
  1768                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
  1616                 function_type_prefix = return_type_symbol;
  1769                 function_type_prefix = return_type_symbol;
  1617                 break;
  1770                 break;
  1618                 
  1771                 
  1637             symbol_c *IN_param_value = &this->default_variable_name;
  1790             symbol_c *IN_param_value = &this->default_variable_name;
  1638         
  1791         
  1639             symbol_c *IN_type_symbol = param_data_type;
  1792             symbol_c *IN_type_symbol = param_data_type;
  1640             last_type_symbol = param_data_type;
  1793             last_type_symbol = param_data_type;
  1641             
  1794             
  1642             if(search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol))
  1795             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol))
  1643             {
  1796             {
  1644         
  1797         
       
  1798                 
       
  1799                 if (IN_type_symbol == NULL)
       
  1800                   IN_type_symbol = last_type_symbol;
  1645                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1801                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1646                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
  1802                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
  1647                 function_type_prefix = return_type_symbol;
  1803                 function_type_prefix = return_type_symbol;
  1648                 break;
  1804                 break;
  1649                 
  1805                 
  1668             symbol_c *IN_param_value = &this->default_variable_name;
  1824             symbol_c *IN_param_value = &this->default_variable_name;
  1669         
  1825         
  1670             symbol_c *IN_type_symbol = param_data_type;
  1826             symbol_c *IN_type_symbol = param_data_type;
  1671             last_type_symbol = param_data_type;
  1827             last_type_symbol = param_data_type;
  1672             
  1828             
  1673             if(search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol))
  1829             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol))
  1674             {
  1830             {
  1675         
  1831         
       
  1832                 
       
  1833                 if (IN_type_symbol == NULL)
       
  1834                   IN_type_symbol = last_type_symbol;
  1676                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1835                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1677                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
  1836                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
  1678                 function_type_prefix = return_type_symbol;
  1837                 function_type_prefix = return_type_symbol;
  1679                 break;
  1838                 break;
  1680                 
  1839                 
  1699             symbol_c *IN_param_value = &this->default_variable_name;
  1858             symbol_c *IN_param_value = &this->default_variable_name;
  1700         
  1859         
  1701             symbol_c *IN_type_symbol = param_data_type;
  1860             symbol_c *IN_type_symbol = param_data_type;
  1702             last_type_symbol = param_data_type;
  1861             last_type_symbol = param_data_type;
  1703             
  1862             
  1704             if(search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol))
  1863             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol))
  1705             {
  1864             {
  1706         
  1865         
       
  1866                 
       
  1867                 if (IN_type_symbol == NULL)
       
  1868                   IN_type_symbol = last_type_symbol;
  1707                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1869                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1708                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
  1870                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
  1709                 function_type_prefix = return_type_symbol;
  1871                 function_type_prefix = return_type_symbol;
  1710                 break;
  1872                 break;
  1711                 
  1873                 
  1730             symbol_c *IN_param_value = &this->default_variable_name;
  1892             symbol_c *IN_param_value = &this->default_variable_name;
  1731         
  1893         
  1732             symbol_c *IN_type_symbol = param_data_type;
  1894             symbol_c *IN_type_symbol = param_data_type;
  1733             last_type_symbol = param_data_type;
  1895             last_type_symbol = param_data_type;
  1734             
  1896             
  1735             if(search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol))
  1897             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol))
  1736             {
  1898             {
  1737         
  1899         
       
  1900                 
       
  1901                 if (IN_type_symbol == NULL)
       
  1902                   IN_type_symbol = last_type_symbol;
  1738                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1903                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1739                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
  1904                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
  1740                 function_type_prefix = return_type_symbol;
  1905                 function_type_prefix = return_type_symbol;
  1741                 break;
  1906                 break;
  1742                 
  1907                 
  1761             symbol_c *IN_param_value = &this->default_variable_name;
  1926             symbol_c *IN_param_value = &this->default_variable_name;
  1762         
  1927         
  1763             symbol_c *IN_type_symbol = param_data_type;
  1928             symbol_c *IN_type_symbol = param_data_type;
  1764             last_type_symbol = param_data_type;
  1929             last_type_symbol = param_data_type;
  1765             
  1930             
  1766             if(search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol))
  1931             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol))
  1767             {
  1932             {
  1768         
  1933         
  1769                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
  1934                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
       
  1935                 
       
  1936                 if (IN_type_symbol == NULL)
       
  1937                   IN_type_symbol = last_type_symbol;
  1770                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1938                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1771                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
  1939                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
  1772                 function_type_prefix = return_type_symbol;
  1940                 function_type_prefix = return_type_symbol;
  1773                 break;
  1941                 break;
  1774                 
  1942                 
  1793             symbol_c *IN_param_value = &this->default_variable_name;
  1961             symbol_c *IN_param_value = &this->default_variable_name;
  1794         
  1962         
  1795             symbol_c *IN_type_symbol = param_data_type;
  1963             symbol_c *IN_type_symbol = param_data_type;
  1796             last_type_symbol = param_data_type;
  1964             last_type_symbol = param_data_type;
  1797             
  1965             
  1798             if(search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol))
  1966             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol))
  1799             {
  1967             {
  1800         
  1968         
       
  1969                 
       
  1970                 if (IN_type_symbol == NULL)
       
  1971                   IN_type_symbol = last_type_symbol;
  1801                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1972                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1802                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
  1973                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
  1803                 function_type_prefix = return_type_symbol;
  1974                 function_type_prefix = return_type_symbol;
  1804                 break;
  1975                 break;
  1805                 
  1976                 
  1824             symbol_c *IN_param_value = &this->default_variable_name;
  1995             symbol_c *IN_param_value = &this->default_variable_name;
  1825         
  1996         
  1826             symbol_c *IN_type_symbol = param_data_type;
  1997             symbol_c *IN_type_symbol = param_data_type;
  1827             last_type_symbol = param_data_type;
  1998             last_type_symbol = param_data_type;
  1828             
  1999             
  1829             if(search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol))
  2000             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol))
  1830             {
  2001             {
  1831         
  2002         
       
  2003                 
       
  2004                 if (IN_type_symbol == NULL)
       
  2005                   IN_type_symbol = last_type_symbol;
  1832                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2006                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1833                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
  2007                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
  1834                 function_type_prefix = return_type_symbol;
  2008                 function_type_prefix = return_type_symbol;
  1835                 break;
  2009                 break;
  1836                 
  2010                 
  1855             symbol_c *IN_param_value = &this->default_variable_name;
  2029             symbol_c *IN_param_value = &this->default_variable_name;
  1856         
  2030         
  1857             symbol_c *IN_type_symbol = param_data_type;
  2031             symbol_c *IN_type_symbol = param_data_type;
  1858             last_type_symbol = param_data_type;
  2032             last_type_symbol = param_data_type;
  1859             
  2033             
  1860             if(search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol))
  2034             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol))
  1861             {
  2035             {
  1862         
  2036         
       
  2037                 
       
  2038                 if (IN_type_symbol == NULL)
       
  2039                   IN_type_symbol = last_type_symbol;
  1863                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2040                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1864                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
  2041                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
  1865                 function_type_prefix = return_type_symbol;
  2042                 function_type_prefix = return_type_symbol;
  1866                 break;
  2043                 break;
  1867                 
  2044                 
  1886             symbol_c *IN_param_value = &this->default_variable_name;
  2063             symbol_c *IN_param_value = &this->default_variable_name;
  1887         
  2064         
  1888             symbol_c *IN_type_symbol = param_data_type;
  2065             symbol_c *IN_type_symbol = param_data_type;
  1889             last_type_symbol = param_data_type;
  2066             last_type_symbol = param_data_type;
  1890             
  2067             
  1891             if(search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol))
  2068             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol))
  1892             {
  2069             {
  1893         
  2070         
       
  2071                 
       
  2072                 if (IN_type_symbol == NULL)
       
  2073                   IN_type_symbol = last_type_symbol;
  1894                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2074                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1895                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
  2075                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
  1896                 function_type_prefix = return_type_symbol;
  2076                 function_type_prefix = return_type_symbol;
  1897                 break;
  2077                 break;
  1898                 
  2078                 
  1917             symbol_c *IN_param_value = &this->default_variable_name;
  2097             symbol_c *IN_param_value = &this->default_variable_name;
  1918         
  2098         
  1919             symbol_c *IN_type_symbol = param_data_type;
  2099             symbol_c *IN_type_symbol = param_data_type;
  1920             last_type_symbol = param_data_type;
  2100             last_type_symbol = param_data_type;
  1921             
  2101             
  1922             if(search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol))
  2102             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol))
  1923             {
  2103             {
  1924         
  2104         
  1925                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
  2105                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
       
  2106                 
       
  2107                 if (IN_type_symbol == NULL)
       
  2108                   IN_type_symbol = last_type_symbol;
  1926                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2109                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1927                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
  2110                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
  1928                 function_type_prefix = return_type_symbol;
  2111                 function_type_prefix = return_type_symbol;
  1929                 break;
  2112                 break;
  1930                 
  2113                 
  1949             symbol_c *IN_param_value = &this->default_variable_name;
  2132             symbol_c *IN_param_value = &this->default_variable_name;
  1950         
  2133         
  1951             symbol_c *IN_type_symbol = param_data_type;
  2134             symbol_c *IN_type_symbol = param_data_type;
  1952             last_type_symbol = param_data_type;
  2135             last_type_symbol = param_data_type;
  1953             
  2136             
  1954             if(search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol))
  2137             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol))
  1955             {
  2138             {
  1956         
  2139         
       
  2140                 
       
  2141                 if (IN_type_symbol == NULL)
       
  2142                   IN_type_symbol = last_type_symbol;
  1957                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2143                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1958                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
  2144                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
  1959                 function_type_prefix = return_type_symbol;
  2145                 function_type_prefix = return_type_symbol;
  1960                 break;
  2146                 break;
  1961                 
  2147                 
  1980             symbol_c *IN_param_value = &this->default_variable_name;
  2166             symbol_c *IN_param_value = &this->default_variable_name;
  1981         
  2167         
  1982             symbol_c *IN_type_symbol = param_data_type;
  2168             symbol_c *IN_type_symbol = param_data_type;
  1983             last_type_symbol = param_data_type;
  2169             last_type_symbol = param_data_type;
  1984             
  2170             
  1985             if(search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol))
  2171             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol))
  1986             {
  2172             {
  1987         
  2173         
  1988                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
  2174                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
       
  2175                 
       
  2176                 if (IN_type_symbol == NULL)
       
  2177                   IN_type_symbol = last_type_symbol;
  1989                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2178                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  1990                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
  2179                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
  1991                 function_type_prefix = return_type_symbol;
  2180                 function_type_prefix = return_type_symbol;
  1992                 break;
  2181                 break;
  1993                 
  2182                 
  2012             symbol_c *IN_param_value = &this->default_variable_name;
  2201             symbol_c *IN_param_value = &this->default_variable_name;
  2013         
  2202         
  2014             symbol_c *IN_type_symbol = param_data_type;
  2203             symbol_c *IN_type_symbol = param_data_type;
  2015             last_type_symbol = param_data_type;
  2204             last_type_symbol = param_data_type;
  2016             
  2205             
  2017             if(search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol))
  2206             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol))
  2018             {
  2207             {
  2019         
  2208         
  2020                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
  2209                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
       
  2210                 
       
  2211                 if (IN_type_symbol == NULL)
       
  2212                   IN_type_symbol = last_type_symbol;
  2021                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2213                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2022                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
  2214                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
  2023                 function_type_prefix = return_type_symbol;
  2215                 function_type_prefix = return_type_symbol;
  2024                 break;
  2216                 break;
  2025                 
  2217                 
  2044             symbol_c *IN_param_value = &this->default_variable_name;
  2236             symbol_c *IN_param_value = &this->default_variable_name;
  2045         
  2237         
  2046             symbol_c *IN_type_symbol = param_data_type;
  2238             symbol_c *IN_type_symbol = param_data_type;
  2047             last_type_symbol = param_data_type;
  2239             last_type_symbol = param_data_type;
  2048             
  2240             
  2049             if(search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol))
  2241             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol))
  2050             {
  2242             {
  2051         
  2243         
       
  2244                 
       
  2245                 if (IN_type_symbol == NULL)
       
  2246                   IN_type_symbol = last_type_symbol;
  2052                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2247                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2053                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
  2248                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
  2054                 function_type_prefix = return_type_symbol;
  2249                 function_type_prefix = return_type_symbol;
  2055                 break;
  2250                 break;
  2056                 
  2251                 
  2075             symbol_c *IN_param_value = &this->default_variable_name;
  2270             symbol_c *IN_param_value = &this->default_variable_name;
  2076         
  2271         
  2077             symbol_c *IN_type_symbol = param_data_type;
  2272             symbol_c *IN_type_symbol = param_data_type;
  2078             last_type_symbol = param_data_type;
  2273             last_type_symbol = param_data_type;
  2079             
  2274             
  2080             if(search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol))
  2275             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol))
  2081             {
  2276             {
  2082         
  2277         
       
  2278                 
       
  2279                 if (IN_type_symbol == NULL)
       
  2280                   IN_type_symbol = last_type_symbol;
  2083                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2281                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2084                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
  2282                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
  2085                 function_type_prefix = return_type_symbol;
  2283                 function_type_prefix = return_type_symbol;
  2086                 break;
  2284                 break;
  2087                 
  2285                 
  2106             symbol_c *IN_param_value = &this->default_variable_name;
  2304             symbol_c *IN_param_value = &this->default_variable_name;
  2107         
  2305         
  2108             symbol_c *IN_type_symbol = param_data_type;
  2306             symbol_c *IN_type_symbol = param_data_type;
  2109             last_type_symbol = param_data_type;
  2307             last_type_symbol = param_data_type;
  2110             
  2308             
  2111             if(search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol))
  2309             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol))
  2112             {
  2310             {
  2113         
  2311         
  2114                 function_name = (symbol_c*)(new pragma_c("__sint_to_string"));
  2312                 function_name = (symbol_c*)(new pragma_c("__sint_to_string"));
       
  2313                 
       
  2314                 if (IN_type_symbol == NULL)
       
  2315                   IN_type_symbol = last_type_symbol;
  2115                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2316                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2116                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
  2317                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
  2117                 function_type_prefix = return_type_symbol;
  2318                 function_type_prefix = return_type_symbol;
  2118                 break;
  2319                 break;
  2119                 
  2320                 
  2138             symbol_c *IN_param_value = &this->default_variable_name;
  2339             symbol_c *IN_param_value = &this->default_variable_name;
  2139         
  2340         
  2140             symbol_c *IN_type_symbol = param_data_type;
  2341             symbol_c *IN_type_symbol = param_data_type;
  2141             last_type_symbol = param_data_type;
  2342             last_type_symbol = param_data_type;
  2142             
  2343             
  2143             if(search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol))
  2344             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol))
  2144             {
  2345             {
  2145         
  2346         
       
  2347                 
       
  2348                 if (IN_type_symbol == NULL)
       
  2349                   IN_type_symbol = last_type_symbol;
  2146                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2350                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2147                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
  2351                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
  2148                 function_type_prefix = return_type_symbol;
  2352                 function_type_prefix = return_type_symbol;
  2149                 break;
  2353                 break;
  2150                 
  2354                 
  2169             symbol_c *IN_param_value = &this->default_variable_name;
  2373             symbol_c *IN_param_value = &this->default_variable_name;
  2170         
  2374         
  2171             symbol_c *IN_type_symbol = param_data_type;
  2375             symbol_c *IN_type_symbol = param_data_type;
  2172             last_type_symbol = param_data_type;
  2376             last_type_symbol = param_data_type;
  2173             
  2377             
  2174             if(search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol))
  2378             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol))
  2175             {
  2379             {
  2176         
  2380         
       
  2381                 
       
  2382                 if (IN_type_symbol == NULL)
       
  2383                   IN_type_symbol = last_type_symbol;
  2177                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2384                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2178                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
  2385                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
  2179                 function_type_prefix = return_type_symbol;
  2386                 function_type_prefix = return_type_symbol;
  2180                 break;
  2387                 break;
  2181                 
  2388                 
  2200             symbol_c *IN_param_value = &this->default_variable_name;
  2407             symbol_c *IN_param_value = &this->default_variable_name;
  2201         
  2408         
  2202             symbol_c *IN_type_symbol = param_data_type;
  2409             symbol_c *IN_type_symbol = param_data_type;
  2203             last_type_symbol = param_data_type;
  2410             last_type_symbol = param_data_type;
  2204             
  2411             
  2205             if(search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol))
  2412             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol))
  2206             {
  2413             {
  2207         
  2414         
       
  2415                 
       
  2416                 if (IN_type_symbol == NULL)
       
  2417                   IN_type_symbol = last_type_symbol;
  2208                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2418                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2209                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
  2419                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
  2210                 function_type_prefix = return_type_symbol;
  2420                 function_type_prefix = return_type_symbol;
  2211                 break;
  2421                 break;
  2212                 
  2422                 
  2231             symbol_c *IN_param_value = &this->default_variable_name;
  2441             symbol_c *IN_param_value = &this->default_variable_name;
  2232         
  2442         
  2233             symbol_c *IN_type_symbol = param_data_type;
  2443             symbol_c *IN_type_symbol = param_data_type;
  2234             last_type_symbol = param_data_type;
  2444             last_type_symbol = param_data_type;
  2235             
  2445             
  2236             if(search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol))
  2446             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol))
  2237             {
  2447             {
  2238         
  2448         
       
  2449                 
       
  2450                 if (IN_type_symbol == NULL)
       
  2451                   IN_type_symbol = last_type_symbol;
  2239                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2452                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2240                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
  2453                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
  2241                 function_type_prefix = return_type_symbol;
  2454                 function_type_prefix = return_type_symbol;
  2242                 break;
  2455                 break;
  2243                 
  2456                 
  2262             symbol_c *IN_param_value = &this->default_variable_name;
  2475             symbol_c *IN_param_value = &this->default_variable_name;
  2263         
  2476         
  2264             symbol_c *IN_type_symbol = param_data_type;
  2477             symbol_c *IN_type_symbol = param_data_type;
  2265             last_type_symbol = param_data_type;
  2478             last_type_symbol = param_data_type;
  2266             
  2479             
  2267             if(search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol))
  2480             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol))
  2268             {
  2481             {
  2269         
  2482         
       
  2483                 
       
  2484                 if (IN_type_symbol == NULL)
       
  2485                   IN_type_symbol = last_type_symbol;
  2270                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2486                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2271                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
  2487                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
  2272                 function_type_prefix = return_type_symbol;
  2488                 function_type_prefix = return_type_symbol;
  2273                 break;
  2489                 break;
  2274                 
  2490                 
  2293             symbol_c *IN_param_value = &this->default_variable_name;
  2509             symbol_c *IN_param_value = &this->default_variable_name;
  2294         
  2510         
  2295             symbol_c *IN_type_symbol = param_data_type;
  2511             symbol_c *IN_type_symbol = param_data_type;
  2296             last_type_symbol = param_data_type;
  2512             last_type_symbol = param_data_type;
  2297             
  2513             
  2298             if(search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol))
  2514             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol))
  2299             {
  2515             {
  2300         
  2516         
       
  2517                 
       
  2518                 if (IN_type_symbol == NULL)
       
  2519                   IN_type_symbol = last_type_symbol;
  2301                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2520                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2302                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
  2521                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
  2303                 function_type_prefix = return_type_symbol;
  2522                 function_type_prefix = return_type_symbol;
  2304                 break;
  2523                 break;
  2305                 
  2524                 
  2324             symbol_c *IN_param_value = &this->default_variable_name;
  2543             symbol_c *IN_param_value = &this->default_variable_name;
  2325         
  2544         
  2326             symbol_c *IN_type_symbol = param_data_type;
  2545             symbol_c *IN_type_symbol = param_data_type;
  2327             last_type_symbol = param_data_type;
  2546             last_type_symbol = param_data_type;
  2328             
  2547             
  2329             if(search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol))
  2548             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol))
  2330             {
  2549             {
  2331         
  2550         
       
  2551                 
       
  2552                 if (IN_type_symbol == NULL)
       
  2553                   IN_type_symbol = last_type_symbol;
  2332                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2554                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2333                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
  2555                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
  2334                 function_type_prefix = return_type_symbol;
  2556                 function_type_prefix = return_type_symbol;
  2335                 break;
  2557                 break;
  2336                 
  2558                 
  2355             symbol_c *IN_param_value = &this->default_variable_name;
  2577             symbol_c *IN_param_value = &this->default_variable_name;
  2356         
  2578         
  2357             symbol_c *IN_type_symbol = param_data_type;
  2579             symbol_c *IN_type_symbol = param_data_type;
  2358             last_type_symbol = param_data_type;
  2580             last_type_symbol = param_data_type;
  2359             
  2581             
  2360             if(search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol))
  2582             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol))
  2361             {
  2583             {
  2362         
  2584         
  2363                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
  2585                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
       
  2586                 
       
  2587                 if (IN_type_symbol == NULL)
       
  2588                   IN_type_symbol = last_type_symbol;
  2364                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2589                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2365                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
  2590                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
  2366                 function_type_prefix = return_type_symbol;
  2591                 function_type_prefix = return_type_symbol;
  2367                 break;
  2592                 break;
  2368                 
  2593                 
  2387             symbol_c *IN_param_value = &this->default_variable_name;
  2612             symbol_c *IN_param_value = &this->default_variable_name;
  2388         
  2613         
  2389             symbol_c *IN_type_symbol = param_data_type;
  2614             symbol_c *IN_type_symbol = param_data_type;
  2390             last_type_symbol = param_data_type;
  2615             last_type_symbol = param_data_type;
  2391             
  2616             
  2392             if(search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol))
  2617             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol))
  2393             {
  2618             {
  2394         
  2619         
       
  2620                 
       
  2621                 if (IN_type_symbol == NULL)
       
  2622                   IN_type_symbol = last_type_symbol;
  2395                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2623                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2396                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
  2624                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
  2397                 function_type_prefix = return_type_symbol;
  2625                 function_type_prefix = return_type_symbol;
  2398                 break;
  2626                 break;
  2399                 
  2627                 
  2418             symbol_c *IN_param_value = &this->default_variable_name;
  2646             symbol_c *IN_param_value = &this->default_variable_name;
  2419         
  2647         
  2420             symbol_c *IN_type_symbol = param_data_type;
  2648             symbol_c *IN_type_symbol = param_data_type;
  2421             last_type_symbol = param_data_type;
  2649             last_type_symbol = param_data_type;
  2422             
  2650             
  2423             if(search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol))
  2651             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol))
  2424             {
  2652             {
  2425         
  2653         
  2426                 function_name = (symbol_c*)(new pragma_c("__time_to_real"));
  2654                 function_name = (symbol_c*)(new pragma_c("__time_to_real"));
       
  2655                 
       
  2656                 if (IN_type_symbol == NULL)
       
  2657                   IN_type_symbol = last_type_symbol;
  2427                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2658                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2428                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
  2659                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
  2429                 function_type_prefix = return_type_symbol;
  2660                 function_type_prefix = return_type_symbol;
  2430                 break;
  2661                 break;
  2431                 
  2662                 
  2450             symbol_c *IN_param_value = &this->default_variable_name;
  2681             symbol_c *IN_param_value = &this->default_variable_name;
  2451         
  2682         
  2452             symbol_c *IN_type_symbol = param_data_type;
  2683             symbol_c *IN_type_symbol = param_data_type;
  2453             last_type_symbol = param_data_type;
  2684             last_type_symbol = param_data_type;
  2454             
  2685             
  2455             if(search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol))
  2686             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol))
  2456             {
  2687             {
  2457         
  2688         
  2458                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
  2689                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
       
  2690                 
       
  2691                 if (IN_type_symbol == NULL)
       
  2692                   IN_type_symbol = last_type_symbol;
  2459                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2693                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2460                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
  2694                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
  2461                 function_type_prefix = return_type_symbol;
  2695                 function_type_prefix = return_type_symbol;
  2462                 break;
  2696                 break;
  2463                 
  2697                 
  2482             symbol_c *IN_param_value = &this->default_variable_name;
  2716             symbol_c *IN_param_value = &this->default_variable_name;
  2483         
  2717         
  2484             symbol_c *IN_type_symbol = param_data_type;
  2718             symbol_c *IN_type_symbol = param_data_type;
  2485             last_type_symbol = param_data_type;
  2719             last_type_symbol = param_data_type;
  2486             
  2720             
  2487             if(search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol))
  2721             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol))
  2488             {
  2722             {
  2489         
  2723         
  2490                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
  2724                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
       
  2725                 
       
  2726                 if (IN_type_symbol == NULL)
       
  2727                   IN_type_symbol = last_type_symbol;
  2491                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2728                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2492                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
  2729                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
  2493                 function_type_prefix = return_type_symbol;
  2730                 function_type_prefix = return_type_symbol;
  2494                 break;
  2731                 break;
  2495                 
  2732                 
  2514             symbol_c *IN_param_value = &this->default_variable_name;
  2751             symbol_c *IN_param_value = &this->default_variable_name;
  2515         
  2752         
  2516             symbol_c *IN_type_symbol = param_data_type;
  2753             symbol_c *IN_type_symbol = param_data_type;
  2517             last_type_symbol = param_data_type;
  2754             last_type_symbol = param_data_type;
  2518             
  2755             
  2519             if(search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol))
  2756             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol))
  2520             {
  2757             {
  2521         
  2758         
  2522                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
  2759                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
       
  2760                 
       
  2761                 if (IN_type_symbol == NULL)
       
  2762                   IN_type_symbol = last_type_symbol;
  2523                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2763                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2524                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
  2764                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
  2525                 function_type_prefix = return_type_symbol;
  2765                 function_type_prefix = return_type_symbol;
  2526                 break;
  2766                 break;
  2527                 
  2767                 
  2546             symbol_c *IN_param_value = &this->default_variable_name;
  2786             symbol_c *IN_param_value = &this->default_variable_name;
  2547         
  2787         
  2548             symbol_c *IN_type_symbol = param_data_type;
  2788             symbol_c *IN_type_symbol = param_data_type;
  2549             last_type_symbol = param_data_type;
  2789             last_type_symbol = param_data_type;
  2550             
  2790             
  2551             if(search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol))
  2791             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol))
  2552             {
  2792             {
  2553         
  2793         
  2554                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
  2794                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
       
  2795                 
       
  2796                 if (IN_type_symbol == NULL)
       
  2797                   IN_type_symbol = last_type_symbol;
  2555                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2798                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2556                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
  2799                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
  2557                 function_type_prefix = return_type_symbol;
  2800                 function_type_prefix = return_type_symbol;
  2558                 break;
  2801                 break;
  2559                 
  2802                 
  2578             symbol_c *IN_param_value = &this->default_variable_name;
  2821             symbol_c *IN_param_value = &this->default_variable_name;
  2579         
  2822         
  2580             symbol_c *IN_type_symbol = param_data_type;
  2823             symbol_c *IN_type_symbol = param_data_type;
  2581             last_type_symbol = param_data_type;
  2824             last_type_symbol = param_data_type;
  2582             
  2825             
  2583             if(search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol))
  2826             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol))
  2584             {
  2827             {
  2585         
  2828         
  2586                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
  2829                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
       
  2830                 
       
  2831                 if (IN_type_symbol == NULL)
       
  2832                   IN_type_symbol = last_type_symbol;
  2587                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2833                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2588                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
  2834                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
  2589                 function_type_prefix = return_type_symbol;
  2835                 function_type_prefix = return_type_symbol;
  2590                 break;
  2836                 break;
  2591                 
  2837                 
  2610             symbol_c *IN_param_value = &this->default_variable_name;
  2856             symbol_c *IN_param_value = &this->default_variable_name;
  2611         
  2857         
  2612             symbol_c *IN_type_symbol = param_data_type;
  2858             symbol_c *IN_type_symbol = param_data_type;
  2613             last_type_symbol = param_data_type;
  2859             last_type_symbol = param_data_type;
  2614             
  2860             
  2615             if(search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol))
  2861             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol))
  2616             {
  2862             {
  2617         
  2863         
  2618                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
  2864                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
       
  2865                 
       
  2866                 if (IN_type_symbol == NULL)
       
  2867                   IN_type_symbol = last_type_symbol;
  2619                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2868                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2620                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
  2869                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
  2621                 function_type_prefix = return_type_symbol;
  2870                 function_type_prefix = return_type_symbol;
  2622                 break;
  2871                 break;
  2623                 
  2872                 
  2642             symbol_c *IN_param_value = &this->default_variable_name;
  2891             symbol_c *IN_param_value = &this->default_variable_name;
  2643         
  2892         
  2644             symbol_c *IN_type_symbol = param_data_type;
  2893             symbol_c *IN_type_symbol = param_data_type;
  2645             last_type_symbol = param_data_type;
  2894             last_type_symbol = param_data_type;
  2646             
  2895             
  2647             if(search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol))
  2896             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol))
  2648             {
  2897             {
  2649         
  2898         
  2650                 function_name = (symbol_c*)(new pragma_c("__date_to_string"));
  2899                 function_name = (symbol_c*)(new pragma_c("__date_to_string"));
       
  2900                 
       
  2901                 if (IN_type_symbol == NULL)
       
  2902                   IN_type_symbol = last_type_symbol;
  2651                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2903                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2652                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
  2904                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
  2653                 function_type_prefix = return_type_symbol;
  2905                 function_type_prefix = return_type_symbol;
  2654                 break;
  2906                 break;
  2655                 
  2907                 
  2674             symbol_c *IN_param_value = &this->default_variable_name;
  2926             symbol_c *IN_param_value = &this->default_variable_name;
  2675         
  2927         
  2676             symbol_c *IN_type_symbol = param_data_type;
  2928             symbol_c *IN_type_symbol = param_data_type;
  2677             last_type_symbol = param_data_type;
  2929             last_type_symbol = param_data_type;
  2678             
  2930             
  2679             if(search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol))
  2931             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol))
  2680             {
  2932             {
  2681         
  2933         
  2682                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
  2934                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
       
  2935                 
       
  2936                 if (IN_type_symbol == NULL)
       
  2937                   IN_type_symbol = last_type_symbol;
  2683                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2938                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2684                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
  2939                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
  2685                 function_type_prefix = return_type_symbol;
  2940                 function_type_prefix = return_type_symbol;
  2686                 break;
  2941                 break;
  2687                 
  2942                 
  2706             symbol_c *IN_param_value = &this->default_variable_name;
  2961             symbol_c *IN_param_value = &this->default_variable_name;
  2707         
  2962         
  2708             symbol_c *IN_type_symbol = param_data_type;
  2963             symbol_c *IN_type_symbol = param_data_type;
  2709             last_type_symbol = param_data_type;
  2964             last_type_symbol = param_data_type;
  2710             
  2965             
  2711             if(search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol))
  2966             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol))
  2712             {
  2967             {
  2713         
  2968         
  2714                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
  2969                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
       
  2970                 
       
  2971                 if (IN_type_symbol == NULL)
       
  2972                   IN_type_symbol = last_type_symbol;
  2715                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2973                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2716                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
  2974                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
  2717                 function_type_prefix = return_type_symbol;
  2975                 function_type_prefix = return_type_symbol;
  2718                 break;
  2976                 break;
  2719                 
  2977                 
  2738             symbol_c *IN_param_value = &this->default_variable_name;
  2996             symbol_c *IN_param_value = &this->default_variable_name;
  2739         
  2997         
  2740             symbol_c *IN_type_symbol = param_data_type;
  2998             symbol_c *IN_type_symbol = param_data_type;
  2741             last_type_symbol = param_data_type;
  2999             last_type_symbol = param_data_type;
  2742             
  3000             
  2743             if(search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol))
  3001             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol))
  2744             {
  3002             {
  2745         
  3003         
  2746                 function_name = (symbol_c*)(new pragma_c("__time_to_real"));
  3004                 function_name = (symbol_c*)(new pragma_c("__time_to_real"));
       
  3005                 
       
  3006                 if (IN_type_symbol == NULL)
       
  3007                   IN_type_symbol = last_type_symbol;
  2747                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3008                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2748                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
  3009                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
  2749                 function_type_prefix = return_type_symbol;
  3010                 function_type_prefix = return_type_symbol;
  2750                 break;
  3011                 break;
  2751                 
  3012                 
  2770             symbol_c *IN_param_value = &this->default_variable_name;
  3031             symbol_c *IN_param_value = &this->default_variable_name;
  2771         
  3032         
  2772             symbol_c *IN_type_symbol = param_data_type;
  3033             symbol_c *IN_type_symbol = param_data_type;
  2773             last_type_symbol = param_data_type;
  3034             last_type_symbol = param_data_type;
  2774             
  3035             
  2775             if(search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol))
  3036             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol))
  2776             {
  3037             {
  2777         
  3038         
  2778                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
  3039                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
       
  3040                 
       
  3041                 if (IN_type_symbol == NULL)
       
  3042                   IN_type_symbol = last_type_symbol;
  2779                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3043                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2780                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
  3044                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
  2781                 function_type_prefix = return_type_symbol;
  3045                 function_type_prefix = return_type_symbol;
  2782                 break;
  3046                 break;
  2783                 
  3047                 
  2802             symbol_c *IN_param_value = &this->default_variable_name;
  3066             symbol_c *IN_param_value = &this->default_variable_name;
  2803         
  3067         
  2804             symbol_c *IN_type_symbol = param_data_type;
  3068             symbol_c *IN_type_symbol = param_data_type;
  2805             last_type_symbol = param_data_type;
  3069             last_type_symbol = param_data_type;
  2806             
  3070             
  2807             if(search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol))
  3071             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol))
  2808             {
  3072             {
  2809         
  3073         
  2810                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
  3074                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
       
  3075                 
       
  3076                 if (IN_type_symbol == NULL)
       
  3077                   IN_type_symbol = last_type_symbol;
  2811                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3078                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2812                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
  3079                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
  2813                 function_type_prefix = return_type_symbol;
  3080                 function_type_prefix = return_type_symbol;
  2814                 break;
  3081                 break;
  2815                 
  3082                 
  2834             symbol_c *IN_param_value = &this->default_variable_name;
  3101             symbol_c *IN_param_value = &this->default_variable_name;
  2835         
  3102         
  2836             symbol_c *IN_type_symbol = param_data_type;
  3103             symbol_c *IN_type_symbol = param_data_type;
  2837             last_type_symbol = param_data_type;
  3104             last_type_symbol = param_data_type;
  2838             
  3105             
  2839             if(search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol))
  3106             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol))
  2840             {
  3107             {
  2841         
  3108         
  2842                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
  3109                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
       
  3110                 
       
  3111                 if (IN_type_symbol == NULL)
       
  3112                   IN_type_symbol = last_type_symbol;
  2843                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3113                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2844                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
  3114                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
  2845                 function_type_prefix = return_type_symbol;
  3115                 function_type_prefix = return_type_symbol;
  2846                 break;
  3116                 break;
  2847                 
  3117                 
  2866             symbol_c *IN_param_value = &this->default_variable_name;
  3136             symbol_c *IN_param_value = &this->default_variable_name;
  2867         
  3137         
  2868             symbol_c *IN_type_symbol = param_data_type;
  3138             symbol_c *IN_type_symbol = param_data_type;
  2869             last_type_symbol = param_data_type;
  3139             last_type_symbol = param_data_type;
  2870             
  3140             
  2871             if(search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol))
  3141             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol))
  2872             {
  3142             {
  2873         
  3143         
  2874                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
  3144                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
       
  3145                 
       
  3146                 if (IN_type_symbol == NULL)
       
  3147                   IN_type_symbol = last_type_symbol;
  2875                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3148                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2876                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
  3149                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
  2877                 function_type_prefix = return_type_symbol;
  3150                 function_type_prefix = return_type_symbol;
  2878                 break;
  3151                 break;
  2879                 
  3152                 
  2898             symbol_c *IN_param_value = &this->default_variable_name;
  3171             symbol_c *IN_param_value = &this->default_variable_name;
  2899         
  3172         
  2900             symbol_c *IN_type_symbol = param_data_type;
  3173             symbol_c *IN_type_symbol = param_data_type;
  2901             last_type_symbol = param_data_type;
  3174             last_type_symbol = param_data_type;
  2902             
  3175             
  2903             if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
  3176             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
  2904             {
  3177             {
  2905         
  3178         
       
  3179                 
       
  3180                 if (IN_type_symbol == NULL)
       
  3181                   IN_type_symbol = last_type_symbol;
  2906                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3182                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2907                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
  3183                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
  2908                 function_type_prefix = return_type_symbol;
  3184                 function_type_prefix = return_type_symbol;
  2909                 break;
  3185                 break;
  2910                 
  3186                 
  2929             symbol_c *IN_param_value = &this->default_variable_name;
  3205             symbol_c *IN_param_value = &this->default_variable_name;
  2930         
  3206         
  2931             symbol_c *IN_type_symbol = param_data_type;
  3207             symbol_c *IN_type_symbol = param_data_type;
  2932             last_type_symbol = param_data_type;
  3208             last_type_symbol = param_data_type;
  2933             
  3209             
  2934             if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
  3210             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
  2935             {
  3211             {
  2936         
  3212         
       
  3213                 
       
  3214                 if (IN_type_symbol == NULL)
       
  3215                   IN_type_symbol = last_type_symbol;
  2937                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3216                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2938                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
  3217                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
  2939                 function_type_prefix = return_type_symbol;
  3218                 function_type_prefix = return_type_symbol;
  2940                 break;
  3219                 break;
  2941                 
  3220                 
  2960             symbol_c *IN_param_value = &this->default_variable_name;
  3239             symbol_c *IN_param_value = &this->default_variable_name;
  2961         
  3240         
  2962             symbol_c *IN_type_symbol = param_data_type;
  3241             symbol_c *IN_type_symbol = param_data_type;
  2963             last_type_symbol = param_data_type;
  3242             last_type_symbol = param_data_type;
  2964             
  3243             
  2965             if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
  3244             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
  2966             {
  3245             {
  2967         
  3246         
       
  3247                 
       
  3248                 if (IN_type_symbol == NULL)
       
  3249                   IN_type_symbol = last_type_symbol;
  2968                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3250                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  2969                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
  3251                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
  2970                 function_type_prefix = return_type_symbol;
  3252                 function_type_prefix = return_type_symbol;
  2971                 break;
  3253                 break;
  2972                 
  3254                 
  2991             symbol_c *IN_param_value = &this->default_variable_name;
  3273             symbol_c *IN_param_value = &this->default_variable_name;
  2992         
  3274         
  2993             symbol_c *IN_type_symbol = param_data_type;
  3275             symbol_c *IN_type_symbol = param_data_type;
  2994             last_type_symbol = param_data_type;
  3276             last_type_symbol = param_data_type;
  2995             
  3277             
  2996             if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
  3278             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
  2997             {
  3279             {
  2998         
  3280         
       
  3281                 
       
  3282                 if (IN_type_symbol == NULL)
       
  3283                   IN_type_symbol = last_type_symbol;
  2999                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3284                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3000                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
  3285                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
  3001                 function_type_prefix = return_type_symbol;
  3286                 function_type_prefix = return_type_symbol;
  3002                 break;
  3287                 break;
  3003                 
  3288                 
  3022             symbol_c *IN_param_value = &this->default_variable_name;
  3307             symbol_c *IN_param_value = &this->default_variable_name;
  3023         
  3308         
  3024             symbol_c *IN_type_symbol = param_data_type;
  3309             symbol_c *IN_type_symbol = param_data_type;
  3025             last_type_symbol = param_data_type;
  3310             last_type_symbol = param_data_type;
  3026             
  3311             
  3027             if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
  3312             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
  3028             {
  3313             {
  3029         
  3314         
  3030                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
  3315                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
       
  3316                 
       
  3317                 if (IN_type_symbol == NULL)
       
  3318                   IN_type_symbol = last_type_symbol;
  3031                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3319                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3032                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
  3320                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
  3033                 function_type_prefix = return_type_symbol;
  3321                 function_type_prefix = return_type_symbol;
  3034                 break;
  3322                 break;
  3035                 
  3323                 
  3054             symbol_c *IN_param_value = &this->default_variable_name;
  3342             symbol_c *IN_param_value = &this->default_variable_name;
  3055         
  3343         
  3056             symbol_c *IN_type_symbol = param_data_type;
  3344             symbol_c *IN_type_symbol = param_data_type;
  3057             last_type_symbol = param_data_type;
  3345             last_type_symbol = param_data_type;
  3058             
  3346             
  3059             if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
  3347             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
  3060             {
  3348             {
  3061         
  3349         
  3062                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
  3350                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
       
  3351                 
       
  3352                 if (IN_type_symbol == NULL)
       
  3353                   IN_type_symbol = last_type_symbol;
  3063                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3354                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3064                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
  3355                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
  3065                 function_type_prefix = return_type_symbol;
  3356                 function_type_prefix = return_type_symbol;
  3066                 break;
  3357                 break;
  3067                 
  3358                 
  3086             symbol_c *IN_param_value = &this->default_variable_name;
  3377             symbol_c *IN_param_value = &this->default_variable_name;
  3087         
  3378         
  3088             symbol_c *IN_type_symbol = param_data_type;
  3379             symbol_c *IN_type_symbol = param_data_type;
  3089             last_type_symbol = param_data_type;
  3380             last_type_symbol = param_data_type;
  3090             
  3381             
  3091             if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
  3382             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
  3092             {
  3383             {
  3093         
  3384         
  3094                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
  3385                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
       
  3386                 
       
  3387                 if (IN_type_symbol == NULL)
       
  3388                   IN_type_symbol = last_type_symbol;
  3095                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3389                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3096                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
  3390                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
  3097                 function_type_prefix = return_type_symbol;
  3391                 function_type_prefix = return_type_symbol;
  3098                 break;
  3392                 break;
  3099                 
  3393                 
  3118             symbol_c *IN_param_value = &this->default_variable_name;
  3412             symbol_c *IN_param_value = &this->default_variable_name;
  3119         
  3413         
  3120             symbol_c *IN_type_symbol = param_data_type;
  3414             symbol_c *IN_type_symbol = param_data_type;
  3121             last_type_symbol = param_data_type;
  3415             last_type_symbol = param_data_type;
  3122             
  3416             
  3123             if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
  3417             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
  3124             {
  3418             {
  3125         
  3419         
       
  3420                 
       
  3421                 if (IN_type_symbol == NULL)
       
  3422                   IN_type_symbol = last_type_symbol;
  3126                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3423                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3127                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
  3424                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
  3128                 function_type_prefix = return_type_symbol;
  3425                 function_type_prefix = return_type_symbol;
  3129                 break;
  3426                 break;
  3130                 
  3427                 
  3149             symbol_c *IN_param_value = &this->default_variable_name;
  3446             symbol_c *IN_param_value = &this->default_variable_name;
  3150         
  3447         
  3151             symbol_c *IN_type_symbol = param_data_type;
  3448             symbol_c *IN_type_symbol = param_data_type;
  3152             last_type_symbol = param_data_type;
  3449             last_type_symbol = param_data_type;
  3153             
  3450             
  3154             if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
  3451             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
  3155             {
  3452             {
  3156         
  3453         
       
  3454                 
       
  3455                 if (IN_type_symbol == NULL)
       
  3456                   IN_type_symbol = last_type_symbol;
  3157                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3457                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3158                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
  3458                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
  3159                 function_type_prefix = return_type_symbol;
  3459                 function_type_prefix = return_type_symbol;
  3160                 break;
  3460                 break;
  3161                 
  3461                 
  3180             symbol_c *IN_param_value = &this->default_variable_name;
  3480             symbol_c *IN_param_value = &this->default_variable_name;
  3181         
  3481         
  3182             symbol_c *IN_type_symbol = param_data_type;
  3482             symbol_c *IN_type_symbol = param_data_type;
  3183             last_type_symbol = param_data_type;
  3483             last_type_symbol = param_data_type;
  3184             
  3484             
  3185             if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
  3485             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
  3186             {
  3486             {
  3187         
  3487         
  3188                 function_name = (symbol_c*)(new pragma_c("__bit_to_string"));
  3488                 function_name = (symbol_c*)(new pragma_c("__bit_to_string"));
       
  3489                 
       
  3490                 if (IN_type_symbol == NULL)
       
  3491                   IN_type_symbol = last_type_symbol;
  3189                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3492                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3190                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
  3493                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
  3191                 function_type_prefix = return_type_symbol;
  3494                 function_type_prefix = return_type_symbol;
  3192                 break;
  3495                 break;
  3193                 
  3496                 
  3212             symbol_c *IN_param_value = &this->default_variable_name;
  3515             symbol_c *IN_param_value = &this->default_variable_name;
  3213         
  3516         
  3214             symbol_c *IN_type_symbol = param_data_type;
  3517             symbol_c *IN_type_symbol = param_data_type;
  3215             last_type_symbol = param_data_type;
  3518             last_type_symbol = param_data_type;
  3216             
  3519             
  3217             if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
  3520             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
  3218             {
  3521             {
  3219         
  3522         
       
  3523                 
       
  3524                 if (IN_type_symbol == NULL)
       
  3525                   IN_type_symbol = last_type_symbol;
  3220                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3526                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3221                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
  3527                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
  3222                 function_type_prefix = return_type_symbol;
  3528                 function_type_prefix = return_type_symbol;
  3223                 break;
  3529                 break;
  3224                 
  3530                 
  3243             symbol_c *IN_param_value = &this->default_variable_name;
  3549             symbol_c *IN_param_value = &this->default_variable_name;
  3244         
  3550         
  3245             symbol_c *IN_type_symbol = param_data_type;
  3551             symbol_c *IN_type_symbol = param_data_type;
  3246             last_type_symbol = param_data_type;
  3552             last_type_symbol = param_data_type;
  3247             
  3553             
  3248             if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
  3554             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
  3249             {
  3555             {
  3250         
  3556         
       
  3557                 
       
  3558                 if (IN_type_symbol == NULL)
       
  3559                   IN_type_symbol = last_type_symbol;
  3251                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3560                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3252                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
  3561                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
  3253                 function_type_prefix = return_type_symbol;
  3562                 function_type_prefix = return_type_symbol;
  3254                 break;
  3563                 break;
  3255                 
  3564                 
  3274             symbol_c *IN_param_value = &this->default_variable_name;
  3583             symbol_c *IN_param_value = &this->default_variable_name;
  3275         
  3584         
  3276             symbol_c *IN_type_symbol = param_data_type;
  3585             symbol_c *IN_type_symbol = param_data_type;
  3277             last_type_symbol = param_data_type;
  3586             last_type_symbol = param_data_type;
  3278             
  3587             
  3279             if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
  3588             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
  3280             {
  3589             {
  3281         
  3590         
       
  3591                 
       
  3592                 if (IN_type_symbol == NULL)
       
  3593                   IN_type_symbol = last_type_symbol;
  3282                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3594                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3283                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
  3595                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
  3284                 function_type_prefix = return_type_symbol;
  3596                 function_type_prefix = return_type_symbol;
  3285                 break;
  3597                 break;
  3286                 
  3598                 
  3305             symbol_c *IN_param_value = &this->default_variable_name;
  3617             symbol_c *IN_param_value = &this->default_variable_name;
  3306         
  3618         
  3307             symbol_c *IN_type_symbol = param_data_type;
  3619             symbol_c *IN_type_symbol = param_data_type;
  3308             last_type_symbol = param_data_type;
  3620             last_type_symbol = param_data_type;
  3309             
  3621             
  3310             if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
  3622             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
  3311             {
  3623             {
  3312         
  3624         
       
  3625                 
       
  3626                 if (IN_type_symbol == NULL)
       
  3627                   IN_type_symbol = last_type_symbol;
  3313                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3628                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3314                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
  3629                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
  3315                 function_type_prefix = return_type_symbol;
  3630                 function_type_prefix = return_type_symbol;
  3316                 break;
  3631                 break;
  3317                 
  3632                 
  3336             symbol_c *IN_param_value = &this->default_variable_name;
  3651             symbol_c *IN_param_value = &this->default_variable_name;
  3337         
  3652         
  3338             symbol_c *IN_type_symbol = param_data_type;
  3653             symbol_c *IN_type_symbol = param_data_type;
  3339             last_type_symbol = param_data_type;
  3654             last_type_symbol = param_data_type;
  3340             
  3655             
  3341             if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
  3656             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
  3342             {
  3657             {
  3343         
  3658         
       
  3659                 
       
  3660                 if (IN_type_symbol == NULL)
       
  3661                   IN_type_symbol = last_type_symbol;
  3344                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3662                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3345                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
  3663                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
  3346                 function_type_prefix = return_type_symbol;
  3664                 function_type_prefix = return_type_symbol;
  3347                 break;
  3665                 break;
  3348                 
  3666                 
  3367             symbol_c *IN_param_value = &this->default_variable_name;
  3685             symbol_c *IN_param_value = &this->default_variable_name;
  3368         
  3686         
  3369             symbol_c *IN_type_symbol = param_data_type;
  3687             symbol_c *IN_type_symbol = param_data_type;
  3370             last_type_symbol = param_data_type;
  3688             last_type_symbol = param_data_type;
  3371             
  3689             
  3372             if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
  3690             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
  3373             {
  3691             {
  3374         
  3692         
       
  3693                 
       
  3694                 if (IN_type_symbol == NULL)
       
  3695                   IN_type_symbol = last_type_symbol;
  3375                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3696                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3376                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
  3697                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
  3377                 function_type_prefix = return_type_symbol;
  3698                 function_type_prefix = return_type_symbol;
  3378                 break;
  3699                 break;
  3379                 
  3700                 
  3398             symbol_c *IN_param_value = &this->default_variable_name;
  3719             symbol_c *IN_param_value = &this->default_variable_name;
  3399         
  3720         
  3400             symbol_c *IN_type_symbol = param_data_type;
  3721             symbol_c *IN_type_symbol = param_data_type;
  3401             last_type_symbol = param_data_type;
  3722             last_type_symbol = param_data_type;
  3402             
  3723             
  3403             if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
  3724             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
  3404             {
  3725             {
  3405         
  3726         
       
  3727                 
       
  3728                 if (IN_type_symbol == NULL)
       
  3729                   IN_type_symbol = last_type_symbol;
  3406                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3730                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3407                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
  3731                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
  3408                 function_type_prefix = return_type_symbol;
  3732                 function_type_prefix = return_type_symbol;
  3409                 break;
  3733                 break;
  3410                 
  3734                 
  3429             symbol_c *IN_param_value = &this->default_variable_name;
  3753             symbol_c *IN_param_value = &this->default_variable_name;
  3430         
  3754         
  3431             symbol_c *IN_type_symbol = param_data_type;
  3755             symbol_c *IN_type_symbol = param_data_type;
  3432             last_type_symbol = param_data_type;
  3756             last_type_symbol = param_data_type;
  3433             
  3757             
  3434             if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
  3758             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
  3435             {
  3759             {
  3436         
  3760         
  3437                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
  3761                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
       
  3762                 
       
  3763                 if (IN_type_symbol == NULL)
       
  3764                   IN_type_symbol = last_type_symbol;
  3438                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3765                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3439                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
  3766                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
  3440                 function_type_prefix = return_type_symbol;
  3767                 function_type_prefix = return_type_symbol;
  3441                 break;
  3768                 break;
  3442                 
  3769                 
  3461             symbol_c *IN_param_value = &this->default_variable_name;
  3788             symbol_c *IN_param_value = &this->default_variable_name;
  3462         
  3789         
  3463             symbol_c *IN_type_symbol = param_data_type;
  3790             symbol_c *IN_type_symbol = param_data_type;
  3464             last_type_symbol = param_data_type;
  3791             last_type_symbol = param_data_type;
  3465             
  3792             
  3466             if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
  3793             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
  3467             {
  3794             {
  3468         
  3795         
       
  3796                 
       
  3797                 if (IN_type_symbol == NULL)
       
  3798                   IN_type_symbol = last_type_symbol;
  3469                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3799                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3470                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
  3800                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
  3471                 function_type_prefix = return_type_symbol;
  3801                 function_type_prefix = return_type_symbol;
  3472                 break;
  3802                 break;
  3473                 
  3803                 
  3492             symbol_c *IN_param_value = &this->default_variable_name;
  3822             symbol_c *IN_param_value = &this->default_variable_name;
  3493         
  3823         
  3494             symbol_c *IN_type_symbol = param_data_type;
  3824             symbol_c *IN_type_symbol = param_data_type;
  3495             last_type_symbol = param_data_type;
  3825             last_type_symbol = param_data_type;
  3496             
  3826             
  3497             if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
  3827             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
  3498             {
  3828             {
  3499         
  3829         
  3500                 function_name = (symbol_c*)(new pragma_c("__time_to_real"));
  3830                 function_name = (symbol_c*)(new pragma_c("__time_to_real"));
       
  3831                 
       
  3832                 if (IN_type_symbol == NULL)
       
  3833                   IN_type_symbol = last_type_symbol;
  3501                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3834                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3502                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
  3835                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
  3503                 function_type_prefix = return_type_symbol;
  3836                 function_type_prefix = return_type_symbol;
  3504                 break;
  3837                 break;
  3505                 
  3838                 
  3524             symbol_c *IN_param_value = &this->default_variable_name;
  3857             symbol_c *IN_param_value = &this->default_variable_name;
  3525         
  3858         
  3526             symbol_c *IN_type_symbol = param_data_type;
  3859             symbol_c *IN_type_symbol = param_data_type;
  3527             last_type_symbol = param_data_type;
  3860             last_type_symbol = param_data_type;
  3528             
  3861             
  3529             if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
  3862             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
  3530             {
  3863             {
  3531         
  3864         
  3532                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
  3865                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
       
  3866                 
       
  3867                 if (IN_type_symbol == NULL)
       
  3868                   IN_type_symbol = last_type_symbol;
  3533                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3869                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3534                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
  3870                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
  3535                 function_type_prefix = return_type_symbol;
  3871                 function_type_prefix = return_type_symbol;
  3536                 break;
  3872                 break;
  3537                 
  3873                 
  3556             symbol_c *IN_param_value = &this->default_variable_name;
  3892             symbol_c *IN_param_value = &this->default_variable_name;
  3557         
  3893         
  3558             symbol_c *IN_type_symbol = param_data_type;
  3894             symbol_c *IN_type_symbol = param_data_type;
  3559             last_type_symbol = param_data_type;
  3895             last_type_symbol = param_data_type;
  3560             
  3896             
  3561             if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
  3897             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
  3562             {
  3898             {
  3563         
  3899         
  3564                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
  3900                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
       
  3901                 
       
  3902                 if (IN_type_symbol == NULL)
       
  3903                   IN_type_symbol = last_type_symbol;
  3565                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3904                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3566                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
  3905                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
  3567                 function_type_prefix = return_type_symbol;
  3906                 function_type_prefix = return_type_symbol;
  3568                 break;
  3907                 break;
  3569                 
  3908                 
  3588             symbol_c *IN_param_value = &this->default_variable_name;
  3927             symbol_c *IN_param_value = &this->default_variable_name;
  3589         
  3928         
  3590             symbol_c *IN_type_symbol = param_data_type;
  3929             symbol_c *IN_type_symbol = param_data_type;
  3591             last_type_symbol = param_data_type;
  3930             last_type_symbol = param_data_type;
  3592             
  3931             
  3593             if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
  3932             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
  3594             {
  3933             {
  3595         
  3934         
  3596                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
  3935                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
       
  3936                 
       
  3937                 if (IN_type_symbol == NULL)
       
  3938                   IN_type_symbol = last_type_symbol;
  3597                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3939                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3598                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
  3940                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
  3599                 function_type_prefix = return_type_symbol;
  3941                 function_type_prefix = return_type_symbol;
  3600                 break;
  3942                 break;
  3601                 
  3943                 
  3620             symbol_c *IN_param_value = &this->default_variable_name;
  3962             symbol_c *IN_param_value = &this->default_variable_name;
  3621         
  3963         
  3622             symbol_c *IN_type_symbol = param_data_type;
  3964             symbol_c *IN_type_symbol = param_data_type;
  3623             last_type_symbol = param_data_type;
  3965             last_type_symbol = param_data_type;
  3624             
  3966             
  3625             if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
  3967             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
  3626             {
  3968             {
  3627         
  3969         
  3628                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
  3970                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
       
  3971                 
       
  3972                 if (IN_type_symbol == NULL)
       
  3973                   IN_type_symbol = last_type_symbol;
  3629                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3974                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3630                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
  3975                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
  3631                 function_type_prefix = return_type_symbol;
  3976                 function_type_prefix = return_type_symbol;
  3632                 break;
  3977                 break;
  3633                 
  3978                 
  3652             symbol_c *IN_param_value = &this->default_variable_name;
  3997             symbol_c *IN_param_value = &this->default_variable_name;
  3653         
  3998         
  3654             symbol_c *IN_type_symbol = param_data_type;
  3999             symbol_c *IN_type_symbol = param_data_type;
  3655             last_type_symbol = param_data_type;
  4000             last_type_symbol = param_data_type;
  3656             
  4001             
  3657             if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
  4002             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
  3658             {
  4003             {
  3659         
  4004         
  3660                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
  4005                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
       
  4006                 
       
  4007                 if (IN_type_symbol == NULL)
       
  4008                   IN_type_symbol = last_type_symbol;
  3661                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4009                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3662                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
  4010                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
  3663                 function_type_prefix = return_type_symbol;
  4011                 function_type_prefix = return_type_symbol;
  3664                 break;
  4012                 break;
  3665                 
  4013                 
  3684             symbol_c *IN_param_value = &this->default_variable_name;
  4032             symbol_c *IN_param_value = &this->default_variable_name;
  3685         
  4033         
  3686             symbol_c *IN_type_symbol = param_data_type;
  4034             symbol_c *IN_type_symbol = param_data_type;
  3687             last_type_symbol = param_data_type;
  4035             last_type_symbol = param_data_type;
  3688             
  4036             
  3689             if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
  4037             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
  3690             {
  4038             {
  3691         
  4039         
  3692                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
  4040                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
       
  4041                 
       
  4042                 if (IN_type_symbol == NULL)
       
  4043                   IN_type_symbol = last_type_symbol;
  3693                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4044                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3694                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
  4045                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
  3695                 function_type_prefix = return_type_symbol;
  4046                 function_type_prefix = return_type_symbol;
  3696                 break;
  4047                 break;
  3697                 
  4048                 
  3716             symbol_c *IN_param_value = &this->default_variable_name;
  4067             symbol_c *IN_param_value = &this->default_variable_name;
  3717         
  4068         
  3718             symbol_c *IN_type_symbol = param_data_type;
  4069             symbol_c *IN_type_symbol = param_data_type;
  3719             last_type_symbol = param_data_type;
  4070             last_type_symbol = param_data_type;
  3720             
  4071             
  3721             if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
  4072             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
  3722             {
  4073             {
  3723         
  4074         
  3724                 function_name = (symbol_c*)(new pragma_c("__dt_to_string"));
  4075                 function_name = (symbol_c*)(new pragma_c("__dt_to_string"));
       
  4076                 
       
  4077                 if (IN_type_symbol == NULL)
       
  4078                   IN_type_symbol = last_type_symbol;
  3725                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4079                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3726                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
  4080                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
  3727                 function_type_prefix = return_type_symbol;
  4081                 function_type_prefix = return_type_symbol;
  3728                 break;
  4082                 break;
  3729                 
  4083                 
  3748             symbol_c *IN_param_value = &this->default_variable_name;
  4102             symbol_c *IN_param_value = &this->default_variable_name;
  3749         
  4103         
  3750             symbol_c *IN_type_symbol = param_data_type;
  4104             symbol_c *IN_type_symbol = param_data_type;
  3751             last_type_symbol = param_data_type;
  4105             last_type_symbol = param_data_type;
  3752             
  4106             
  3753             if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
  4107             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
  3754             {
  4108             {
  3755         
  4109         
  3756                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
  4110                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
       
  4111                 
       
  4112                 if (IN_type_symbol == NULL)
       
  4113                   IN_type_symbol = last_type_symbol;
  3757                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4114                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3758                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
  4115                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
  3759                 function_type_prefix = return_type_symbol;
  4116                 function_type_prefix = return_type_symbol;
  3760                 break;
  4117                 break;
  3761                 
  4118                 
  3780             symbol_c *IN_param_value = &this->default_variable_name;
  4137             symbol_c *IN_param_value = &this->default_variable_name;
  3781         
  4138         
  3782             symbol_c *IN_type_symbol = param_data_type;
  4139             symbol_c *IN_type_symbol = param_data_type;
  3783             last_type_symbol = param_data_type;
  4140             last_type_symbol = param_data_type;
  3784             
  4141             
  3785             if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
  4142             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
  3786             {
  4143             {
  3787         
  4144         
  3788                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
  4145                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
       
  4146                 
       
  4147                 if (IN_type_symbol == NULL)
       
  4148                   IN_type_symbol = last_type_symbol;
  3789                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4149                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3790                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
  4150                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
  3791                 function_type_prefix = return_type_symbol;
  4151                 function_type_prefix = return_type_symbol;
  3792                 break;
  4152                 break;
  3793                 
  4153                 
  3812             symbol_c *IN_param_value = &this->default_variable_name;
  4172             symbol_c *IN_param_value = &this->default_variable_name;
  3813         
  4173         
  3814             symbol_c *IN_type_symbol = param_data_type;
  4174             symbol_c *IN_type_symbol = param_data_type;
  3815             last_type_symbol = param_data_type;
  4175             last_type_symbol = param_data_type;
  3816             
  4176             
  3817             if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
  4177             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
  3818             {
  4178             {
  3819         
  4179         
  3820                 function_name = (symbol_c*)(new pragma_c("__time_to_real"));
  4180                 function_name = (symbol_c*)(new pragma_c("__time_to_real"));
       
  4181                 
       
  4182                 if (IN_type_symbol == NULL)
       
  4183                   IN_type_symbol = last_type_symbol;
  3821                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4184                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3822                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
  4185                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
  3823                 function_type_prefix = return_type_symbol;
  4186                 function_type_prefix = return_type_symbol;
  3824                 break;
  4187                 break;
  3825                 
  4188                 
  3844             symbol_c *IN_param_value = &this->default_variable_name;
  4207             symbol_c *IN_param_value = &this->default_variable_name;
  3845         
  4208         
  3846             symbol_c *IN_type_symbol = param_data_type;
  4209             symbol_c *IN_type_symbol = param_data_type;
  3847             last_type_symbol = param_data_type;
  4210             last_type_symbol = param_data_type;
  3848             
  4211             
  3849             if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
  4212             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
  3850             {
  4213             {
  3851         
  4214         
  3852                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
  4215                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
       
  4216                 
       
  4217                 if (IN_type_symbol == NULL)
       
  4218                   IN_type_symbol = last_type_symbol;
  3853                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4219                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3854                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
  4220                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
  3855                 function_type_prefix = return_type_symbol;
  4221                 function_type_prefix = return_type_symbol;
  3856                 break;
  4222                 break;
  3857                 
  4223                 
  3876             symbol_c *IN_param_value = &this->default_variable_name;
  4242             symbol_c *IN_param_value = &this->default_variable_name;
  3877         
  4243         
  3878             symbol_c *IN_type_symbol = param_data_type;
  4244             symbol_c *IN_type_symbol = param_data_type;
  3879             last_type_symbol = param_data_type;
  4245             last_type_symbol = param_data_type;
  3880             
  4246             
  3881             if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
  4247             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
  3882             {
  4248             {
  3883         
  4249         
  3884                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
  4250                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
       
  4251                 
       
  4252                 if (IN_type_symbol == NULL)
       
  4253                   IN_type_symbol = last_type_symbol;
  3885                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4254                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3886                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
  4255                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
  3887                 function_type_prefix = return_type_symbol;
  4256                 function_type_prefix = return_type_symbol;
  3888                 break;
  4257                 break;
  3889                 
  4258                 
  3908             symbol_c *IN_param_value = &this->default_variable_name;
  4277             symbol_c *IN_param_value = &this->default_variable_name;
  3909         
  4278         
  3910             symbol_c *IN_type_symbol = param_data_type;
  4279             symbol_c *IN_type_symbol = param_data_type;
  3911             last_type_symbol = param_data_type;
  4280             last_type_symbol = param_data_type;
  3912             
  4281             
  3913             if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
  4282             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
  3914             {
  4283             {
  3915         
  4284         
  3916                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
  4285                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
       
  4286                 
       
  4287                 if (IN_type_symbol == NULL)
       
  4288                   IN_type_symbol = last_type_symbol;
  3917                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4289                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3918                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
  4290                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
  3919                 function_type_prefix = return_type_symbol;
  4291                 function_type_prefix = return_type_symbol;
  3920                 break;
  4292                 break;
  3921                 
  4293                 
  3940             symbol_c *IN_param_value = &this->default_variable_name;
  4312             symbol_c *IN_param_value = &this->default_variable_name;
  3941         
  4313         
  3942             symbol_c *IN_type_symbol = param_data_type;
  4314             symbol_c *IN_type_symbol = param_data_type;
  3943             last_type_symbol = param_data_type;
  4315             last_type_symbol = param_data_type;
  3944             
  4316             
  3945             if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
  4317             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
  3946             {
  4318             {
  3947         
  4319         
  3948                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
  4320                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
       
  4321                 
       
  4322                 if (IN_type_symbol == NULL)
       
  4323                   IN_type_symbol = last_type_symbol;
  3949                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4324                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3950                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
  4325                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
  3951                 function_type_prefix = return_type_symbol;
  4326                 function_type_prefix = return_type_symbol;
  3952                 break;
  4327                 break;
  3953                 
  4328                 
  3972             symbol_c *IN_param_value = &this->default_variable_name;
  4347             symbol_c *IN_param_value = &this->default_variable_name;
  3973         
  4348         
  3974             symbol_c *IN_type_symbol = param_data_type;
  4349             symbol_c *IN_type_symbol = param_data_type;
  3975             last_type_symbol = param_data_type;
  4350             last_type_symbol = param_data_type;
  3976             
  4351             
  3977             if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol))
  4352             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol))
  3978             {
  4353             {
  3979         
  4354         
  3980                 function_name = (symbol_c*)(new pragma_c("__time_to_real"));
  4355                 function_name = (symbol_c*)(new pragma_c("__time_to_real"));
       
  4356                 
       
  4357                 if (IN_type_symbol == NULL)
       
  4358                   IN_type_symbol = last_type_symbol;
  3981                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4359                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  3982                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
  4360                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
  3983                 function_type_prefix = return_type_symbol;
  4361                 function_type_prefix = return_type_symbol;
  3984                 break;
  4362                 break;
  3985                 
  4363                 
  4004             symbol_c *IN_param_value = &this->default_variable_name;
  4382             symbol_c *IN_param_value = &this->default_variable_name;
  4005         
  4383         
  4006             symbol_c *IN_type_symbol = param_data_type;
  4384             symbol_c *IN_type_symbol = param_data_type;
  4007             last_type_symbol = param_data_type;
  4385             last_type_symbol = param_data_type;
  4008             
  4386             
  4009             if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol))
  4387             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol))
  4010             {
  4388             {
  4011         
  4389         
  4012                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
  4390                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
       
  4391                 
       
  4392                 if (IN_type_symbol == NULL)
       
  4393                   IN_type_symbol = last_type_symbol;
  4013                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4394                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4014                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
  4395                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
  4015                 function_type_prefix = return_type_symbol;
  4396                 function_type_prefix = return_type_symbol;
  4016                 break;
  4397                 break;
  4017                 
  4398                 
  4036             symbol_c *IN_param_value = &this->default_variable_name;
  4417             symbol_c *IN_param_value = &this->default_variable_name;
  4037         
  4418         
  4038             symbol_c *IN_type_symbol = param_data_type;
  4419             symbol_c *IN_type_symbol = param_data_type;
  4039             last_type_symbol = param_data_type;
  4420             last_type_symbol = param_data_type;
  4040             
  4421             
  4041             if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol))
  4422             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol))
  4042             {
  4423             {
  4043         
  4424         
  4044                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
  4425                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
       
  4426                 
       
  4427                 if (IN_type_symbol == NULL)
       
  4428                   IN_type_symbol = last_type_symbol;
  4045                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4429                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4046                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
  4430                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
  4047                 function_type_prefix = return_type_symbol;
  4431                 function_type_prefix = return_type_symbol;
  4048                 break;
  4432                 break;
  4049                 
  4433                 
  4068             symbol_c *IN_param_value = &this->default_variable_name;
  4452             symbol_c *IN_param_value = &this->default_variable_name;
  4069         
  4453         
  4070             symbol_c *IN_type_symbol = param_data_type;
  4454             symbol_c *IN_type_symbol = param_data_type;
  4071             last_type_symbol = param_data_type;
  4455             last_type_symbol = param_data_type;
  4072             
  4456             
  4073             if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol))
  4457             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol))
  4074             {
  4458             {
  4075         
  4459         
  4076                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
  4460                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
       
  4461                 
       
  4462                 if (IN_type_symbol == NULL)
       
  4463                   IN_type_symbol = last_type_symbol;
  4077                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4464                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4078                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
  4465                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
  4079                 function_type_prefix = return_type_symbol;
  4466                 function_type_prefix = return_type_symbol;
  4080                 break;
  4467                 break;
  4081                 
  4468                 
  4100             symbol_c *IN_param_value = &this->default_variable_name;
  4487             symbol_c *IN_param_value = &this->default_variable_name;
  4101         
  4488         
  4102             symbol_c *IN_type_symbol = param_data_type;
  4489             symbol_c *IN_type_symbol = param_data_type;
  4103             last_type_symbol = param_data_type;
  4490             last_type_symbol = param_data_type;
  4104             
  4491             
  4105             if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol))
  4492             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol))
  4106             {
  4493             {
  4107         
  4494         
  4108                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
  4495                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
       
  4496                 
       
  4497                 if (IN_type_symbol == NULL)
       
  4498                   IN_type_symbol = last_type_symbol;
  4109                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4499                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4110                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
  4500                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
  4111                 function_type_prefix = return_type_symbol;
  4501                 function_type_prefix = return_type_symbol;
  4112                 break;
  4502                 break;
  4113                 
  4503                 
  4132             symbol_c *IN_param_value = &this->default_variable_name;
  4522             symbol_c *IN_param_value = &this->default_variable_name;
  4133         
  4523         
  4134             symbol_c *IN_type_symbol = param_data_type;
  4524             symbol_c *IN_type_symbol = param_data_type;
  4135             last_type_symbol = param_data_type;
  4525             last_type_symbol = param_data_type;
  4136             
  4526             
  4137             if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol))
  4527             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol))
  4138             {
  4528             {
  4139         
  4529         
  4140                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
  4530                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
       
  4531                 
       
  4532                 if (IN_type_symbol == NULL)
       
  4533                   IN_type_symbol = last_type_symbol;
  4141                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4534                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4142                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
  4535                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
  4143                 function_type_prefix = return_type_symbol;
  4536                 function_type_prefix = return_type_symbol;
  4144                 break;
  4537                 break;
  4145                 
  4538                 
  4164             symbol_c *IN_param_value = &this->default_variable_name;
  4557             symbol_c *IN_param_value = &this->default_variable_name;
  4165         
  4558         
  4166             symbol_c *IN_type_symbol = param_data_type;
  4559             symbol_c *IN_type_symbol = param_data_type;
  4167             last_type_symbol = param_data_type;
  4560             last_type_symbol = param_data_type;
  4168             
  4561             
  4169             if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol))
  4562             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol))
  4170             {
  4563             {
  4171         
  4564         
  4172                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
  4565                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
       
  4566                 
       
  4567                 if (IN_type_symbol == NULL)
       
  4568                   IN_type_symbol = last_type_symbol;
  4173                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4569                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4174                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
  4570                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
  4175                 function_type_prefix = return_type_symbol;
  4571                 function_type_prefix = return_type_symbol;
  4176                 break;
  4572                 break;
  4177                 
  4573                 
  4196             symbol_c *IN_param_value = &this->default_variable_name;
  4592             symbol_c *IN_param_value = &this->default_variable_name;
  4197         
  4593         
  4198             symbol_c *IN_type_symbol = param_data_type;
  4594             symbol_c *IN_type_symbol = param_data_type;
  4199             last_type_symbol = param_data_type;
  4595             last_type_symbol = param_data_type;
  4200             
  4596             
  4201             if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol))
  4597             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol))
  4202             {
  4598             {
  4203         
  4599         
  4204                 function_name = (symbol_c*)(new pragma_c("__tod_to_string"));
  4600                 function_name = (symbol_c*)(new pragma_c("__tod_to_string"));
       
  4601                 
       
  4602                 if (IN_type_symbol == NULL)
       
  4603                   IN_type_symbol = last_type_symbol;
  4205                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4604                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4206                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
  4605                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
  4207                 function_type_prefix = return_type_symbol;
  4606                 function_type_prefix = return_type_symbol;
  4208                 break;
  4607                 break;
  4209                 
  4608                 
  4228             symbol_c *IN_param_value = &this->default_variable_name;
  4627             symbol_c *IN_param_value = &this->default_variable_name;
  4229         
  4628         
  4230             symbol_c *IN_type_symbol = param_data_type;
  4629             symbol_c *IN_type_symbol = param_data_type;
  4231             last_type_symbol = param_data_type;
  4630             last_type_symbol = param_data_type;
  4232             
  4631             
  4233             if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol))
  4632             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol))
  4234             {
  4633             {
  4235         
  4634         
  4236                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
  4635                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
       
  4636                 
       
  4637                 if (IN_type_symbol == NULL)
       
  4638                   IN_type_symbol = last_type_symbol;
  4237                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4639                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4238                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
  4640                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
  4239                 function_type_prefix = return_type_symbol;
  4641                 function_type_prefix = return_type_symbol;
  4240                 break;
  4642                 break;
  4241                 
  4643                 
  4260             symbol_c *IN_param_value = &this->default_variable_name;
  4662             symbol_c *IN_param_value = &this->default_variable_name;
  4261         
  4663         
  4262             symbol_c *IN_type_symbol = param_data_type;
  4664             symbol_c *IN_type_symbol = param_data_type;
  4263             last_type_symbol = param_data_type;
  4665             last_type_symbol = param_data_type;
  4264             
  4666             
  4265             if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol))
  4667             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol))
  4266             {
  4668             {
  4267         
  4669         
  4268                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
  4670                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
       
  4671                 
       
  4672                 if (IN_type_symbol == NULL)
       
  4673                   IN_type_symbol = last_type_symbol;
  4269                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4674                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4270                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
  4675                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
  4271                 function_type_prefix = return_type_symbol;
  4676                 function_type_prefix = return_type_symbol;
  4272                 break;
  4677                 break;
  4273                 
  4678                 
  4292             symbol_c *IN_param_value = &this->default_variable_name;
  4697             symbol_c *IN_param_value = &this->default_variable_name;
  4293         
  4698         
  4294             symbol_c *IN_type_symbol = param_data_type;
  4699             symbol_c *IN_type_symbol = param_data_type;
  4295             last_type_symbol = param_data_type;
  4700             last_type_symbol = param_data_type;
  4296             
  4701             
  4297             if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol))
  4702             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol))
  4298             {
  4703             {
  4299         
  4704         
  4300                 function_name = (symbol_c*)(new pragma_c("__time_to_real"));
  4705                 function_name = (symbol_c*)(new pragma_c("__time_to_real"));
       
  4706                 
       
  4707                 if (IN_type_symbol == NULL)
       
  4708                   IN_type_symbol = last_type_symbol;
  4301                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4709                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4302                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
  4710                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
  4303                 function_type_prefix = return_type_symbol;
  4711                 function_type_prefix = return_type_symbol;
  4304                 break;
  4712                 break;
  4305                 
  4713                 
  4324             symbol_c *IN_param_value = &this->default_variable_name;
  4732             symbol_c *IN_param_value = &this->default_variable_name;
  4325         
  4733         
  4326             symbol_c *IN_type_symbol = param_data_type;
  4734             symbol_c *IN_type_symbol = param_data_type;
  4327             last_type_symbol = param_data_type;
  4735             last_type_symbol = param_data_type;
  4328             
  4736             
  4329             if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol))
  4737             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol))
  4330             {
  4738             {
  4331         
  4739         
  4332                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
  4740                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
       
  4741                 
       
  4742                 if (IN_type_symbol == NULL)
       
  4743                   IN_type_symbol = last_type_symbol;
  4333                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4744                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4334                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
  4745                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
  4335                 function_type_prefix = return_type_symbol;
  4746                 function_type_prefix = return_type_symbol;
  4336                 break;
  4747                 break;
  4337                 
  4748                 
  4356             symbol_c *IN_param_value = &this->default_variable_name;
  4767             symbol_c *IN_param_value = &this->default_variable_name;
  4357         
  4768         
  4358             symbol_c *IN_type_symbol = param_data_type;
  4769             symbol_c *IN_type_symbol = param_data_type;
  4359             last_type_symbol = param_data_type;
  4770             last_type_symbol = param_data_type;
  4360             
  4771             
  4361             if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol))
  4772             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol))
  4362             {
  4773             {
  4363         
  4774         
  4364                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
  4775                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
       
  4776                 
       
  4777                 if (IN_type_symbol == NULL)
       
  4778                   IN_type_symbol = last_type_symbol;
  4365                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4779                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4366                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
  4780                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
  4367                 function_type_prefix = return_type_symbol;
  4781                 function_type_prefix = return_type_symbol;
  4368                 break;
  4782                 break;
  4369                 
  4783                 
  4388             symbol_c *IN_param_value = &this->default_variable_name;
  4802             symbol_c *IN_param_value = &this->default_variable_name;
  4389         
  4803         
  4390             symbol_c *IN_type_symbol = param_data_type;
  4804             symbol_c *IN_type_symbol = param_data_type;
  4391             last_type_symbol = param_data_type;
  4805             last_type_symbol = param_data_type;
  4392             
  4806             
  4393             if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol))
  4807             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol))
  4394             {
  4808             {
  4395         
  4809         
  4396                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
  4810                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
       
  4811                 
       
  4812                 if (IN_type_symbol == NULL)
       
  4813                   IN_type_symbol = last_type_symbol;
  4397                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4814                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4398                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
  4815                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
  4399                 function_type_prefix = return_type_symbol;
  4816                 function_type_prefix = return_type_symbol;
  4400                 break;
  4817                 break;
  4401                 
  4818                 
  4420             symbol_c *IN_param_value = &this->default_variable_name;
  4837             symbol_c *IN_param_value = &this->default_variable_name;
  4421         
  4838         
  4422             symbol_c *IN_type_symbol = param_data_type;
  4839             symbol_c *IN_type_symbol = param_data_type;
  4423             last_type_symbol = param_data_type;
  4840             last_type_symbol = param_data_type;
  4424             
  4841             
  4425             if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol))
  4842             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol))
  4426             {
  4843             {
  4427         
  4844         
  4428                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
  4845                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
       
  4846                 
       
  4847                 if (IN_type_symbol == NULL)
       
  4848                   IN_type_symbol = last_type_symbol;
  4429                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4849                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4430                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
  4850                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
  4431                 function_type_prefix = return_type_symbol;
  4851                 function_type_prefix = return_type_symbol;
  4432                 break;
  4852                 break;
  4433                 
  4853                 
  4452             symbol_c *IN_param_value = &this->default_variable_name;
  4872             symbol_c *IN_param_value = &this->default_variable_name;
  4453         
  4873         
  4454             symbol_c *IN_type_symbol = param_data_type;
  4874             symbol_c *IN_type_symbol = param_data_type;
  4455             last_type_symbol = param_data_type;
  4875             last_type_symbol = param_data_type;
  4456             
  4876             
  4457             if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
  4877             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
  4458             {
  4878             {
  4459         
  4879         
       
  4880                 
       
  4881                 if (IN_type_symbol == NULL)
       
  4882                   IN_type_symbol = last_type_symbol;
  4460                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4883                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4461                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
  4884                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
  4462                 function_type_prefix = return_type_symbol;
  4885                 function_type_prefix = return_type_symbol;
  4463                 break;
  4886                 break;
  4464                 
  4887                 
  4483             symbol_c *IN_param_value = &this->default_variable_name;
  4906             symbol_c *IN_param_value = &this->default_variable_name;
  4484         
  4907         
  4485             symbol_c *IN_type_symbol = param_data_type;
  4908             symbol_c *IN_type_symbol = param_data_type;
  4486             last_type_symbol = param_data_type;
  4909             last_type_symbol = param_data_type;
  4487             
  4910             
  4488             if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
  4911             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
  4489             {
  4912             {
  4490         
  4913         
       
  4914                 
       
  4915                 if (IN_type_symbol == NULL)
       
  4916                   IN_type_symbol = last_type_symbol;
  4491                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4917                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4492                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
  4918                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
  4493                 function_type_prefix = return_type_symbol;
  4919                 function_type_prefix = return_type_symbol;
  4494                 break;
  4920                 break;
  4495                 
  4921                 
  4514             symbol_c *IN_param_value = &this->default_variable_name;
  4940             symbol_c *IN_param_value = &this->default_variable_name;
  4515         
  4941         
  4516             symbol_c *IN_type_symbol = param_data_type;
  4942             symbol_c *IN_type_symbol = param_data_type;
  4517             last_type_symbol = param_data_type;
  4943             last_type_symbol = param_data_type;
  4518             
  4944             
  4519             if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
  4945             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
  4520             {
  4946             {
  4521         
  4947         
       
  4948                 
       
  4949                 if (IN_type_symbol == NULL)
       
  4950                   IN_type_symbol = last_type_symbol;
  4522                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4951                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4523                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
  4952                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
  4524                 function_type_prefix = return_type_symbol;
  4953                 function_type_prefix = return_type_symbol;
  4525                 break;
  4954                 break;
  4526                 
  4955                 
  4545             symbol_c *IN_param_value = &this->default_variable_name;
  4974             symbol_c *IN_param_value = &this->default_variable_name;
  4546         
  4975         
  4547             symbol_c *IN_type_symbol = param_data_type;
  4976             symbol_c *IN_type_symbol = param_data_type;
  4548             last_type_symbol = param_data_type;
  4977             last_type_symbol = param_data_type;
  4549             
  4978             
  4550             if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
  4979             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
  4551             {
  4980             {
  4552         
  4981         
       
  4982                 
       
  4983                 if (IN_type_symbol == NULL)
       
  4984                   IN_type_symbol = last_type_symbol;
  4553                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4985                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4554                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
  4986                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
  4555                 function_type_prefix = return_type_symbol;
  4987                 function_type_prefix = return_type_symbol;
  4556                 break;
  4988                 break;
  4557                 
  4989                 
  4576             symbol_c *IN_param_value = &this->default_variable_name;
  5008             symbol_c *IN_param_value = &this->default_variable_name;
  4577         
  5009         
  4578             symbol_c *IN_type_symbol = param_data_type;
  5010             symbol_c *IN_type_symbol = param_data_type;
  4579             last_type_symbol = param_data_type;
  5011             last_type_symbol = param_data_type;
  4580             
  5012             
  4581             if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
  5013             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
  4582             {
  5014             {
  4583         
  5015         
  4584                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
  5016                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
       
  5017                 
       
  5018                 if (IN_type_symbol == NULL)
       
  5019                   IN_type_symbol = last_type_symbol;
  4585                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5020                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4586                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
  5021                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
  4587                 function_type_prefix = return_type_symbol;
  5022                 function_type_prefix = return_type_symbol;
  4588                 break;
  5023                 break;
  4589                 
  5024                 
  4608             symbol_c *IN_param_value = &this->default_variable_name;
  5043             symbol_c *IN_param_value = &this->default_variable_name;
  4609         
  5044         
  4610             symbol_c *IN_type_symbol = param_data_type;
  5045             symbol_c *IN_type_symbol = param_data_type;
  4611             last_type_symbol = param_data_type;
  5046             last_type_symbol = param_data_type;
  4612             
  5047             
  4613             if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
  5048             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
  4614             {
  5049             {
  4615         
  5050         
       
  5051                 
       
  5052                 if (IN_type_symbol == NULL)
       
  5053                   IN_type_symbol = last_type_symbol;
  4616                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5054                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4617                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
  5055                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
  4618                 function_type_prefix = return_type_symbol;
  5056                 function_type_prefix = return_type_symbol;
  4619                 break;
  5057                 break;
  4620                 
  5058                 
  4639             symbol_c *IN_param_value = &this->default_variable_name;
  5077             symbol_c *IN_param_value = &this->default_variable_name;
  4640         
  5078         
  4641             symbol_c *IN_type_symbol = param_data_type;
  5079             symbol_c *IN_type_symbol = param_data_type;
  4642             last_type_symbol = param_data_type;
  5080             last_type_symbol = param_data_type;
  4643             
  5081             
  4644             if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
  5082             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
  4645             {
  5083             {
  4646         
  5084         
  4647                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
  5085                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
       
  5086                 
       
  5087                 if (IN_type_symbol == NULL)
       
  5088                   IN_type_symbol = last_type_symbol;
  4648                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5089                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4649                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
  5090                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
  4650                 function_type_prefix = return_type_symbol;
  5091                 function_type_prefix = return_type_symbol;
  4651                 break;
  5092                 break;
  4652                 
  5093                 
  4671             symbol_c *IN_param_value = &this->default_variable_name;
  5112             symbol_c *IN_param_value = &this->default_variable_name;
  4672         
  5113         
  4673             symbol_c *IN_type_symbol = param_data_type;
  5114             symbol_c *IN_type_symbol = param_data_type;
  4674             last_type_symbol = param_data_type;
  5115             last_type_symbol = param_data_type;
  4675             
  5116             
  4676             if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
  5117             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
  4677             {
  5118             {
  4678         
  5119         
  4679                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
  5120                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
       
  5121                 
       
  5122                 if (IN_type_symbol == NULL)
       
  5123                   IN_type_symbol = last_type_symbol;
  4680                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5124                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4681                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
  5125                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
  4682                 function_type_prefix = return_type_symbol;
  5126                 function_type_prefix = return_type_symbol;
  4683                 break;
  5127                 break;
  4684                 
  5128                 
  4703             symbol_c *IN_param_value = &this->default_variable_name;
  5147             symbol_c *IN_param_value = &this->default_variable_name;
  4704         
  5148         
  4705             symbol_c *IN_type_symbol = param_data_type;
  5149             symbol_c *IN_type_symbol = param_data_type;
  4706             last_type_symbol = param_data_type;
  5150             last_type_symbol = param_data_type;
  4707             
  5151             
  4708             if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
  5152             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
  4709             {
  5153             {
  4710         
  5154         
       
  5155                 
       
  5156                 if (IN_type_symbol == NULL)
       
  5157                   IN_type_symbol = last_type_symbol;
  4711                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5158                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4712                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
  5159                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
  4713                 function_type_prefix = return_type_symbol;
  5160                 function_type_prefix = return_type_symbol;
  4714                 break;
  5161                 break;
  4715                 
  5162                 
  4734             symbol_c *IN_param_value = &this->default_variable_name;
  5181             symbol_c *IN_param_value = &this->default_variable_name;
  4735         
  5182         
  4736             symbol_c *IN_type_symbol = param_data_type;
  5183             symbol_c *IN_type_symbol = param_data_type;
  4737             last_type_symbol = param_data_type;
  5184             last_type_symbol = param_data_type;
  4738             
  5185             
  4739             if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
  5186             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
  4740             {
  5187             {
  4741         
  5188         
  4742                 function_name = (symbol_c*)(new pragma_c("__uint_to_string"));
  5189                 function_name = (symbol_c*)(new pragma_c("__uint_to_string"));
       
  5190                 
       
  5191                 if (IN_type_symbol == NULL)
       
  5192                   IN_type_symbol = last_type_symbol;
  4743                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5193                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4744                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
  5194                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
  4745                 function_type_prefix = return_type_symbol;
  5195                 function_type_prefix = return_type_symbol;
  4746                 break;
  5196                 break;
  4747                 
  5197                 
  4766             symbol_c *IN_param_value = &this->default_variable_name;
  5216             symbol_c *IN_param_value = &this->default_variable_name;
  4767         
  5217         
  4768             symbol_c *IN_type_symbol = param_data_type;
  5218             symbol_c *IN_type_symbol = param_data_type;
  4769             last_type_symbol = param_data_type;
  5219             last_type_symbol = param_data_type;
  4770             
  5220             
  4771             if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
  5221             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
  4772             {
  5222             {
  4773         
  5223         
       
  5224                 
       
  5225                 if (IN_type_symbol == NULL)
       
  5226                   IN_type_symbol = last_type_symbol;
  4774                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5227                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4775                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
  5228                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
  4776                 function_type_prefix = return_type_symbol;
  5229                 function_type_prefix = return_type_symbol;
  4777                 break;
  5230                 break;
  4778                 
  5231                 
  4797             symbol_c *IN_param_value = &this->default_variable_name;
  5250             symbol_c *IN_param_value = &this->default_variable_name;
  4798         
  5251         
  4799             symbol_c *IN_type_symbol = param_data_type;
  5252             symbol_c *IN_type_symbol = param_data_type;
  4800             last_type_symbol = param_data_type;
  5253             last_type_symbol = param_data_type;
  4801             
  5254             
  4802             if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
  5255             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
  4803             {
  5256             {
  4804         
  5257         
       
  5258                 
       
  5259                 if (IN_type_symbol == NULL)
       
  5260                   IN_type_symbol = last_type_symbol;
  4805                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5261                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4806                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
  5262                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
  4807                 function_type_prefix = return_type_symbol;
  5263                 function_type_prefix = return_type_symbol;
  4808                 break;
  5264                 break;
  4809                 
  5265                 
  4828             symbol_c *IN_param_value = &this->default_variable_name;
  5284             symbol_c *IN_param_value = &this->default_variable_name;
  4829         
  5285         
  4830             symbol_c *IN_type_symbol = param_data_type;
  5286             symbol_c *IN_type_symbol = param_data_type;
  4831             last_type_symbol = param_data_type;
  5287             last_type_symbol = param_data_type;
  4832             
  5288             
  4833             if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
  5289             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
  4834             {
  5290             {
  4835         
  5291         
       
  5292                 
       
  5293                 if (IN_type_symbol == NULL)
       
  5294                   IN_type_symbol = last_type_symbol;
  4836                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5295                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4837                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
  5296                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
  4838                 function_type_prefix = return_type_symbol;
  5297                 function_type_prefix = return_type_symbol;
  4839                 break;
  5298                 break;
  4840                 
  5299                 
  4859             symbol_c *IN_param_value = &this->default_variable_name;
  5318             symbol_c *IN_param_value = &this->default_variable_name;
  4860         
  5319         
  4861             symbol_c *IN_type_symbol = param_data_type;
  5320             symbol_c *IN_type_symbol = param_data_type;
  4862             last_type_symbol = param_data_type;
  5321             last_type_symbol = param_data_type;
  4863             
  5322             
  4864             if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
  5323             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
  4865             {
  5324             {
  4866         
  5325         
       
  5326                 
       
  5327                 if (IN_type_symbol == NULL)
       
  5328                   IN_type_symbol = last_type_symbol;
  4867                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5329                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4868                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
  5330                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
  4869                 function_type_prefix = return_type_symbol;
  5331                 function_type_prefix = return_type_symbol;
  4870                 break;
  5332                 break;
  4871                 
  5333                 
  4890             symbol_c *IN_param_value = &this->default_variable_name;
  5352             symbol_c *IN_param_value = &this->default_variable_name;
  4891         
  5353         
  4892             symbol_c *IN_type_symbol = param_data_type;
  5354             symbol_c *IN_type_symbol = param_data_type;
  4893             last_type_symbol = param_data_type;
  5355             last_type_symbol = param_data_type;
  4894             
  5356             
  4895             if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
  5357             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
  4896             {
  5358             {
  4897         
  5359         
       
  5360                 
       
  5361                 if (IN_type_symbol == NULL)
       
  5362                   IN_type_symbol = last_type_symbol;
  4898                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5363                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4899                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
  5364                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
  4900                 function_type_prefix = return_type_symbol;
  5365                 function_type_prefix = return_type_symbol;
  4901                 break;
  5366                 break;
  4902                 
  5367                 
  4921             symbol_c *IN_param_value = &this->default_variable_name;
  5386             symbol_c *IN_param_value = &this->default_variable_name;
  4922         
  5387         
  4923             symbol_c *IN_type_symbol = param_data_type;
  5388             symbol_c *IN_type_symbol = param_data_type;
  4924             last_type_symbol = param_data_type;
  5389             last_type_symbol = param_data_type;
  4925             
  5390             
  4926             if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
  5391             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
  4927             {
  5392             {
  4928         
  5393         
       
  5394                 
       
  5395                 if (IN_type_symbol == NULL)
       
  5396                   IN_type_symbol = last_type_symbol;
  4929                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5397                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4930                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
  5398                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
  4931                 function_type_prefix = return_type_symbol;
  5399                 function_type_prefix = return_type_symbol;
  4932                 break;
  5400                 break;
  4933                 
  5401                 
  4952             symbol_c *IN_param_value = &this->default_variable_name;
  5420             symbol_c *IN_param_value = &this->default_variable_name;
  4953         
  5421         
  4954             symbol_c *IN_type_symbol = param_data_type;
  5422             symbol_c *IN_type_symbol = param_data_type;
  4955             last_type_symbol = param_data_type;
  5423             last_type_symbol = param_data_type;
  4956             
  5424             
  4957             if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
  5425             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
  4958             {
  5426             {
  4959         
  5427         
       
  5428                 
       
  5429                 if (IN_type_symbol == NULL)
       
  5430                   IN_type_symbol = last_type_symbol;
  4960                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5431                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4961                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
  5432                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
  4962                 function_type_prefix = return_type_symbol;
  5433                 function_type_prefix = return_type_symbol;
  4963                 break;
  5434                 break;
  4964                 
  5435                 
  4983             symbol_c *IN_param_value = &this->default_variable_name;
  5454             symbol_c *IN_param_value = &this->default_variable_name;
  4984         
  5455         
  4985             symbol_c *IN_type_symbol = param_data_type;
  5456             symbol_c *IN_type_symbol = param_data_type;
  4986             last_type_symbol = param_data_type;
  5457             last_type_symbol = param_data_type;
  4987             
  5458             
  4988             if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
  5459             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
  4989             {
  5460             {
  4990         
  5461         
  4991                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
  5462                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
       
  5463                 
       
  5464                 if (IN_type_symbol == NULL)
       
  5465                   IN_type_symbol = last_type_symbol;
  4992                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5466                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  4993                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
  5467                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
  4994                 function_type_prefix = return_type_symbol;
  5468                 function_type_prefix = return_type_symbol;
  4995                 break;
  5469                 break;
  4996                 
  5470                 
  5015             symbol_c *IN_param_value = &this->default_variable_name;
  5489             symbol_c *IN_param_value = &this->default_variable_name;
  5016         
  5490         
  5017             symbol_c *IN_type_symbol = param_data_type;
  5491             symbol_c *IN_type_symbol = param_data_type;
  5018             last_type_symbol = param_data_type;
  5492             last_type_symbol = param_data_type;
  5019             
  5493             
  5020             if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
  5494             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
  5021             {
  5495             {
  5022         
  5496         
       
  5497                 
       
  5498                 if (IN_type_symbol == NULL)
       
  5499                   IN_type_symbol = last_type_symbol;
  5023                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5500                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5024                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
  5501                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
  5025                 function_type_prefix = return_type_symbol;
  5502                 function_type_prefix = return_type_symbol;
  5026                 break;
  5503                 break;
  5027                 
  5504                 
  5046             symbol_c *IN_param_value = &this->default_variable_name;
  5523             symbol_c *IN_param_value = &this->default_variable_name;
  5047         
  5524         
  5048             symbol_c *IN_type_symbol = param_data_type;
  5525             symbol_c *IN_type_symbol = param_data_type;
  5049             last_type_symbol = param_data_type;
  5526             last_type_symbol = param_data_type;
  5050             
  5527             
  5051             if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
  5528             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
  5052             {
  5529             {
  5053         
  5530         
       
  5531                 
       
  5532                 if (IN_type_symbol == NULL)
       
  5533                   IN_type_symbol = last_type_symbol;
  5054                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5534                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5055                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
  5535                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
  5056                 function_type_prefix = return_type_symbol;
  5536                 function_type_prefix = return_type_symbol;
  5057                 break;
  5537                 break;
  5058                 
  5538                 
  5077             symbol_c *IN_param_value = &this->default_variable_name;
  5557             symbol_c *IN_param_value = &this->default_variable_name;
  5078         
  5558         
  5079             symbol_c *IN_type_symbol = param_data_type;
  5559             symbol_c *IN_type_symbol = param_data_type;
  5080             last_type_symbol = param_data_type;
  5560             last_type_symbol = param_data_type;
  5081             
  5561             
  5082             if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
  5562             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
  5083             {
  5563             {
  5084         
  5564         
       
  5565                 
       
  5566                 if (IN_type_symbol == NULL)
       
  5567                   IN_type_symbol = last_type_symbol;
  5085                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5568                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5086                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
  5569                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
  5087                 function_type_prefix = return_type_symbol;
  5570                 function_type_prefix = return_type_symbol;
  5088                 break;
  5571                 break;
  5089                 
  5572                 
  5108             symbol_c *IN_param_value = &this->default_variable_name;
  5591             symbol_c *IN_param_value = &this->default_variable_name;
  5109         
  5592         
  5110             symbol_c *IN_type_symbol = param_data_type;
  5593             symbol_c *IN_type_symbol = param_data_type;
  5111             last_type_symbol = param_data_type;
  5594             last_type_symbol = param_data_type;
  5112             
  5595             
  5113             if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
  5596             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
  5114             {
  5597             {
  5115         
  5598         
       
  5599                 
       
  5600                 if (IN_type_symbol == NULL)
       
  5601                   IN_type_symbol = last_type_symbol;
  5116                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5602                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5117                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
  5603                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
  5118                 function_type_prefix = return_type_symbol;
  5604                 function_type_prefix = return_type_symbol;
  5119                 break;
  5605                 break;
  5120                 
  5606                 
  5139             symbol_c *IN_param_value = &this->default_variable_name;
  5625             symbol_c *IN_param_value = &this->default_variable_name;
  5140         
  5626         
  5141             symbol_c *IN_type_symbol = param_data_type;
  5627             symbol_c *IN_type_symbol = param_data_type;
  5142             last_type_symbol = param_data_type;
  5628             last_type_symbol = param_data_type;
  5143             
  5629             
  5144             if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
  5630             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
  5145             {
  5631             {
  5146         
  5632         
       
  5633                 
       
  5634                 if (IN_type_symbol == NULL)
       
  5635                   IN_type_symbol = last_type_symbol;
  5147                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5636                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5148                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
  5637                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
  5149                 function_type_prefix = return_type_symbol;
  5638                 function_type_prefix = return_type_symbol;
  5150                 break;
  5639                 break;
  5151                 
  5640                 
  5170             symbol_c *IN_param_value = &this->default_variable_name;
  5659             symbol_c *IN_param_value = &this->default_variable_name;
  5171         
  5660         
  5172             symbol_c *IN_type_symbol = param_data_type;
  5661             symbol_c *IN_type_symbol = param_data_type;
  5173             last_type_symbol = param_data_type;
  5662             last_type_symbol = param_data_type;
  5174             
  5663             
  5175             if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
  5664             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
  5176             {
  5665             {
  5177         
  5666         
  5178                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
  5667                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
       
  5668                 
       
  5669                 if (IN_type_symbol == NULL)
       
  5670                   IN_type_symbol = last_type_symbol;
  5179                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5671                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5180                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
  5672                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
  5181                 function_type_prefix = return_type_symbol;
  5673                 function_type_prefix = return_type_symbol;
  5182                 break;
  5674                 break;
  5183                 
  5675                 
  5202             symbol_c *IN_param_value = &this->default_variable_name;
  5694             symbol_c *IN_param_value = &this->default_variable_name;
  5203         
  5695         
  5204             symbol_c *IN_type_symbol = param_data_type;
  5696             symbol_c *IN_type_symbol = param_data_type;
  5205             last_type_symbol = param_data_type;
  5697             last_type_symbol = param_data_type;
  5206             
  5698             
  5207             if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
  5699             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
  5208             {
  5700             {
  5209         
  5701         
       
  5702                 
       
  5703                 if (IN_type_symbol == NULL)
       
  5704                   IN_type_symbol = last_type_symbol;
  5210                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5705                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5211                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
  5706                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
  5212                 function_type_prefix = return_type_symbol;
  5707                 function_type_prefix = return_type_symbol;
  5213                 break;
  5708                 break;
  5214                 
  5709                 
  5233             symbol_c *IN_param_value = &this->default_variable_name;
  5728             symbol_c *IN_param_value = &this->default_variable_name;
  5234         
  5729         
  5235             symbol_c *IN_type_symbol = param_data_type;
  5730             symbol_c *IN_type_symbol = param_data_type;
  5236             last_type_symbol = param_data_type;
  5731             last_type_symbol = param_data_type;
  5237             
  5732             
  5238             if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
  5733             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
  5239             {
  5734             {
  5240         
  5735         
  5241                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
  5736                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
       
  5737                 
       
  5738                 if (IN_type_symbol == NULL)
       
  5739                   IN_type_symbol = last_type_symbol;
  5242                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5740                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5243                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
  5741                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
  5244                 function_type_prefix = return_type_symbol;
  5742                 function_type_prefix = return_type_symbol;
  5245                 break;
  5743                 break;
  5246                 
  5744                 
  5265             symbol_c *IN_param_value = &this->default_variable_name;
  5763             symbol_c *IN_param_value = &this->default_variable_name;
  5266         
  5764         
  5267             symbol_c *IN_type_symbol = param_data_type;
  5765             symbol_c *IN_type_symbol = param_data_type;
  5268             last_type_symbol = param_data_type;
  5766             last_type_symbol = param_data_type;
  5269             
  5767             
  5270             if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
  5768             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
  5271             {
  5769             {
  5272         
  5770         
  5273                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
  5771                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
       
  5772                 
       
  5773                 if (IN_type_symbol == NULL)
       
  5774                   IN_type_symbol = last_type_symbol;
  5274                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5775                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5275                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
  5776                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
  5276                 function_type_prefix = return_type_symbol;
  5777                 function_type_prefix = return_type_symbol;
  5277                 break;
  5778                 break;
  5278                 
  5779                 
  5297             symbol_c *IN_param_value = &this->default_variable_name;
  5798             symbol_c *IN_param_value = &this->default_variable_name;
  5298         
  5799         
  5299             symbol_c *IN_type_symbol = param_data_type;
  5800             symbol_c *IN_type_symbol = param_data_type;
  5300             last_type_symbol = param_data_type;
  5801             last_type_symbol = param_data_type;
  5301             
  5802             
  5302             if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
  5803             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
  5303             {
  5804             {
  5304         
  5805         
       
  5806                 
       
  5807                 if (IN_type_symbol == NULL)
       
  5808                   IN_type_symbol = last_type_symbol;
  5305                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5809                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5306                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
  5810                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
  5307                 function_type_prefix = return_type_symbol;
  5811                 function_type_prefix = return_type_symbol;
  5308                 break;
  5812                 break;
  5309                 
  5813                 
  5328             symbol_c *IN_param_value = &this->default_variable_name;
  5832             symbol_c *IN_param_value = &this->default_variable_name;
  5329         
  5833         
  5330             symbol_c *IN_type_symbol = param_data_type;
  5834             symbol_c *IN_type_symbol = param_data_type;
  5331             last_type_symbol = param_data_type;
  5835             last_type_symbol = param_data_type;
  5332             
  5836             
  5333             if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
  5837             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
  5334             {
  5838             {
  5335         
  5839         
  5336                 function_name = (symbol_c*)(new pragma_c("__bit_to_string"));
  5840                 function_name = (symbol_c*)(new pragma_c("__bit_to_string"));
       
  5841                 
       
  5842                 if (IN_type_symbol == NULL)
       
  5843                   IN_type_symbol = last_type_symbol;
  5337                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5844                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5338                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
  5845                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
  5339                 function_type_prefix = return_type_symbol;
  5846                 function_type_prefix = return_type_symbol;
  5340                 break;
  5847                 break;
  5341                 
  5848                 
  5360             symbol_c *IN_param_value = &this->default_variable_name;
  5867             symbol_c *IN_param_value = &this->default_variable_name;
  5361         
  5868         
  5362             symbol_c *IN_type_symbol = param_data_type;
  5869             symbol_c *IN_type_symbol = param_data_type;
  5363             last_type_symbol = param_data_type;
  5870             last_type_symbol = param_data_type;
  5364             
  5871             
  5365             if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
  5872             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
  5366             {
  5873             {
  5367         
  5874         
       
  5875                 
       
  5876                 if (IN_type_symbol == NULL)
       
  5877                   IN_type_symbol = last_type_symbol;
  5368                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5878                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5369                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
  5879                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
  5370                 function_type_prefix = return_type_symbol;
  5880                 function_type_prefix = return_type_symbol;
  5371                 break;
  5881                 break;
  5372                 
  5882                 
  5391             symbol_c *IN_param_value = &this->default_variable_name;
  5901             symbol_c *IN_param_value = &this->default_variable_name;
  5392         
  5902         
  5393             symbol_c *IN_type_symbol = param_data_type;
  5903             symbol_c *IN_type_symbol = param_data_type;
  5394             last_type_symbol = param_data_type;
  5904             last_type_symbol = param_data_type;
  5395             
  5905             
  5396             if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
  5906             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
  5397             {
  5907             {
  5398         
  5908         
       
  5909                 
       
  5910                 if (IN_type_symbol == NULL)
       
  5911                   IN_type_symbol = last_type_symbol;
  5399                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5912                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5400                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
  5913                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
  5401                 function_type_prefix = return_type_symbol;
  5914                 function_type_prefix = return_type_symbol;
  5402                 break;
  5915                 break;
  5403                 
  5916                 
  5422             symbol_c *IN_param_value = &this->default_variable_name;
  5935             symbol_c *IN_param_value = &this->default_variable_name;
  5423         
  5936         
  5424             symbol_c *IN_type_symbol = param_data_type;
  5937             symbol_c *IN_type_symbol = param_data_type;
  5425             last_type_symbol = param_data_type;
  5938             last_type_symbol = param_data_type;
  5426             
  5939             
  5427             if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
  5940             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
  5428             {
  5941             {
  5429         
  5942         
       
  5943                 
       
  5944                 if (IN_type_symbol == NULL)
       
  5945                   IN_type_symbol = last_type_symbol;
  5430                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5946                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5431                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
  5947                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
  5432                 function_type_prefix = return_type_symbol;
  5948                 function_type_prefix = return_type_symbol;
  5433                 break;
  5949                 break;
  5434                 
  5950                 
  5453             symbol_c *IN_param_value = &this->default_variable_name;
  5969             symbol_c *IN_param_value = &this->default_variable_name;
  5454         
  5970         
  5455             symbol_c *IN_type_symbol = param_data_type;
  5971             symbol_c *IN_type_symbol = param_data_type;
  5456             last_type_symbol = param_data_type;
  5972             last_type_symbol = param_data_type;
  5457             
  5973             
  5458             if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
  5974             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
  5459             {
  5975             {
  5460         
  5976         
       
  5977                 
       
  5978                 if (IN_type_symbol == NULL)
       
  5979                   IN_type_symbol = last_type_symbol;
  5461                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5980                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5462                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
  5981                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
  5463                 function_type_prefix = return_type_symbol;
  5982                 function_type_prefix = return_type_symbol;
  5464                 break;
  5983                 break;
  5465                 
  5984                 
  5484             symbol_c *IN_param_value = &this->default_variable_name;
  6003             symbol_c *IN_param_value = &this->default_variable_name;
  5485         
  6004         
  5486             symbol_c *IN_type_symbol = param_data_type;
  6005             symbol_c *IN_type_symbol = param_data_type;
  5487             last_type_symbol = param_data_type;
  6006             last_type_symbol = param_data_type;
  5488             
  6007             
  5489             if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
  6008             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
  5490             {
  6009             {
  5491         
  6010         
       
  6011                 
       
  6012                 if (IN_type_symbol == NULL)
       
  6013                   IN_type_symbol = last_type_symbol;
  5492                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6014                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5493                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
  6015                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
  5494                 function_type_prefix = return_type_symbol;
  6016                 function_type_prefix = return_type_symbol;
  5495                 break;
  6017                 break;
  5496                 
  6018                 
  5515             symbol_c *IN_param_value = &this->default_variable_name;
  6037             symbol_c *IN_param_value = &this->default_variable_name;
  5516         
  6038         
  5517             symbol_c *IN_type_symbol = param_data_type;
  6039             symbol_c *IN_type_symbol = param_data_type;
  5518             last_type_symbol = param_data_type;
  6040             last_type_symbol = param_data_type;
  5519             
  6041             
  5520             if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
  6042             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
  5521             {
  6043             {
  5522         
  6044         
       
  6045                 
       
  6046                 if (IN_type_symbol == NULL)
       
  6047                   IN_type_symbol = last_type_symbol;
  5523                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6048                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5524                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
  6049                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
  5525                 function_type_prefix = return_type_symbol;
  6050                 function_type_prefix = return_type_symbol;
  5526                 break;
  6051                 break;
  5527                 
  6052                 
  5546             symbol_c *IN_param_value = &this->default_variable_name;
  6071             symbol_c *IN_param_value = &this->default_variable_name;
  5547         
  6072         
  5548             symbol_c *IN_type_symbol = param_data_type;
  6073             symbol_c *IN_type_symbol = param_data_type;
  5549             last_type_symbol = param_data_type;
  6074             last_type_symbol = param_data_type;
  5550             
  6075             
  5551             if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
  6076             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
  5552             {
  6077             {
  5553         
  6078         
       
  6079                 
       
  6080                 if (IN_type_symbol == NULL)
       
  6081                   IN_type_symbol = last_type_symbol;
  5554                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6082                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5555                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
  6083                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
  5556                 function_type_prefix = return_type_symbol;
  6084                 function_type_prefix = return_type_symbol;
  5557                 break;
  6085                 break;
  5558                 
  6086                 
  5577             symbol_c *IN_param_value = &this->default_variable_name;
  6105             symbol_c *IN_param_value = &this->default_variable_name;
  5578         
  6106         
  5579             symbol_c *IN_type_symbol = param_data_type;
  6107             symbol_c *IN_type_symbol = param_data_type;
  5580             last_type_symbol = param_data_type;
  6108             last_type_symbol = param_data_type;
  5581             
  6109             
  5582             if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
  6110             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
  5583             {
  6111             {
  5584         
  6112         
  5585                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
  6113                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
       
  6114                 
       
  6115                 if (IN_type_symbol == NULL)
       
  6116                   IN_type_symbol = last_type_symbol;
  5586                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6117                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5587                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
  6118                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
  5588                 function_type_prefix = return_type_symbol;
  6119                 function_type_prefix = return_type_symbol;
  5589                 break;
  6120                 break;
  5590                 
  6121                 
  5609             symbol_c *IN_param_value = &this->default_variable_name;
  6140             symbol_c *IN_param_value = &this->default_variable_name;
  5610         
  6141         
  5611             symbol_c *IN_type_symbol = param_data_type;
  6142             symbol_c *IN_type_symbol = param_data_type;
  5612             last_type_symbol = param_data_type;
  6143             last_type_symbol = param_data_type;
  5613             
  6144             
  5614             if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
  6145             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
  5615             {
  6146             {
  5616         
  6147         
       
  6148                 
       
  6149                 if (IN_type_symbol == NULL)
       
  6150                   IN_type_symbol = last_type_symbol;
  5617                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6151                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5618                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
  6152                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
  5619                 function_type_prefix = return_type_symbol;
  6153                 function_type_prefix = return_type_symbol;
  5620                 break;
  6154                 break;
  5621                 
  6155                 
  5640             symbol_c *IN_param_value = &this->default_variable_name;
  6174             symbol_c *IN_param_value = &this->default_variable_name;
  5641         
  6175         
  5642             symbol_c *IN_type_symbol = param_data_type;
  6176             symbol_c *IN_type_symbol = param_data_type;
  5643             last_type_symbol = param_data_type;
  6177             last_type_symbol = param_data_type;
  5644             
  6178             
  5645             if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
  6179             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
  5646             {
  6180             {
  5647         
  6181         
  5648                 function_name = (symbol_c*)(new pragma_c("__string_to_real"));
  6182                 function_name = (symbol_c*)(new pragma_c("__string_to_real"));
       
  6183                 
       
  6184                 if (IN_type_symbol == NULL)
       
  6185                   IN_type_symbol = last_type_symbol;
  5649                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6186                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5650                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
  6187                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
  5651                 function_type_prefix = return_type_symbol;
  6188                 function_type_prefix = return_type_symbol;
  5652                 break;
  6189                 break;
  5653                 
  6190                 
  5672             symbol_c *IN_param_value = &this->default_variable_name;
  6209             symbol_c *IN_param_value = &this->default_variable_name;
  5673         
  6210         
  5674             symbol_c *IN_type_symbol = param_data_type;
  6211             symbol_c *IN_type_symbol = param_data_type;
  5675             last_type_symbol = param_data_type;
  6212             last_type_symbol = param_data_type;
  5676             
  6213             
  5677             if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
  6214             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
  5678             {
  6215             {
  5679         
  6216         
  5680                 function_name = (symbol_c*)(new pragma_c("__string_to_sint"));
  6217                 function_name = (symbol_c*)(new pragma_c("__string_to_sint"));
       
  6218                 
       
  6219                 if (IN_type_symbol == NULL)
       
  6220                   IN_type_symbol = last_type_symbol;
  5681                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6221                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5682                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
  6222                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
  5683                 function_type_prefix = return_type_symbol;
  6223                 function_type_prefix = return_type_symbol;
  5684                 break;
  6224                 break;
  5685                 
  6225                 
  5704             symbol_c *IN_param_value = &this->default_variable_name;
  6244             symbol_c *IN_param_value = &this->default_variable_name;
  5705         
  6245         
  5706             symbol_c *IN_type_symbol = param_data_type;
  6246             symbol_c *IN_type_symbol = param_data_type;
  5707             last_type_symbol = param_data_type;
  6247             last_type_symbol = param_data_type;
  5708             
  6248             
  5709             if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
  6249             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
  5710             {
  6250             {
  5711         
  6251         
  5712                 function_name = (symbol_c*)(new pragma_c("__string_to_sint"));
  6252                 function_name = (symbol_c*)(new pragma_c("__string_to_sint"));
       
  6253                 
       
  6254                 if (IN_type_symbol == NULL)
       
  6255                   IN_type_symbol = last_type_symbol;
  5713                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6256                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5714                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
  6257                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
  5715                 function_type_prefix = return_type_symbol;
  6258                 function_type_prefix = return_type_symbol;
  5716                 break;
  6259                 break;
  5717                 
  6260                 
  5736             symbol_c *IN_param_value = &this->default_variable_name;
  6279             symbol_c *IN_param_value = &this->default_variable_name;
  5737         
  6280         
  5738             symbol_c *IN_type_symbol = param_data_type;
  6281             symbol_c *IN_type_symbol = param_data_type;
  5739             last_type_symbol = param_data_type;
  6282             last_type_symbol = param_data_type;
  5740             
  6283             
  5741             if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
  6284             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
  5742             {
  6285             {
  5743         
  6286         
  5744                 function_name = (symbol_c*)(new pragma_c("__string_to_sint"));
  6287                 function_name = (symbol_c*)(new pragma_c("__string_to_sint"));
       
  6288                 
       
  6289                 if (IN_type_symbol == NULL)
       
  6290                   IN_type_symbol = last_type_symbol;
  5745                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6291                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5746                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
  6292                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
  5747                 function_type_prefix = return_type_symbol;
  6293                 function_type_prefix = return_type_symbol;
  5748                 break;
  6294                 break;
  5749                 
  6295                 
  5768             symbol_c *IN_param_value = &this->default_variable_name;
  6314             symbol_c *IN_param_value = &this->default_variable_name;
  5769         
  6315         
  5770             symbol_c *IN_type_symbol = param_data_type;
  6316             symbol_c *IN_type_symbol = param_data_type;
  5771             last_type_symbol = param_data_type;
  6317             last_type_symbol = param_data_type;
  5772             
  6318             
  5773             if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
  6319             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
  5774             {
  6320             {
  5775         
  6321         
  5776                 function_name = (symbol_c*)(new pragma_c("__string_to_time"));
  6322                 function_name = (symbol_c*)(new pragma_c("__string_to_time"));
       
  6323                 
       
  6324                 if (IN_type_symbol == NULL)
       
  6325                   IN_type_symbol = last_type_symbol;
  5777                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6326                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5778                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
  6327                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
  5779                 function_type_prefix = return_type_symbol;
  6328                 function_type_prefix = return_type_symbol;
  5780                 break;
  6329                 break;
  5781                 
  6330                 
  5800             symbol_c *IN_param_value = &this->default_variable_name;
  6349             symbol_c *IN_param_value = &this->default_variable_name;
  5801         
  6350         
  5802             symbol_c *IN_type_symbol = param_data_type;
  6351             symbol_c *IN_type_symbol = param_data_type;
  5803             last_type_symbol = param_data_type;
  6352             last_type_symbol = param_data_type;
  5804             
  6353             
  5805             if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
  6354             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
  5806             {
  6355             {
  5807         
  6356         
  5808                 function_name = (symbol_c*)(new pragma_c("__string_to_bit"));
  6357                 function_name = (symbol_c*)(new pragma_c("__string_to_bit"));
       
  6358                 
       
  6359                 if (IN_type_symbol == NULL)
       
  6360                   IN_type_symbol = last_type_symbol;
  5809                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6361                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5810                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
  6362                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
  5811                 function_type_prefix = return_type_symbol;
  6363                 function_type_prefix = return_type_symbol;
  5812                 break;
  6364                 break;
  5813                 
  6365                 
  5832             symbol_c *IN_param_value = &this->default_variable_name;
  6384             symbol_c *IN_param_value = &this->default_variable_name;
  5833         
  6385         
  5834             symbol_c *IN_type_symbol = param_data_type;
  6386             symbol_c *IN_type_symbol = param_data_type;
  5835             last_type_symbol = param_data_type;
  6387             last_type_symbol = param_data_type;
  5836             
  6388             
  5837             if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
  6389             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
  5838             {
  6390             {
  5839         
  6391         
  5840                 function_name = (symbol_c*)(new pragma_c("__string_to_time"));
  6392                 function_name = (symbol_c*)(new pragma_c("__string_to_time"));
       
  6393                 
       
  6394                 if (IN_type_symbol == NULL)
       
  6395                   IN_type_symbol = last_type_symbol;
  5841                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6396                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5842                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
  6397                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
  5843                 function_type_prefix = return_type_symbol;
  6398                 function_type_prefix = return_type_symbol;
  5844                 break;
  6399                 break;
  5845                 
  6400                 
  5864             symbol_c *IN_param_value = &this->default_variable_name;
  6419             symbol_c *IN_param_value = &this->default_variable_name;
  5865         
  6420         
  5866             symbol_c *IN_type_symbol = param_data_type;
  6421             symbol_c *IN_type_symbol = param_data_type;
  5867             last_type_symbol = param_data_type;
  6422             last_type_symbol = param_data_type;
  5868             
  6423             
  5869             if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
  6424             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
  5870             {
  6425             {
  5871         
  6426         
  5872                 function_name = (symbol_c*)(new pragma_c("__string_to_time"));
  6427                 function_name = (symbol_c*)(new pragma_c("__string_to_time"));
       
  6428                 
       
  6429                 if (IN_type_symbol == NULL)
       
  6430                   IN_type_symbol = last_type_symbol;
  5873                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6431                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5874                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
  6432                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
  5875                 function_type_prefix = return_type_symbol;
  6433                 function_type_prefix = return_type_symbol;
  5876                 break;
  6434                 break;
  5877                 
  6435                 
  5896             symbol_c *IN_param_value = &this->default_variable_name;
  6454             symbol_c *IN_param_value = &this->default_variable_name;
  5897         
  6455         
  5898             symbol_c *IN_type_symbol = param_data_type;
  6456             symbol_c *IN_type_symbol = param_data_type;
  5899             last_type_symbol = param_data_type;
  6457             last_type_symbol = param_data_type;
  5900             
  6458             
  5901             if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
  6459             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
  5902             {
  6460             {
  5903         
  6461         
  5904                 function_name = (symbol_c*)(new pragma_c("__string_to_uint"));
  6462                 function_name = (symbol_c*)(new pragma_c("__string_to_uint"));
       
  6463                 
       
  6464                 if (IN_type_symbol == NULL)
       
  6465                   IN_type_symbol = last_type_symbol;
  5905                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6466                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5906                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
  6467                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
  5907                 function_type_prefix = return_type_symbol;
  6468                 function_type_prefix = return_type_symbol;
  5908                 break;
  6469                 break;
  5909                 
  6470                 
  5928             symbol_c *IN_param_value = &this->default_variable_name;
  6489             symbol_c *IN_param_value = &this->default_variable_name;
  5929         
  6490         
  5930             symbol_c *IN_type_symbol = param_data_type;
  6491             symbol_c *IN_type_symbol = param_data_type;
  5931             last_type_symbol = param_data_type;
  6492             last_type_symbol = param_data_type;
  5932             
  6493             
  5933             if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
  6494             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
  5934             {
  6495             {
  5935         
  6496         
  5936                 function_name = (symbol_c*)(new pragma_c("__string_to_bit"));
  6497                 function_name = (symbol_c*)(new pragma_c("__string_to_bit"));
       
  6498                 
       
  6499                 if (IN_type_symbol == NULL)
       
  6500                   IN_type_symbol = last_type_symbol;
  5937                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6501                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5938                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
  6502                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
  5939                 function_type_prefix = return_type_symbol;
  6503                 function_type_prefix = return_type_symbol;
  5940                 break;
  6504                 break;
  5941                 
  6505                 
  5960             symbol_c *IN_param_value = &this->default_variable_name;
  6524             symbol_c *IN_param_value = &this->default_variable_name;
  5961         
  6525         
  5962             symbol_c *IN_type_symbol = param_data_type;
  6526             symbol_c *IN_type_symbol = param_data_type;
  5963             last_type_symbol = param_data_type;
  6527             last_type_symbol = param_data_type;
  5964             
  6528             
  5965             if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
  6529             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
  5966             {
  6530             {
  5967         
  6531         
  5968                 function_name = (symbol_c*)(new pragma_c("__string_to_bit"));
  6532                 function_name = (symbol_c*)(new pragma_c("__string_to_bit"));
       
  6533                 
       
  6534                 if (IN_type_symbol == NULL)
       
  6535                   IN_type_symbol = last_type_symbol;
  5969                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6536                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  5970                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
  6537                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
  5971                 function_type_prefix = return_type_symbol;
  6538                 function_type_prefix = return_type_symbol;
  5972                 break;
  6539                 break;
  5973                 
  6540                 
  5992             symbol_c *IN_param_value = &this->default_variable_name;
  6559             symbol_c *IN_param_value = &this->default_variable_name;
  5993         
  6560         
  5994             symbol_c *IN_type_symbol = param_data_type;
  6561             symbol_c *IN_type_symbol = param_data_type;
  5995             last_type_symbol = param_data_type;
  6562             last_type_symbol = param_data_type;
  5996             
  6563             
  5997             if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
  6564             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
  5998             {
  6565             {
  5999         
  6566         
  6000                 function_name = (symbol_c*)(new pragma_c("__string_to_uint"));
  6567                 function_name = (symbol_c*)(new pragma_c("__string_to_uint"));
       
  6568                 
       
  6569                 if (IN_type_symbol == NULL)
       
  6570                   IN_type_symbol = last_type_symbol;
  6001                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6571                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6002                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
  6572                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
  6003                 function_type_prefix = return_type_symbol;
  6573                 function_type_prefix = return_type_symbol;
  6004                 break;
  6574                 break;
  6005                 
  6575                 
  6024             symbol_c *IN_param_value = &this->default_variable_name;
  6594             symbol_c *IN_param_value = &this->default_variable_name;
  6025         
  6595         
  6026             symbol_c *IN_type_symbol = param_data_type;
  6596             symbol_c *IN_type_symbol = param_data_type;
  6027             last_type_symbol = param_data_type;
  6597             last_type_symbol = param_data_type;
  6028             
  6598             
  6029             if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
  6599             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
  6030             {
  6600             {
  6031         
  6601         
  6032                 function_name = (symbol_c*)(new pragma_c("__string_to_real"));
  6602                 function_name = (symbol_c*)(new pragma_c("__string_to_real"));
       
  6603                 
       
  6604                 if (IN_type_symbol == NULL)
       
  6605                   IN_type_symbol = last_type_symbol;
  6033                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6606                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6034                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
  6607                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
  6035                 function_type_prefix = return_type_symbol;
  6608                 function_type_prefix = return_type_symbol;
  6036                 break;
  6609                 break;
  6037                 
  6610                 
  6056             symbol_c *IN_param_value = &this->default_variable_name;
  6629             symbol_c *IN_param_value = &this->default_variable_name;
  6057         
  6630         
  6058             symbol_c *IN_type_symbol = param_data_type;
  6631             symbol_c *IN_type_symbol = param_data_type;
  6059             last_type_symbol = param_data_type;
  6632             last_type_symbol = param_data_type;
  6060             
  6633             
  6061             if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
  6634             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
  6062             {
  6635             {
  6063         
  6636         
  6064                 function_name = (symbol_c*)(new pragma_c("__string_to_bit"));
  6637                 function_name = (symbol_c*)(new pragma_c("__string_to_bit"));
       
  6638                 
       
  6639                 if (IN_type_symbol == NULL)
       
  6640                   IN_type_symbol = last_type_symbol;
  6065                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6641                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6066                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
  6642                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
  6067                 function_type_prefix = return_type_symbol;
  6643                 function_type_prefix = return_type_symbol;
  6068                 break;
  6644                 break;
  6069                 
  6645                 
  6088             symbol_c *IN_param_value = &this->default_variable_name;
  6664             symbol_c *IN_param_value = &this->default_variable_name;
  6089         
  6665         
  6090             symbol_c *IN_type_symbol = param_data_type;
  6666             symbol_c *IN_type_symbol = param_data_type;
  6091             last_type_symbol = param_data_type;
  6667             last_type_symbol = param_data_type;
  6092             
  6668             
  6093             if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
  6669             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
  6094             {
  6670             {
  6095         
  6671         
  6096                 function_name = (symbol_c*)(new pragma_c("__string_to_uint"));
  6672                 function_name = (symbol_c*)(new pragma_c("__string_to_uint"));
       
  6673                 
       
  6674                 if (IN_type_symbol == NULL)
       
  6675                   IN_type_symbol = last_type_symbol;
  6097                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6676                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6098                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
  6677                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
  6099                 function_type_prefix = return_type_symbol;
  6678                 function_type_prefix = return_type_symbol;
  6100                 break;
  6679                 break;
  6101                 
  6680                 
  6120             symbol_c *IN_param_value = &this->default_variable_name;
  6699             symbol_c *IN_param_value = &this->default_variable_name;
  6121         
  6700         
  6122             symbol_c *IN_type_symbol = param_data_type;
  6701             symbol_c *IN_type_symbol = param_data_type;
  6123             last_type_symbol = param_data_type;
  6702             last_type_symbol = param_data_type;
  6124             
  6703             
  6125             if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
  6704             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
  6126             {
  6705             {
  6127         
  6706         
  6128                 function_name = (symbol_c*)(new pragma_c("__string_to_uint"));
  6707                 function_name = (symbol_c*)(new pragma_c("__string_to_uint"));
       
  6708                 
       
  6709                 if (IN_type_symbol == NULL)
       
  6710                   IN_type_symbol = last_type_symbol;
  6129                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6711                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6130                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
  6712                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
  6131                 function_type_prefix = return_type_symbol;
  6713                 function_type_prefix = return_type_symbol;
  6132                 break;
  6714                 break;
  6133                 
  6715                 
  6152             symbol_c *IN_param_value = &this->default_variable_name;
  6734             symbol_c *IN_param_value = &this->default_variable_name;
  6153         
  6735         
  6154             symbol_c *IN_type_symbol = param_data_type;
  6736             symbol_c *IN_type_symbol = param_data_type;
  6155             last_type_symbol = param_data_type;
  6737             last_type_symbol = param_data_type;
  6156             
  6738             
  6157             if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
  6739             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
  6158             {
  6740             {
  6159         
  6741         
  6160                 function_name = (symbol_c*)(new pragma_c("__string_to_bool"));
  6742                 function_name = (symbol_c*)(new pragma_c("__string_to_bool"));
       
  6743                 
       
  6744                 if (IN_type_symbol == NULL)
       
  6745                   IN_type_symbol = last_type_symbol;
  6161                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6746                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6162                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
  6747                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
  6163                 function_type_prefix = return_type_symbol;
  6748                 function_type_prefix = return_type_symbol;
  6164                 break;
  6749                 break;
  6165                 
  6750                 
  6184             symbol_c *IN_param_value = &this->default_variable_name;
  6769             symbol_c *IN_param_value = &this->default_variable_name;
  6185         
  6770         
  6186             symbol_c *IN_type_symbol = param_data_type;
  6771             symbol_c *IN_type_symbol = param_data_type;
  6187             last_type_symbol = param_data_type;
  6772             last_type_symbol = param_data_type;
  6188             
  6773             
  6189             if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
  6774             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
  6190             {
  6775             {
  6191         
  6776         
  6192                 function_name = (symbol_c*)(new pragma_c("__string_to_time"));
  6777                 function_name = (symbol_c*)(new pragma_c("__string_to_time"));
       
  6778                 
       
  6779                 if (IN_type_symbol == NULL)
       
  6780                   IN_type_symbol = last_type_symbol;
  6193                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6781                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6194                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
  6782                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
  6195                 function_type_prefix = return_type_symbol;
  6783                 function_type_prefix = return_type_symbol;
  6196                 break;
  6784                 break;
  6197                 
  6785                 
  6216             symbol_c *IN_param_value = &this->default_variable_name;
  6804             symbol_c *IN_param_value = &this->default_variable_name;
  6217         
  6805         
  6218             symbol_c *IN_type_symbol = param_data_type;
  6806             symbol_c *IN_type_symbol = param_data_type;
  6219             last_type_symbol = param_data_type;
  6807             last_type_symbol = param_data_type;
  6220             
  6808             
  6221             if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
  6809             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
  6222             {
  6810             {
  6223         
  6811         
  6224                 function_name = (symbol_c*)(new pragma_c("__string_to_sint"));
  6812                 function_name = (symbol_c*)(new pragma_c("__string_to_sint"));
       
  6813                 
       
  6814                 if (IN_type_symbol == NULL)
       
  6815                   IN_type_symbol = last_type_symbol;
  6225                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6816                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6226                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
  6817                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
  6227                 function_type_prefix = return_type_symbol;
  6818                 function_type_prefix = return_type_symbol;
  6228                 break;
  6819                 break;
  6229                 
  6820                 
  6248             symbol_c *IN_param_value = &this->default_variable_name;
  6839             symbol_c *IN_param_value = &this->default_variable_name;
  6249         
  6840         
  6250             symbol_c *IN_type_symbol = param_data_type;
  6841             symbol_c *IN_type_symbol = param_data_type;
  6251             last_type_symbol = param_data_type;
  6842             last_type_symbol = param_data_type;
  6252             
  6843             
  6253             if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
  6844             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
  6254             {
  6845             {
  6255         
  6846         
       
  6847                 
       
  6848                 if (IN_type_symbol == NULL)
       
  6849                   IN_type_symbol = last_type_symbol;
  6256                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6850                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6257                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
  6851                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
  6258                 function_type_prefix = return_type_symbol;
  6852                 function_type_prefix = return_type_symbol;
  6259                 break;
  6853                 break;
  6260                 
  6854                 
  6279             symbol_c *IN_param_value = &this->default_variable_name;
  6873             symbol_c *IN_param_value = &this->default_variable_name;
  6280         
  6874         
  6281             symbol_c *IN_type_symbol = param_data_type;
  6875             symbol_c *IN_type_symbol = param_data_type;
  6282             last_type_symbol = param_data_type;
  6876             last_type_symbol = param_data_type;
  6283             
  6877             
  6284             if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
  6878             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
  6285             {
  6879             {
  6286         
  6880         
       
  6881                 
       
  6882                 if (IN_type_symbol == NULL)
       
  6883                   IN_type_symbol = last_type_symbol;
  6287                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6884                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6288                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
  6885                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
  6289                 function_type_prefix = return_type_symbol;
  6886                 function_type_prefix = return_type_symbol;
  6290                 break;
  6887                 break;
  6291                 
  6888                 
  6310             symbol_c *IN_param_value = &this->default_variable_name;
  6907             symbol_c *IN_param_value = &this->default_variable_name;
  6311         
  6908         
  6312             symbol_c *IN_type_symbol = param_data_type;
  6909             symbol_c *IN_type_symbol = param_data_type;
  6313             last_type_symbol = param_data_type;
  6910             last_type_symbol = param_data_type;
  6314             
  6911             
  6315             if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
  6912             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
  6316             {
  6913             {
  6317         
  6914         
       
  6915                 
       
  6916                 if (IN_type_symbol == NULL)
       
  6917                   IN_type_symbol = last_type_symbol;
  6318                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6918                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6319                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
  6919                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
  6320                 function_type_prefix = return_type_symbol;
  6920                 function_type_prefix = return_type_symbol;
  6321                 break;
  6921                 break;
  6322                 
  6922                 
  6341             symbol_c *IN_param_value = &this->default_variable_name;
  6941             symbol_c *IN_param_value = &this->default_variable_name;
  6342         
  6942         
  6343             symbol_c *IN_type_symbol = param_data_type;
  6943             symbol_c *IN_type_symbol = param_data_type;
  6344             last_type_symbol = param_data_type;
  6944             last_type_symbol = param_data_type;
  6345             
  6945             
  6346             if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
  6946             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
  6347             {
  6947             {
  6348         
  6948         
       
  6949                 
       
  6950                 if (IN_type_symbol == NULL)
       
  6951                   IN_type_symbol = last_type_symbol;
  6349                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6952                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6350                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
  6953                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
  6351                 function_type_prefix = return_type_symbol;
  6954                 function_type_prefix = return_type_symbol;
  6352                 break;
  6955                 break;
  6353                 
  6956                 
  6372             symbol_c *IN_param_value = &this->default_variable_name;
  6975             symbol_c *IN_param_value = &this->default_variable_name;
  6373         
  6976         
  6374             symbol_c *IN_type_symbol = param_data_type;
  6977             symbol_c *IN_type_symbol = param_data_type;
  6375             last_type_symbol = param_data_type;
  6978             last_type_symbol = param_data_type;
  6376             
  6979             
  6377             if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
  6980             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
  6378             {
  6981             {
  6379         
  6982         
  6380                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
  6983                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
       
  6984                 
       
  6985                 if (IN_type_symbol == NULL)
       
  6986                   IN_type_symbol = last_type_symbol;
  6381                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6987                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6382                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
  6988                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
  6383                 function_type_prefix = return_type_symbol;
  6989                 function_type_prefix = return_type_symbol;
  6384                 break;
  6990                 break;
  6385                 
  6991                 
  6404             symbol_c *IN_param_value = &this->default_variable_name;
  7010             symbol_c *IN_param_value = &this->default_variable_name;
  6405         
  7011         
  6406             symbol_c *IN_type_symbol = param_data_type;
  7012             symbol_c *IN_type_symbol = param_data_type;
  6407             last_type_symbol = param_data_type;
  7013             last_type_symbol = param_data_type;
  6408             
  7014             
  6409             if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
  7015             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
  6410             {
  7016             {
  6411         
  7017         
       
  7018                 
       
  7019                 if (IN_type_symbol == NULL)
       
  7020                   IN_type_symbol = last_type_symbol;
  6412                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7021                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6413                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
  7022                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
  6414                 function_type_prefix = return_type_symbol;
  7023                 function_type_prefix = return_type_symbol;
  6415                 break;
  7024                 break;
  6416                 
  7025                 
  6435             symbol_c *IN_param_value = &this->default_variable_name;
  7044             symbol_c *IN_param_value = &this->default_variable_name;
  6436         
  7045         
  6437             symbol_c *IN_type_symbol = param_data_type;
  7046             symbol_c *IN_type_symbol = param_data_type;
  6438             last_type_symbol = param_data_type;
  7047             last_type_symbol = param_data_type;
  6439             
  7048             
  6440             if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
  7049             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
  6441             {
  7050             {
  6442         
  7051         
  6443                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
  7052                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
       
  7053                 
       
  7054                 if (IN_type_symbol == NULL)
       
  7055                   IN_type_symbol = last_type_symbol;
  6444                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7056                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6445                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
  7057                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
  6446                 function_type_prefix = return_type_symbol;
  7058                 function_type_prefix = return_type_symbol;
  6447                 break;
  7059                 break;
  6448                 
  7060                 
  6467             symbol_c *IN_param_value = &this->default_variable_name;
  7079             symbol_c *IN_param_value = &this->default_variable_name;
  6468         
  7080         
  6469             symbol_c *IN_type_symbol = param_data_type;
  7081             symbol_c *IN_type_symbol = param_data_type;
  6470             last_type_symbol = param_data_type;
  7082             last_type_symbol = param_data_type;
  6471             
  7083             
  6472             if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
  7084             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
  6473             {
  7085             {
  6474         
  7086         
  6475                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
  7087                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
       
  7088                 
       
  7089                 if (IN_type_symbol == NULL)
       
  7090                   IN_type_symbol = last_type_symbol;
  6476                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7091                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6477                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
  7092                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
  6478                 function_type_prefix = return_type_symbol;
  7093                 function_type_prefix = return_type_symbol;
  6479                 break;
  7094                 break;
  6480                 
  7095                 
  6499             symbol_c *IN_param_value = &this->default_variable_name;
  7114             symbol_c *IN_param_value = &this->default_variable_name;
  6500         
  7115         
  6501             symbol_c *IN_type_symbol = param_data_type;
  7116             symbol_c *IN_type_symbol = param_data_type;
  6502             last_type_symbol = param_data_type;
  7117             last_type_symbol = param_data_type;
  6503             
  7118             
  6504             if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
  7119             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
  6505             {
  7120             {
  6506         
  7121         
       
  7122                 
       
  7123                 if (IN_type_symbol == NULL)
       
  7124                   IN_type_symbol = last_type_symbol;
  6507                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7125                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6508                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
  7126                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
  6509                 function_type_prefix = return_type_symbol;
  7127                 function_type_prefix = return_type_symbol;
  6510                 break;
  7128                 break;
  6511                 
  7129                 
  6530             symbol_c *IN_param_value = &this->default_variable_name;
  7148             symbol_c *IN_param_value = &this->default_variable_name;
  6531         
  7149         
  6532             symbol_c *IN_type_symbol = param_data_type;
  7150             symbol_c *IN_type_symbol = param_data_type;
  6533             last_type_symbol = param_data_type;
  7151             last_type_symbol = param_data_type;
  6534             
  7152             
  6535             if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
  7153             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
  6536             {
  7154             {
  6537         
  7155         
       
  7156                 
       
  7157                 if (IN_type_symbol == NULL)
       
  7158                   IN_type_symbol = last_type_symbol;
  6538                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7159                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6539                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
  7160                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
  6540                 function_type_prefix = return_type_symbol;
  7161                 function_type_prefix = return_type_symbol;
  6541                 break;
  7162                 break;
  6542                 
  7163                 
  6561             symbol_c *IN_param_value = &this->default_variable_name;
  7182             symbol_c *IN_param_value = &this->default_variable_name;
  6562         
  7183         
  6563             symbol_c *IN_type_symbol = param_data_type;
  7184             symbol_c *IN_type_symbol = param_data_type;
  6564             last_type_symbol = param_data_type;
  7185             last_type_symbol = param_data_type;
  6565             
  7186             
  6566             if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
  7187             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
  6567             {
  7188             {
  6568         
  7189         
  6569                 function_name = (symbol_c*)(new pragma_c("__bit_to_string"));
  7190                 function_name = (symbol_c*)(new pragma_c("__bit_to_string"));
       
  7191                 
       
  7192                 if (IN_type_symbol == NULL)
       
  7193                   IN_type_symbol = last_type_symbol;
  6570                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7194                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6571                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
  7195                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
  6572                 function_type_prefix = return_type_symbol;
  7196                 function_type_prefix = return_type_symbol;
  6573                 break;
  7197                 break;
  6574                 
  7198                 
  6593             symbol_c *IN_param_value = &this->default_variable_name;
  7217             symbol_c *IN_param_value = &this->default_variable_name;
  6594         
  7218         
  6595             symbol_c *IN_type_symbol = param_data_type;
  7219             symbol_c *IN_type_symbol = param_data_type;
  6596             last_type_symbol = param_data_type;
  7220             last_type_symbol = param_data_type;
  6597             
  7221             
  6598             if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
  7222             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
  6599             {
  7223             {
  6600         
  7224         
       
  7225                 
       
  7226                 if (IN_type_symbol == NULL)
       
  7227                   IN_type_symbol = last_type_symbol;
  6601                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7228                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6602                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
  7229                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
  6603                 function_type_prefix = return_type_symbol;
  7230                 function_type_prefix = return_type_symbol;
  6604                 break;
  7231                 break;
  6605                 
  7232                 
  6624             symbol_c *IN_param_value = &this->default_variable_name;
  7251             symbol_c *IN_param_value = &this->default_variable_name;
  6625         
  7252         
  6626             symbol_c *IN_type_symbol = param_data_type;
  7253             symbol_c *IN_type_symbol = param_data_type;
  6627             last_type_symbol = param_data_type;
  7254             last_type_symbol = param_data_type;
  6628             
  7255             
  6629             if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
  7256             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
  6630             {
  7257             {
  6631         
  7258         
       
  7259                 
       
  7260                 if (IN_type_symbol == NULL)
       
  7261                   IN_type_symbol = last_type_symbol;
  6632                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7262                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6633                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
  7263                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
  6634                 function_type_prefix = return_type_symbol;
  7264                 function_type_prefix = return_type_symbol;
  6635                 break;
  7265                 break;
  6636                 
  7266                 
  6655             symbol_c *IN_param_value = &this->default_variable_name;
  7285             symbol_c *IN_param_value = &this->default_variable_name;
  6656         
  7286         
  6657             symbol_c *IN_type_symbol = param_data_type;
  7287             symbol_c *IN_type_symbol = param_data_type;
  6658             last_type_symbol = param_data_type;
  7288             last_type_symbol = param_data_type;
  6659             
  7289             
  6660             if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
  7290             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
  6661             {
  7291             {
  6662         
  7292         
       
  7293                 
       
  7294                 if (IN_type_symbol == NULL)
       
  7295                   IN_type_symbol = last_type_symbol;
  6663                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7296                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6664                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
  7297                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
  6665                 function_type_prefix = return_type_symbol;
  7298                 function_type_prefix = return_type_symbol;
  6666                 break;
  7299                 break;
  6667                 
  7300                 
  6686             symbol_c *IN_param_value = &this->default_variable_name;
  7319             symbol_c *IN_param_value = &this->default_variable_name;
  6687         
  7320         
  6688             symbol_c *IN_type_symbol = param_data_type;
  7321             symbol_c *IN_type_symbol = param_data_type;
  6689             last_type_symbol = param_data_type;
  7322             last_type_symbol = param_data_type;
  6690             
  7323             
  6691             if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
  7324             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
  6692             {
  7325             {
  6693         
  7326         
       
  7327                 
       
  7328                 if (IN_type_symbol == NULL)
       
  7329                   IN_type_symbol = last_type_symbol;
  6694                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7330                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6695                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
  7331                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
  6696                 function_type_prefix = return_type_symbol;
  7332                 function_type_prefix = return_type_symbol;
  6697                 break;
  7333                 break;
  6698                 
  7334                 
  6717             symbol_c *IN_param_value = &this->default_variable_name;
  7353             symbol_c *IN_param_value = &this->default_variable_name;
  6718         
  7354         
  6719             symbol_c *IN_type_symbol = param_data_type;
  7355             symbol_c *IN_type_symbol = param_data_type;
  6720             last_type_symbol = param_data_type;
  7356             last_type_symbol = param_data_type;
  6721             
  7357             
  6722             if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
  7358             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
  6723             {
  7359             {
  6724         
  7360         
       
  7361                 
       
  7362                 if (IN_type_symbol == NULL)
       
  7363                   IN_type_symbol = last_type_symbol;
  6725                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7364                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6726                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
  7365                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
  6727                 function_type_prefix = return_type_symbol;
  7366                 function_type_prefix = return_type_symbol;
  6728                 break;
  7367                 break;
  6729                 
  7368                 
  6748             symbol_c *IN_param_value = &this->default_variable_name;
  7387             symbol_c *IN_param_value = &this->default_variable_name;
  6749         
  7388         
  6750             symbol_c *IN_type_symbol = param_data_type;
  7389             symbol_c *IN_type_symbol = param_data_type;
  6751             last_type_symbol = param_data_type;
  7390             last_type_symbol = param_data_type;
  6752             
  7391             
  6753             if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
  7392             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
  6754             {
  7393             {
  6755         
  7394         
       
  7395                 
       
  7396                 if (IN_type_symbol == NULL)
       
  7397                   IN_type_symbol = last_type_symbol;
  6756                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7398                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6757                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
  7399                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
  6758                 function_type_prefix = return_type_symbol;
  7400                 function_type_prefix = return_type_symbol;
  6759                 break;
  7401                 break;
  6760                 
  7402                 
  6779             symbol_c *IN_param_value = &this->default_variable_name;
  7421             symbol_c *IN_param_value = &this->default_variable_name;
  6780         
  7422         
  6781             symbol_c *IN_type_symbol = param_data_type;
  7423             symbol_c *IN_type_symbol = param_data_type;
  6782             last_type_symbol = param_data_type;
  7424             last_type_symbol = param_data_type;
  6783             
  7425             
  6784             if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
  7426             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
  6785             {
  7427             {
  6786         
  7428         
  6787                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
  7429                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
       
  7430                 
       
  7431                 if (IN_type_symbol == NULL)
       
  7432                   IN_type_symbol = last_type_symbol;
  6788                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7433                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6789                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
  7434                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
  6790                 function_type_prefix = return_type_symbol;
  7435                 function_type_prefix = return_type_symbol;
  6791                 break;
  7436                 break;
  6792                 
  7437                 
  6811             symbol_c *IN_param_value = &this->default_variable_name;
  7456             symbol_c *IN_param_value = &this->default_variable_name;
  6812         
  7457         
  6813             symbol_c *IN_type_symbol = param_data_type;
  7458             symbol_c *IN_type_symbol = param_data_type;
  6814             last_type_symbol = param_data_type;
  7459             last_type_symbol = param_data_type;
  6815             
  7460             
  6816             if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
  7461             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
  6817             {
  7462             {
  6818         
  7463         
       
  7464                 
       
  7465                 if (IN_type_symbol == NULL)
       
  7466                   IN_type_symbol = last_type_symbol;
  6819                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7467                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6820                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
  7468                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
  6821                 function_type_prefix = return_type_symbol;
  7469                 function_type_prefix = return_type_symbol;
  6822                 break;
  7470                 break;
  6823                 
  7471                 
  6842             symbol_c *IN_param_value = &this->default_variable_name;
  7490             symbol_c *IN_param_value = &this->default_variable_name;
  6843         
  7491         
  6844             symbol_c *IN_type_symbol = param_data_type;
  7492             symbol_c *IN_type_symbol = param_data_type;
  6845             last_type_symbol = param_data_type;
  7493             last_type_symbol = param_data_type;
  6846             
  7494             
  6847             if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
  7495             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
  6848             {
  7496             {
  6849         
  7497         
       
  7498                 
       
  7499                 if (IN_type_symbol == NULL)
       
  7500                   IN_type_symbol = last_type_symbol;
  6850                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7501                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6851                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
  7502                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
  6852                 function_type_prefix = return_type_symbol;
  7503                 function_type_prefix = return_type_symbol;
  6853                 break;
  7504                 break;
  6854                 
  7505                 
  6873             symbol_c *IN_param_value = &this->default_variable_name;
  7524             symbol_c *IN_param_value = &this->default_variable_name;
  6874         
  7525         
  6875             symbol_c *IN_type_symbol = param_data_type;
  7526             symbol_c *IN_type_symbol = param_data_type;
  6876             last_type_symbol = param_data_type;
  7527             last_type_symbol = param_data_type;
  6877             
  7528             
  6878             if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
  7529             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
  6879             {
  7530             {
  6880         
  7531         
       
  7532                 
       
  7533                 if (IN_type_symbol == NULL)
       
  7534                   IN_type_symbol = last_type_symbol;
  6881                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7535                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6882                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
  7536                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
  6883                 function_type_prefix = return_type_symbol;
  7537                 function_type_prefix = return_type_symbol;
  6884                 break;
  7538                 break;
  6885                 
  7539                 
  6904             symbol_c *IN_param_value = &this->default_variable_name;
  7558             symbol_c *IN_param_value = &this->default_variable_name;
  6905         
  7559         
  6906             symbol_c *IN_type_symbol = param_data_type;
  7560             symbol_c *IN_type_symbol = param_data_type;
  6907             last_type_symbol = param_data_type;
  7561             last_type_symbol = param_data_type;
  6908             
  7562             
  6909             if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
  7563             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
  6910             {
  7564             {
  6911         
  7565         
       
  7566                 
       
  7567                 if (IN_type_symbol == NULL)
       
  7568                   IN_type_symbol = last_type_symbol;
  6912                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7569                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6913                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
  7570                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
  6914                 function_type_prefix = return_type_symbol;
  7571                 function_type_prefix = return_type_symbol;
  6915                 break;
  7572                 break;
  6916                 
  7573                 
  6935             symbol_c *IN_param_value = &this->default_variable_name;
  7592             symbol_c *IN_param_value = &this->default_variable_name;
  6936         
  7593         
  6937             symbol_c *IN_type_symbol = param_data_type;
  7594             symbol_c *IN_type_symbol = param_data_type;
  6938             last_type_symbol = param_data_type;
  7595             last_type_symbol = param_data_type;
  6939             
  7596             
  6940             if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
  7597             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
  6941             {
  7598             {
  6942         
  7599         
       
  7600                 
       
  7601                 if (IN_type_symbol == NULL)
       
  7602                   IN_type_symbol = last_type_symbol;
  6943                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7603                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6944                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
  7604                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
  6945                 function_type_prefix = return_type_symbol;
  7605                 function_type_prefix = return_type_symbol;
  6946                 break;
  7606                 break;
  6947                 
  7607                 
  6966             symbol_c *IN_param_value = &this->default_variable_name;
  7626             symbol_c *IN_param_value = &this->default_variable_name;
  6967         
  7627         
  6968             symbol_c *IN_type_symbol = param_data_type;
  7628             symbol_c *IN_type_symbol = param_data_type;
  6969             last_type_symbol = param_data_type;
  7629             last_type_symbol = param_data_type;
  6970             
  7630             
  6971             if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
  7631             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
  6972             {
  7632             {
  6973         
  7633         
  6974                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
  7634                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
       
  7635                 
       
  7636                 if (IN_type_symbol == NULL)
       
  7637                   IN_type_symbol = last_type_symbol;
  6975                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7638                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  6976                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
  7639                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
  6977                 function_type_prefix = return_type_symbol;
  7640                 function_type_prefix = return_type_symbol;
  6978                 break;
  7641                 break;
  6979                 
  7642                 
  6998             symbol_c *IN_param_value = &this->default_variable_name;
  7661             symbol_c *IN_param_value = &this->default_variable_name;
  6999         
  7662         
  7000             symbol_c *IN_type_symbol = param_data_type;
  7663             symbol_c *IN_type_symbol = param_data_type;
  7001             last_type_symbol = param_data_type;
  7664             last_type_symbol = param_data_type;
  7002             
  7665             
  7003             if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
  7666             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
  7004             {
  7667             {
  7005         
  7668         
       
  7669                 
       
  7670                 if (IN_type_symbol == NULL)
       
  7671                   IN_type_symbol = last_type_symbol;
  7006                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7672                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7007                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
  7673                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
  7008                 function_type_prefix = return_type_symbol;
  7674                 function_type_prefix = return_type_symbol;
  7009                 break;
  7675                 break;
  7010                 
  7676                 
  7029             symbol_c *IN_param_value = &this->default_variable_name;
  7695             symbol_c *IN_param_value = &this->default_variable_name;
  7030         
  7696         
  7031             symbol_c *IN_type_symbol = param_data_type;
  7697             symbol_c *IN_type_symbol = param_data_type;
  7032             last_type_symbol = param_data_type;
  7698             last_type_symbol = param_data_type;
  7033             
  7699             
  7034             if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
  7700             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
  7035             {
  7701             {
  7036         
  7702         
  7037                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
  7703                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
       
  7704                 
       
  7705                 if (IN_type_symbol == NULL)
       
  7706                   IN_type_symbol = last_type_symbol;
  7038                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7707                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7039                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
  7708                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
  7040                 function_type_prefix = return_type_symbol;
  7709                 function_type_prefix = return_type_symbol;
  7041                 break;
  7710                 break;
  7042                 
  7711                 
  7061             symbol_c *IN_param_value = &this->default_variable_name;
  7730             symbol_c *IN_param_value = &this->default_variable_name;
  7062         
  7731         
  7063             symbol_c *IN_type_symbol = param_data_type;
  7732             symbol_c *IN_type_symbol = param_data_type;
  7064             last_type_symbol = param_data_type;
  7733             last_type_symbol = param_data_type;
  7065             
  7734             
  7066             if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
  7735             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
  7067             {
  7736             {
  7068         
  7737         
  7069                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
  7738                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
       
  7739                 
       
  7740                 if (IN_type_symbol == NULL)
       
  7741                   IN_type_symbol = last_type_symbol;
  7070                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7742                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7071                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
  7743                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
  7072                 function_type_prefix = return_type_symbol;
  7744                 function_type_prefix = return_type_symbol;
  7073                 break;
  7745                 break;
  7074                 
  7746                 
  7093             symbol_c *IN_param_value = &this->default_variable_name;
  7765             symbol_c *IN_param_value = &this->default_variable_name;
  7094         
  7766         
  7095             symbol_c *IN_type_symbol = param_data_type;
  7767             symbol_c *IN_type_symbol = param_data_type;
  7096             last_type_symbol = param_data_type;
  7768             last_type_symbol = param_data_type;
  7097             
  7769             
  7098             if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
  7770             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
  7099             {
  7771             {
  7100         
  7772         
       
  7773                 
       
  7774                 if (IN_type_symbol == NULL)
       
  7775                   IN_type_symbol = last_type_symbol;
  7101                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7776                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7102                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
  7777                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
  7103                 function_type_prefix = return_type_symbol;
  7778                 function_type_prefix = return_type_symbol;
  7104                 break;
  7779                 break;
  7105                 
  7780                 
  7124             symbol_c *IN_param_value = &this->default_variable_name;
  7799             symbol_c *IN_param_value = &this->default_variable_name;
  7125         
  7800         
  7126             symbol_c *IN_type_symbol = param_data_type;
  7801             symbol_c *IN_type_symbol = param_data_type;
  7127             last_type_symbol = param_data_type;
  7802             last_type_symbol = param_data_type;
  7128             
  7803             
  7129             if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
  7804             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
  7130             {
  7805             {
  7131         
  7806         
       
  7807                 
       
  7808                 if (IN_type_symbol == NULL)
       
  7809                   IN_type_symbol = last_type_symbol;
  7132                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7810                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7133                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
  7811                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
  7134                 function_type_prefix = return_type_symbol;
  7812                 function_type_prefix = return_type_symbol;
  7135                 break;
  7813                 break;
  7136                 
  7814                 
  7155             symbol_c *IN_param_value = &this->default_variable_name;
  7833             symbol_c *IN_param_value = &this->default_variable_name;
  7156         
  7834         
  7157             symbol_c *IN_type_symbol = param_data_type;
  7835             symbol_c *IN_type_symbol = param_data_type;
  7158             last_type_symbol = param_data_type;
  7836             last_type_symbol = param_data_type;
  7159             
  7837             
  7160             if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
  7838             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
  7161             {
  7839             {
  7162         
  7840         
  7163                 function_name = (symbol_c*)(new pragma_c("__uint_to_string"));
  7841                 function_name = (symbol_c*)(new pragma_c("__uint_to_string"));
       
  7842                 
       
  7843                 if (IN_type_symbol == NULL)
       
  7844                   IN_type_symbol = last_type_symbol;
  7164                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7845                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7165                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
  7846                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
  7166                 function_type_prefix = return_type_symbol;
  7847                 function_type_prefix = return_type_symbol;
  7167                 break;
  7848                 break;
  7168                 
  7849                 
  7187             symbol_c *IN_param_value = &this->default_variable_name;
  7868             symbol_c *IN_param_value = &this->default_variable_name;
  7188         
  7869         
  7189             symbol_c *IN_type_symbol = param_data_type;
  7870             symbol_c *IN_type_symbol = param_data_type;
  7190             last_type_symbol = param_data_type;
  7871             last_type_symbol = param_data_type;
  7191             
  7872             
  7192             if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
  7873             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
  7193             {
  7874             {
  7194         
  7875         
       
  7876                 
       
  7877                 if (IN_type_symbol == NULL)
       
  7878                   IN_type_symbol = last_type_symbol;
  7195                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7879                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7196                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
  7880                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
  7197                 function_type_prefix = return_type_symbol;
  7881                 function_type_prefix = return_type_symbol;
  7198                 break;
  7882                 break;
  7199                 
  7883                 
  7218             symbol_c *IN_param_value = &this->default_variable_name;
  7902             symbol_c *IN_param_value = &this->default_variable_name;
  7219         
  7903         
  7220             symbol_c *IN_type_symbol = param_data_type;
  7904             symbol_c *IN_type_symbol = param_data_type;
  7221             last_type_symbol = param_data_type;
  7905             last_type_symbol = param_data_type;
  7222             
  7906             
  7223             if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
  7907             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
  7224             {
  7908             {
  7225         
  7909         
       
  7910                 
       
  7911                 if (IN_type_symbol == NULL)
       
  7912                   IN_type_symbol = last_type_symbol;
  7226                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7913                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7227                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
  7914                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
  7228                 function_type_prefix = return_type_symbol;
  7915                 function_type_prefix = return_type_symbol;
  7229                 break;
  7916                 break;
  7230                 
  7917                 
  7249             symbol_c *IN_param_value = &this->default_variable_name;
  7936             symbol_c *IN_param_value = &this->default_variable_name;
  7250         
  7937         
  7251             symbol_c *IN_type_symbol = param_data_type;
  7938             symbol_c *IN_type_symbol = param_data_type;
  7252             last_type_symbol = param_data_type;
  7939             last_type_symbol = param_data_type;
  7253             
  7940             
  7254             if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
  7941             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
  7255             {
  7942             {
  7256         
  7943         
       
  7944                 
       
  7945                 if (IN_type_symbol == NULL)
       
  7946                   IN_type_symbol = last_type_symbol;
  7257                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7947                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7258                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
  7948                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
  7259                 function_type_prefix = return_type_symbol;
  7949                 function_type_prefix = return_type_symbol;
  7260                 break;
  7950                 break;
  7261                 
  7951                 
  7280             symbol_c *IN_param_value = &this->default_variable_name;
  7970             symbol_c *IN_param_value = &this->default_variable_name;
  7281         
  7971         
  7282             symbol_c *IN_type_symbol = param_data_type;
  7972             symbol_c *IN_type_symbol = param_data_type;
  7283             last_type_symbol = param_data_type;
  7973             last_type_symbol = param_data_type;
  7284             
  7974             
  7285             if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
  7975             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
  7286             {
  7976             {
  7287         
  7977         
       
  7978                 
       
  7979                 if (IN_type_symbol == NULL)
       
  7980                   IN_type_symbol = last_type_symbol;
  7288                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7981                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7289                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
  7982                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
  7290                 function_type_prefix = return_type_symbol;
  7983                 function_type_prefix = return_type_symbol;
  7291                 break;
  7984                 break;
  7292                 
  7985                 
  7311             symbol_c *IN_param_value = &this->default_variable_name;
  8004             symbol_c *IN_param_value = &this->default_variable_name;
  7312         
  8005         
  7313             symbol_c *IN_type_symbol = param_data_type;
  8006             symbol_c *IN_type_symbol = param_data_type;
  7314             last_type_symbol = param_data_type;
  8007             last_type_symbol = param_data_type;
  7315             
  8008             
  7316             if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
  8009             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
  7317             {
  8010             {
  7318         
  8011         
       
  8012                 
       
  8013                 if (IN_type_symbol == NULL)
       
  8014                   IN_type_symbol = last_type_symbol;
  7319                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8015                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7320                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
  8016                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
  7321                 function_type_prefix = return_type_symbol;
  8017                 function_type_prefix = return_type_symbol;
  7322                 break;
  8018                 break;
  7323                 
  8019                 
  7342             symbol_c *IN_param_value = &this->default_variable_name;
  8038             symbol_c *IN_param_value = &this->default_variable_name;
  7343         
  8039         
  7344             symbol_c *IN_type_symbol = param_data_type;
  8040             symbol_c *IN_type_symbol = param_data_type;
  7345             last_type_symbol = param_data_type;
  8041             last_type_symbol = param_data_type;
  7346             
  8042             
  7347             if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
  8043             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
  7348             {
  8044             {
  7349         
  8045         
       
  8046                 
       
  8047                 if (IN_type_symbol == NULL)
       
  8048                   IN_type_symbol = last_type_symbol;
  7350                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8049                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7351                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
  8050                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
  7352                 function_type_prefix = return_type_symbol;
  8051                 function_type_prefix = return_type_symbol;
  7353                 break;
  8052                 break;
  7354                 
  8053                 
  7373             symbol_c *IN_param_value = &this->default_variable_name;
  8072             symbol_c *IN_param_value = &this->default_variable_name;
  7374         
  8073         
  7375             symbol_c *IN_type_symbol = param_data_type;
  8074             symbol_c *IN_type_symbol = param_data_type;
  7376             last_type_symbol = param_data_type;
  8075             last_type_symbol = param_data_type;
  7377             
  8076             
  7378             if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
  8077             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
  7379             {
  8078             {
  7380         
  8079         
  7381                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
  8080                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
       
  8081                 
       
  8082                 if (IN_type_symbol == NULL)
       
  8083                   IN_type_symbol = last_type_symbol;
  7382                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8084                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7383                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
  8085                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
  7384                 function_type_prefix = return_type_symbol;
  8086                 function_type_prefix = return_type_symbol;
  7385                 break;
  8087                 break;
  7386                 
  8088                 
  7405             symbol_c *IN_param_value = &this->default_variable_name;
  8107             symbol_c *IN_param_value = &this->default_variable_name;
  7406         
  8108         
  7407             symbol_c *IN_type_symbol = param_data_type;
  8109             symbol_c *IN_type_symbol = param_data_type;
  7408             last_type_symbol = param_data_type;
  8110             last_type_symbol = param_data_type;
  7409             
  8111             
  7410             if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
  8112             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
  7411             {
  8113             {
  7412         
  8114         
       
  8115                 
       
  8116                 if (IN_type_symbol == NULL)
       
  8117                   IN_type_symbol = last_type_symbol;
  7413                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8118                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7414                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
  8119                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
  7415                 function_type_prefix = return_type_symbol;
  8120                 function_type_prefix = return_type_symbol;
  7416                 break;
  8121                 break;
  7417                 
  8122                 
  7436             symbol_c *IN_param_value = &this->default_variable_name;
  8141             symbol_c *IN_param_value = &this->default_variable_name;
  7437         
  8142         
  7438             symbol_c *IN_type_symbol = param_data_type;
  8143             symbol_c *IN_type_symbol = param_data_type;
  7439             last_type_symbol = param_data_type;
  8144             last_type_symbol = param_data_type;
  7440             
  8145             
  7441             if(search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol))
  8146             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol))
  7442             {
  8147             {
  7443         
  8148         
       
  8149                 
       
  8150                 if (IN_type_symbol == NULL)
       
  8151                   IN_type_symbol = last_type_symbol;
  7444                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8152                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7445                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
  8153                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
  7446                 function_type_prefix = return_type_symbol;
  8154                 function_type_prefix = return_type_symbol;
  7447                 break;
  8155                 break;
  7448                 
  8156                 
  7467             symbol_c *IN_param_value = &this->default_variable_name;
  8175             symbol_c *IN_param_value = &this->default_variable_name;
  7468         
  8176         
  7469             symbol_c *IN_type_symbol = param_data_type;
  8177             symbol_c *IN_type_symbol = param_data_type;
  7470             last_type_symbol = param_data_type;
  8178             last_type_symbol = param_data_type;
  7471             
  8179             
  7472             if(search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol))
  8180             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol))
  7473             {
  8181             {
  7474         
  8182         
       
  8183                 
       
  8184                 if (IN_type_symbol == NULL)
       
  8185                   IN_type_symbol = last_type_symbol;
  7475                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8186                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7476                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
  8187                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
  7477                 function_type_prefix = return_type_symbol;
  8188                 function_type_prefix = return_type_symbol;
  7478                 break;
  8189                 break;
  7479                 
  8190                 
  7498             symbol_c *IN_param_value = &this->default_variable_name;
  8209             symbol_c *IN_param_value = &this->default_variable_name;
  7499         
  8210         
  7500             symbol_c *IN_type_symbol = param_data_type;
  8211             symbol_c *IN_type_symbol = param_data_type;
  7501             last_type_symbol = param_data_type;
  8212             last_type_symbol = param_data_type;
  7502             
  8213             
  7503             if(search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol))
  8214             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol))
  7504             {
  8215             {
  7505         
  8216         
       
  8217                 
       
  8218                 if (IN_type_symbol == NULL)
       
  8219                   IN_type_symbol = last_type_symbol;
  7506                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8220                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7507                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
  8221                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
  7508                 function_type_prefix = return_type_symbol;
  8222                 function_type_prefix = return_type_symbol;
  7509                 break;
  8223                 break;
  7510                 
  8224                 
  7529             symbol_c *IN_param_value = &this->default_variable_name;
  8243             symbol_c *IN_param_value = &this->default_variable_name;
  7530         
  8244         
  7531             symbol_c *IN_type_symbol = param_data_type;
  8245             symbol_c *IN_type_symbol = param_data_type;
  7532             last_type_symbol = param_data_type;
  8246             last_type_symbol = param_data_type;
  7533             
  8247             
  7534             if(search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol))
  8248             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol))
  7535             {
  8249             {
  7536         
  8250         
       
  8251                 
       
  8252                 if (IN_type_symbol == NULL)
       
  8253                   IN_type_symbol = last_type_symbol;
  7537                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8254                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7538                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
  8255                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
  7539                 function_type_prefix = return_type_symbol;
  8256                 function_type_prefix = return_type_symbol;
  7540                 break;
  8257                 break;
  7541                 
  8258                 
  7560             symbol_c *IN_param_value = &this->default_variable_name;
  8277             symbol_c *IN_param_value = &this->default_variable_name;
  7561         
  8278         
  7562             symbol_c *IN_type_symbol = param_data_type;
  8279             symbol_c *IN_type_symbol = param_data_type;
  7563             last_type_symbol = param_data_type;
  8280             last_type_symbol = param_data_type;
  7564             
  8281             
  7565             if(search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol))
  8282             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol))
  7566             {
  8283             {
  7567         
  8284         
  7568                 function_name = (symbol_c*)(new pragma_c("__real_to_time"));
  8285                 function_name = (symbol_c*)(new pragma_c("__real_to_time"));
       
  8286                 
       
  8287                 if (IN_type_symbol == NULL)
       
  8288                   IN_type_symbol = last_type_symbol;
  7569                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8289                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7570                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
  8290                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
  7571                 function_type_prefix = return_type_symbol;
  8291                 function_type_prefix = return_type_symbol;
  7572                 break;
  8292                 break;
  7573                 
  8293                 
  7592             symbol_c *IN_param_value = &this->default_variable_name;
  8312             symbol_c *IN_param_value = &this->default_variable_name;
  7593         
  8313         
  7594             symbol_c *IN_type_symbol = param_data_type;
  8314             symbol_c *IN_type_symbol = param_data_type;
  7595             last_type_symbol = param_data_type;
  8315             last_type_symbol = param_data_type;
  7596             
  8316             
  7597             if(search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol))
  8317             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol))
  7598             {
  8318             {
  7599         
  8319         
       
  8320                 
       
  8321                 if (IN_type_symbol == NULL)
       
  8322                   IN_type_symbol = last_type_symbol;
  7600                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8323                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7601                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
  8324                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
  7602                 function_type_prefix = return_type_symbol;
  8325                 function_type_prefix = return_type_symbol;
  7603                 break;
  8326                 break;
  7604                 
  8327                 
  7623             symbol_c *IN_param_value = &this->default_variable_name;
  8346             symbol_c *IN_param_value = &this->default_variable_name;
  7624         
  8347         
  7625             symbol_c *IN_type_symbol = param_data_type;
  8348             symbol_c *IN_type_symbol = param_data_type;
  7626             last_type_symbol = param_data_type;
  8349             last_type_symbol = param_data_type;
  7627             
  8350             
  7628             if(search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol))
  8351             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol))
  7629             {
  8352             {
  7630         
  8353         
  7631                 function_name = (symbol_c*)(new pragma_c("__real_to_time"));
  8354                 function_name = (symbol_c*)(new pragma_c("__real_to_time"));
       
  8355                 
       
  8356                 if (IN_type_symbol == NULL)
       
  8357                   IN_type_symbol = last_type_symbol;
  7632                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8358                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7633                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
  8359                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
  7634                 function_type_prefix = return_type_symbol;
  8360                 function_type_prefix = return_type_symbol;
  7635                 break;
  8361                 break;
  7636                 
  8362                 
  7655             symbol_c *IN_param_value = &this->default_variable_name;
  8381             symbol_c *IN_param_value = &this->default_variable_name;
  7656         
  8382         
  7657             symbol_c *IN_type_symbol = param_data_type;
  8383             symbol_c *IN_type_symbol = param_data_type;
  7658             last_type_symbol = param_data_type;
  8384             last_type_symbol = param_data_type;
  7659             
  8385             
  7660             if(search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol))
  8386             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol))
  7661             {
  8387             {
  7662         
  8388         
  7663                 function_name = (symbol_c*)(new pragma_c("__real_to_time"));
  8389                 function_name = (symbol_c*)(new pragma_c("__real_to_time"));
       
  8390                 
       
  8391                 if (IN_type_symbol == NULL)
       
  8392                   IN_type_symbol = last_type_symbol;
  7664                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8393                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7665                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
  8394                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
  7666                 function_type_prefix = return_type_symbol;
  8395                 function_type_prefix = return_type_symbol;
  7667                 break;
  8396                 break;
  7668                 
  8397                 
  7687             symbol_c *IN_param_value = &this->default_variable_name;
  8416             symbol_c *IN_param_value = &this->default_variable_name;
  7688         
  8417         
  7689             symbol_c *IN_type_symbol = param_data_type;
  8418             symbol_c *IN_type_symbol = param_data_type;
  7690             last_type_symbol = param_data_type;
  8419             last_type_symbol = param_data_type;
  7691             
  8420             
  7692             if(search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol))
  8421             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol))
  7693             {
  8422             {
  7694         
  8423         
       
  8424                 
       
  8425                 if (IN_type_symbol == NULL)
       
  8426                   IN_type_symbol = last_type_symbol;
  7695                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8427                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7696                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
  8428                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
  7697                 function_type_prefix = return_type_symbol;
  8429                 function_type_prefix = return_type_symbol;
  7698                 break;
  8430                 break;
  7699                 
  8431                 
  7718             symbol_c *IN_param_value = &this->default_variable_name;
  8450             symbol_c *IN_param_value = &this->default_variable_name;
  7719         
  8451         
  7720             symbol_c *IN_type_symbol = param_data_type;
  8452             symbol_c *IN_type_symbol = param_data_type;
  7721             last_type_symbol = param_data_type;
  8453             last_type_symbol = param_data_type;
  7722             
  8454             
  7723             if(search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol))
  8455             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol))
  7724             {
  8456             {
  7725         
  8457         
       
  8458                 
       
  8459                 if (IN_type_symbol == NULL)
       
  8460                   IN_type_symbol = last_type_symbol;
  7726                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8461                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7727                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
  8462                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
  7728                 function_type_prefix = return_type_symbol;
  8463                 function_type_prefix = return_type_symbol;
  7729                 break;
  8464                 break;
  7730                 
  8465                 
  7749             symbol_c *IN_param_value = &this->default_variable_name;
  8484             symbol_c *IN_param_value = &this->default_variable_name;
  7750         
  8485         
  7751             symbol_c *IN_type_symbol = param_data_type;
  8486             symbol_c *IN_type_symbol = param_data_type;
  7752             last_type_symbol = param_data_type;
  8487             last_type_symbol = param_data_type;
  7753             
  8488             
  7754             if(search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol))
  8489             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol))
  7755             {
  8490             {
  7756         
  8491         
  7757                 function_name = (symbol_c*)(new pragma_c("__real_to_string"));
  8492                 function_name = (symbol_c*)(new pragma_c("__real_to_string"));
       
  8493                 
       
  8494                 if (IN_type_symbol == NULL)
       
  8495                   IN_type_symbol = last_type_symbol;
  7758                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8496                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7759                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
  8497                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
  7760                 function_type_prefix = return_type_symbol;
  8498                 function_type_prefix = return_type_symbol;
  7761                 break;
  8499                 break;
  7762                 
  8500                 
  7781             symbol_c *IN_param_value = &this->default_variable_name;
  8519             symbol_c *IN_param_value = &this->default_variable_name;
  7782         
  8520         
  7783             symbol_c *IN_type_symbol = param_data_type;
  8521             symbol_c *IN_type_symbol = param_data_type;
  7784             last_type_symbol = param_data_type;
  8522             last_type_symbol = param_data_type;
  7785             
  8523             
  7786             if(search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol))
  8524             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol))
  7787             {
  8525             {
  7788         
  8526         
       
  8527                 
       
  8528                 if (IN_type_symbol == NULL)
       
  8529                   IN_type_symbol = last_type_symbol;
  7789                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8530                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7790                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
  8531                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
  7791                 function_type_prefix = return_type_symbol;
  8532                 function_type_prefix = return_type_symbol;
  7792                 break;
  8533                 break;
  7793                 
  8534                 
  7812             symbol_c *IN_param_value = &this->default_variable_name;
  8553             symbol_c *IN_param_value = &this->default_variable_name;
  7813         
  8554         
  7814             symbol_c *IN_type_symbol = param_data_type;
  8555             symbol_c *IN_type_symbol = param_data_type;
  7815             last_type_symbol = param_data_type;
  8556             last_type_symbol = param_data_type;
  7816             
  8557             
  7817             if(search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol))
  8558             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol))
  7818             {
  8559             {
  7819         
  8560         
       
  8561                 
       
  8562                 if (IN_type_symbol == NULL)
       
  8563                   IN_type_symbol = last_type_symbol;
  7820                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8564                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7821                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
  8565                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
  7822                 function_type_prefix = return_type_symbol;
  8566                 function_type_prefix = return_type_symbol;
  7823                 break;
  8567                 break;
  7824                 
  8568                 
  7843             symbol_c *IN_param_value = &this->default_variable_name;
  8587             symbol_c *IN_param_value = &this->default_variable_name;
  7844         
  8588         
  7845             symbol_c *IN_type_symbol = param_data_type;
  8589             symbol_c *IN_type_symbol = param_data_type;
  7846             last_type_symbol = param_data_type;
  8590             last_type_symbol = param_data_type;
  7847             
  8591             
  7848             if(search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol))
  8592             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol))
  7849             {
  8593             {
  7850         
  8594         
       
  8595                 
       
  8596                 if (IN_type_symbol == NULL)
       
  8597                   IN_type_symbol = last_type_symbol;
  7851                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8598                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7852                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
  8599                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
  7853                 function_type_prefix = return_type_symbol;
  8600                 function_type_prefix = return_type_symbol;
  7854                 break;
  8601                 break;
  7855                 
  8602                 
  7874             symbol_c *IN_param_value = &this->default_variable_name;
  8621             symbol_c *IN_param_value = &this->default_variable_name;
  7875         
  8622         
  7876             symbol_c *IN_type_symbol = param_data_type;
  8623             symbol_c *IN_type_symbol = param_data_type;
  7877             last_type_symbol = param_data_type;
  8624             last_type_symbol = param_data_type;
  7878             
  8625             
  7879             if(search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol))
  8626             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol))
  7880             {
  8627             {
  7881         
  8628         
       
  8629                 
       
  8630                 if (IN_type_symbol == NULL)
       
  8631                   IN_type_symbol = last_type_symbol;
  7882                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8632                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7883                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
  8633                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
  7884                 function_type_prefix = return_type_symbol;
  8634                 function_type_prefix = return_type_symbol;
  7885                 break;
  8635                 break;
  7886                 
  8636                 
  7905             symbol_c *IN_param_value = &this->default_variable_name;
  8655             symbol_c *IN_param_value = &this->default_variable_name;
  7906         
  8656         
  7907             symbol_c *IN_type_symbol = param_data_type;
  8657             symbol_c *IN_type_symbol = param_data_type;
  7908             last_type_symbol = param_data_type;
  8658             last_type_symbol = param_data_type;
  7909             
  8659             
  7910             if(search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol))
  8660             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol))
  7911             {
  8661             {
  7912         
  8662         
       
  8663                 
       
  8664                 if (IN_type_symbol == NULL)
       
  8665                   IN_type_symbol = last_type_symbol;
  7913                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8666                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7914                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
  8667                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
  7915                 function_type_prefix = return_type_symbol;
  8668                 function_type_prefix = return_type_symbol;
  7916                 break;
  8669                 break;
  7917                 
  8670                 
  7936             symbol_c *IN_param_value = &this->default_variable_name;
  8689             symbol_c *IN_param_value = &this->default_variable_name;
  7937         
  8690         
  7938             symbol_c *IN_type_symbol = param_data_type;
  8691             symbol_c *IN_type_symbol = param_data_type;
  7939             last_type_symbol = param_data_type;
  8692             last_type_symbol = param_data_type;
  7940             
  8693             
  7941             if(search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol))
  8694             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol))
  7942             {
  8695             {
  7943         
  8696         
       
  8697                 
       
  8698                 if (IN_type_symbol == NULL)
       
  8699                   IN_type_symbol = last_type_symbol;
  7944                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8700                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7945                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
  8701                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
  7946                 function_type_prefix = return_type_symbol;
  8702                 function_type_prefix = return_type_symbol;
  7947                 break;
  8703                 break;
  7948                 
  8704                 
  7967             symbol_c *IN_param_value = &this->default_variable_name;
  8723             symbol_c *IN_param_value = &this->default_variable_name;
  7968         
  8724         
  7969             symbol_c *IN_type_symbol = param_data_type;
  8725             symbol_c *IN_type_symbol = param_data_type;
  7970             last_type_symbol = param_data_type;
  8726             last_type_symbol = param_data_type;
  7971             
  8727             
  7972             if(search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol))
  8728             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol))
  7973             {
  8729             {
  7974         
  8730         
  7975                 function_name = (symbol_c*)(new pragma_c("__real_to_time"));
  8731                 function_name = (symbol_c*)(new pragma_c("__real_to_time"));
       
  8732                 
       
  8733                 if (IN_type_symbol == NULL)
       
  8734                   IN_type_symbol = last_type_symbol;
  7976                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8735                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  7977                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
  8736                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
  7978                 function_type_prefix = return_type_symbol;
  8737                 function_type_prefix = return_type_symbol;
  7979                 break;
  8738                 break;
  7980                 
  8739                 
  7999             symbol_c *IN_param_value = &this->default_variable_name;
  8758             symbol_c *IN_param_value = &this->default_variable_name;
  8000         
  8759         
  8001             symbol_c *IN_type_symbol = param_data_type;
  8760             symbol_c *IN_type_symbol = param_data_type;
  8002             last_type_symbol = param_data_type;
  8761             last_type_symbol = param_data_type;
  8003             
  8762             
  8004             if(search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol))
  8763             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol))
  8005             {
  8764             {
  8006         
  8765         
       
  8766                 
       
  8767                 if (IN_type_symbol == NULL)
       
  8768                   IN_type_symbol = last_type_symbol;
  8007                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8769                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8008                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
  8770                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
  8009                 function_type_prefix = return_type_symbol;
  8771                 function_type_prefix = return_type_symbol;
  8010                 break;
  8772                 break;
  8011                 
  8773                 
  8030             symbol_c *IN_param_value = &this->default_variable_name;
  8792             symbol_c *IN_param_value = &this->default_variable_name;
  8031         
  8793         
  8032             symbol_c *IN_type_symbol = param_data_type;
  8794             symbol_c *IN_type_symbol = param_data_type;
  8033             last_type_symbol = param_data_type;
  8795             last_type_symbol = param_data_type;
  8034             
  8796             
  8035             if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
  8797             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
  8036             {
  8798             {
  8037         
  8799         
       
  8800                 
       
  8801                 if (IN_type_symbol == NULL)
       
  8802                   IN_type_symbol = last_type_symbol;
  8038                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8803                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8039                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
  8804                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
  8040                 function_type_prefix = return_type_symbol;
  8805                 function_type_prefix = return_type_symbol;
  8041                 break;
  8806                 break;
  8042                 
  8807                 
  8061             symbol_c *IN_param_value = &this->default_variable_name;
  8826             symbol_c *IN_param_value = &this->default_variable_name;
  8062         
  8827         
  8063             symbol_c *IN_type_symbol = param_data_type;
  8828             symbol_c *IN_type_symbol = param_data_type;
  8064             last_type_symbol = param_data_type;
  8829             last_type_symbol = param_data_type;
  8065             
  8830             
  8066             if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
  8831             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
  8067             {
  8832             {
  8068         
  8833         
       
  8834                 
       
  8835                 if (IN_type_symbol == NULL)
       
  8836                   IN_type_symbol = last_type_symbol;
  8069                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8837                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8070                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
  8838                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
  8071                 function_type_prefix = return_type_symbol;
  8839                 function_type_prefix = return_type_symbol;
  8072                 break;
  8840                 break;
  8073                 
  8841                 
  8092             symbol_c *IN_param_value = &this->default_variable_name;
  8860             symbol_c *IN_param_value = &this->default_variable_name;
  8093         
  8861         
  8094             symbol_c *IN_type_symbol = param_data_type;
  8862             symbol_c *IN_type_symbol = param_data_type;
  8095             last_type_symbol = param_data_type;
  8863             last_type_symbol = param_data_type;
  8096             
  8864             
  8097             if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
  8865             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
  8098             {
  8866             {
  8099         
  8867         
       
  8868                 
       
  8869                 if (IN_type_symbol == NULL)
       
  8870                   IN_type_symbol = last_type_symbol;
  8100                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8871                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8101                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
  8872                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
  8102                 function_type_prefix = return_type_symbol;
  8873                 function_type_prefix = return_type_symbol;
  8103                 break;
  8874                 break;
  8104                 
  8875                 
  8123             symbol_c *IN_param_value = &this->default_variable_name;
  8894             symbol_c *IN_param_value = &this->default_variable_name;
  8124         
  8895         
  8125             symbol_c *IN_type_symbol = param_data_type;
  8896             symbol_c *IN_type_symbol = param_data_type;
  8126             last_type_symbol = param_data_type;
  8897             last_type_symbol = param_data_type;
  8127             
  8898             
  8128             if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
  8899             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
  8129             {
  8900             {
  8130         
  8901         
       
  8902                 
       
  8903                 if (IN_type_symbol == NULL)
       
  8904                   IN_type_symbol = last_type_symbol;
  8131                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8905                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8132                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
  8906                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
  8133                 function_type_prefix = return_type_symbol;
  8907                 function_type_prefix = return_type_symbol;
  8134                 break;
  8908                 break;
  8135                 
  8909                 
  8154             symbol_c *IN_param_value = &this->default_variable_name;
  8928             symbol_c *IN_param_value = &this->default_variable_name;
  8155         
  8929         
  8156             symbol_c *IN_type_symbol = param_data_type;
  8930             symbol_c *IN_type_symbol = param_data_type;
  8157             last_type_symbol = param_data_type;
  8931             last_type_symbol = param_data_type;
  8158             
  8932             
  8159             if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
  8933             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
  8160             {
  8934             {
  8161         
  8935         
  8162                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
  8936                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
       
  8937                 
       
  8938                 if (IN_type_symbol == NULL)
       
  8939                   IN_type_symbol = last_type_symbol;
  8163                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8940                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8164                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
  8941                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
  8165                 function_type_prefix = return_type_symbol;
  8942                 function_type_prefix = return_type_symbol;
  8166                 break;
  8943                 break;
  8167                 
  8944                 
  8186             symbol_c *IN_param_value = &this->default_variable_name;
  8963             symbol_c *IN_param_value = &this->default_variable_name;
  8187         
  8964         
  8188             symbol_c *IN_type_symbol = param_data_type;
  8965             symbol_c *IN_type_symbol = param_data_type;
  8189             last_type_symbol = param_data_type;
  8966             last_type_symbol = param_data_type;
  8190             
  8967             
  8191             if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
  8968             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
  8192             {
  8969             {
  8193         
  8970         
       
  8971                 
       
  8972                 if (IN_type_symbol == NULL)
       
  8973                   IN_type_symbol = last_type_symbol;
  8194                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8974                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8195                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
  8975                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
  8196                 function_type_prefix = return_type_symbol;
  8976                 function_type_prefix = return_type_symbol;
  8197                 break;
  8977                 break;
  8198                 
  8978                 
  8217             symbol_c *IN_param_value = &this->default_variable_name;
  8997             symbol_c *IN_param_value = &this->default_variable_name;
  8218         
  8998         
  8219             symbol_c *IN_type_symbol = param_data_type;
  8999             symbol_c *IN_type_symbol = param_data_type;
  8220             last_type_symbol = param_data_type;
  9000             last_type_symbol = param_data_type;
  8221             
  9001             
  8222             if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
  9002             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
  8223             {
  9003             {
  8224         
  9004         
  8225                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
  9005                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
       
  9006                 
       
  9007                 if (IN_type_symbol == NULL)
       
  9008                   IN_type_symbol = last_type_symbol;
  8226                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9009                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8227                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
  9010                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
  8228                 function_type_prefix = return_type_symbol;
  9011                 function_type_prefix = return_type_symbol;
  8229                 break;
  9012                 break;
  8230                 
  9013                 
  8249             symbol_c *IN_param_value = &this->default_variable_name;
  9032             symbol_c *IN_param_value = &this->default_variable_name;
  8250         
  9033         
  8251             symbol_c *IN_type_symbol = param_data_type;
  9034             symbol_c *IN_type_symbol = param_data_type;
  8252             last_type_symbol = param_data_type;
  9035             last_type_symbol = param_data_type;
  8253             
  9036             
  8254             if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
  9037             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
  8255             {
  9038             {
  8256         
  9039         
  8257                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
  9040                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
       
  9041                 
       
  9042                 if (IN_type_symbol == NULL)
       
  9043                   IN_type_symbol = last_type_symbol;
  8258                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9044                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8259                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
  9045                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
  8260                 function_type_prefix = return_type_symbol;
  9046                 function_type_prefix = return_type_symbol;
  8261                 break;
  9047                 break;
  8262                 
  9048                 
  8281             symbol_c *IN_param_value = &this->default_variable_name;
  9067             symbol_c *IN_param_value = &this->default_variable_name;
  8282         
  9068         
  8283             symbol_c *IN_type_symbol = param_data_type;
  9069             symbol_c *IN_type_symbol = param_data_type;
  8284             last_type_symbol = param_data_type;
  9070             last_type_symbol = param_data_type;
  8285             
  9071             
  8286             if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
  9072             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
  8287             {
  9073             {
  8288         
  9074         
       
  9075                 
       
  9076                 if (IN_type_symbol == NULL)
       
  9077                   IN_type_symbol = last_type_symbol;
  8289                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9078                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8290                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
  9079                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
  8291                 function_type_prefix = return_type_symbol;
  9080                 function_type_prefix = return_type_symbol;
  8292                 break;
  9081                 break;
  8293                 
  9082                 
  8312             symbol_c *IN_param_value = &this->default_variable_name;
  9101             symbol_c *IN_param_value = &this->default_variable_name;
  8313         
  9102         
  8314             symbol_c *IN_type_symbol = param_data_type;
  9103             symbol_c *IN_type_symbol = param_data_type;
  8315             last_type_symbol = param_data_type;
  9104             last_type_symbol = param_data_type;
  8316             
  9105             
  8317             if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
  9106             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
  8318             {
  9107             {
  8319         
  9108         
       
  9109                 
       
  9110                 if (IN_type_symbol == NULL)
       
  9111                   IN_type_symbol = last_type_symbol;
  8320                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9112                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8321                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
  9113                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
  8322                 function_type_prefix = return_type_symbol;
  9114                 function_type_prefix = return_type_symbol;
  8323                 break;
  9115                 break;
  8324                 
  9116                 
  8343             symbol_c *IN_param_value = &this->default_variable_name;
  9135             symbol_c *IN_param_value = &this->default_variable_name;
  8344         
  9136         
  8345             symbol_c *IN_type_symbol = param_data_type;
  9137             symbol_c *IN_type_symbol = param_data_type;
  8346             last_type_symbol = param_data_type;
  9138             last_type_symbol = param_data_type;
  8347             
  9139             
  8348             if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
  9140             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
  8349             {
  9141             {
  8350         
  9142         
  8351                 function_name = (symbol_c*)(new pragma_c("__bit_to_string"));
  9143                 function_name = (symbol_c*)(new pragma_c("__bit_to_string"));
       
  9144                 
       
  9145                 if (IN_type_symbol == NULL)
       
  9146                   IN_type_symbol = last_type_symbol;
  8352                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9147                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8353                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
  9148                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
  8354                 function_type_prefix = return_type_symbol;
  9149                 function_type_prefix = return_type_symbol;
  8355                 break;
  9150                 break;
  8356                 
  9151                 
  8375             symbol_c *IN_param_value = &this->default_variable_name;
  9170             symbol_c *IN_param_value = &this->default_variable_name;
  8376         
  9171         
  8377             symbol_c *IN_type_symbol = param_data_type;
  9172             symbol_c *IN_type_symbol = param_data_type;
  8378             last_type_symbol = param_data_type;
  9173             last_type_symbol = param_data_type;
  8379             
  9174             
  8380             if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
  9175             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
  8381             {
  9176             {
  8382         
  9177         
       
  9178                 
       
  9179                 if (IN_type_symbol == NULL)
       
  9180                   IN_type_symbol = last_type_symbol;
  8383                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9181                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8384                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
  9182                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
  8385                 function_type_prefix = return_type_symbol;
  9183                 function_type_prefix = return_type_symbol;
  8386                 break;
  9184                 break;
  8387                 
  9185                 
  8406             symbol_c *IN_param_value = &this->default_variable_name;
  9204             symbol_c *IN_param_value = &this->default_variable_name;
  8407         
  9205         
  8408             symbol_c *IN_type_symbol = param_data_type;
  9206             symbol_c *IN_type_symbol = param_data_type;
  8409             last_type_symbol = param_data_type;
  9207             last_type_symbol = param_data_type;
  8410             
  9208             
  8411             if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
  9209             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
  8412             {
  9210             {
  8413         
  9211         
       
  9212                 
       
  9213                 if (IN_type_symbol == NULL)
       
  9214                   IN_type_symbol = last_type_symbol;
  8414                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9215                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8415                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
  9216                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
  8416                 function_type_prefix = return_type_symbol;
  9217                 function_type_prefix = return_type_symbol;
  8417                 break;
  9218                 break;
  8418                 
  9219                 
  8437             symbol_c *IN_param_value = &this->default_variable_name;
  9238             symbol_c *IN_param_value = &this->default_variable_name;
  8438         
  9239         
  8439             symbol_c *IN_type_symbol = param_data_type;
  9240             symbol_c *IN_type_symbol = param_data_type;
  8440             last_type_symbol = param_data_type;
  9241             last_type_symbol = param_data_type;
  8441             
  9242             
  8442             if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
  9243             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
  8443             {
  9244             {
  8444         
  9245         
       
  9246                 
       
  9247                 if (IN_type_symbol == NULL)
       
  9248                   IN_type_symbol = last_type_symbol;
  8445                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9249                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8446                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
  9250                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
  8447                 function_type_prefix = return_type_symbol;
  9251                 function_type_prefix = return_type_symbol;
  8448                 break;
  9252                 break;
  8449                 
  9253                 
  8468             symbol_c *IN_param_value = &this->default_variable_name;
  9272             symbol_c *IN_param_value = &this->default_variable_name;
  8469         
  9273         
  8470             symbol_c *IN_type_symbol = param_data_type;
  9274             symbol_c *IN_type_symbol = param_data_type;
  8471             last_type_symbol = param_data_type;
  9275             last_type_symbol = param_data_type;
  8472             
  9276             
  8473             if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
  9277             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
  8474             {
  9278             {
  8475         
  9279         
       
  9280                 
       
  9281                 if (IN_type_symbol == NULL)
       
  9282                   IN_type_symbol = last_type_symbol;
  8476                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9283                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8477                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
  9284                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
  8478                 function_type_prefix = return_type_symbol;
  9285                 function_type_prefix = return_type_symbol;
  8479                 break;
  9286                 break;
  8480                 
  9287                 
  8499             symbol_c *IN_param_value = &this->default_variable_name;
  9306             symbol_c *IN_param_value = &this->default_variable_name;
  8500         
  9307         
  8501             symbol_c *IN_type_symbol = param_data_type;
  9308             symbol_c *IN_type_symbol = param_data_type;
  8502             last_type_symbol = param_data_type;
  9309             last_type_symbol = param_data_type;
  8503             
  9310             
  8504             if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
  9311             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
  8505             {
  9312             {
  8506         
  9313         
       
  9314                 
       
  9315                 if (IN_type_symbol == NULL)
       
  9316                   IN_type_symbol = last_type_symbol;
  8507                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9317                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8508                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
  9318                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
  8509                 function_type_prefix = return_type_symbol;
  9319                 function_type_prefix = return_type_symbol;
  8510                 break;
  9320                 break;
  8511                 
  9321                 
  8530             symbol_c *IN_param_value = &this->default_variable_name;
  9340             symbol_c *IN_param_value = &this->default_variable_name;
  8531         
  9341         
  8532             symbol_c *IN_type_symbol = param_data_type;
  9342             symbol_c *IN_type_symbol = param_data_type;
  8533             last_type_symbol = param_data_type;
  9343             last_type_symbol = param_data_type;
  8534             
  9344             
  8535             if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
  9345             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
  8536             {
  9346             {
  8537         
  9347         
       
  9348                 
       
  9349                 if (IN_type_symbol == NULL)
       
  9350                   IN_type_symbol = last_type_symbol;
  8538                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9351                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8539                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
  9352                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
  8540                 function_type_prefix = return_type_symbol;
  9353                 function_type_prefix = return_type_symbol;
  8541                 break;
  9354                 break;
  8542                 
  9355                 
  8561             symbol_c *IN_param_value = &this->default_variable_name;
  9374             symbol_c *IN_param_value = &this->default_variable_name;
  8562         
  9375         
  8563             symbol_c *IN_type_symbol = param_data_type;
  9376             symbol_c *IN_type_symbol = param_data_type;
  8564             last_type_symbol = param_data_type;
  9377             last_type_symbol = param_data_type;
  8565             
  9378             
  8566             if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
  9379             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
  8567             {
  9380             {
  8568         
  9381         
  8569                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
  9382                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
       
  9383                 
       
  9384                 if (IN_type_symbol == NULL)
       
  9385                   IN_type_symbol = last_type_symbol;
  8570                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9386                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8571                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
  9387                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
  8572                 function_type_prefix = return_type_symbol;
  9388                 function_type_prefix = return_type_symbol;
  8573                 break;
  9389                 break;
  8574                 
  9390                 
  8593             symbol_c *IN_param_value = &this->default_variable_name;
  9409             symbol_c *IN_param_value = &this->default_variable_name;
  8594         
  9410         
  8595             symbol_c *IN_type_symbol = param_data_type;
  9411             symbol_c *IN_type_symbol = param_data_type;
  8596             last_type_symbol = param_data_type;
  9412             last_type_symbol = param_data_type;
  8597             
  9413             
  8598             if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
  9414             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
  8599             {
  9415             {
  8600         
  9416         
       
  9417                 
       
  9418                 if (IN_type_symbol == NULL)
       
  9419                   IN_type_symbol = last_type_symbol;
  8601                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9420                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8602                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
  9421                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
  8603                 function_type_prefix = return_type_symbol;
  9422                 function_type_prefix = return_type_symbol;
  8604                 break;
  9423                 break;
  8605                 
  9424                 
  8624             symbol_c *IN_param_value = &this->default_variable_name;
  9443             symbol_c *IN_param_value = &this->default_variable_name;
  8625         
  9444         
  8626             symbol_c *IN_type_symbol = param_data_type;
  9445             symbol_c *IN_type_symbol = param_data_type;
  8627             last_type_symbol = param_data_type;
  9446             last_type_symbol = param_data_type;
  8628             
  9447             
  8629             if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
  9448             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
  8630             {
  9449             {
  8631         
  9450         
       
  9451                 
       
  9452                 if (IN_type_symbol == NULL)
       
  9453                   IN_type_symbol = last_type_symbol;
  8632                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9454                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8633                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
  9455                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
  8634                 function_type_prefix = return_type_symbol;
  9456                 function_type_prefix = return_type_symbol;
  8635                 break;
  9457                 break;
  8636                 
  9458                 
  8655             symbol_c *IN_param_value = &this->default_variable_name;
  9477             symbol_c *IN_param_value = &this->default_variable_name;
  8656         
  9478         
  8657             symbol_c *IN_type_symbol = param_data_type;
  9479             symbol_c *IN_type_symbol = param_data_type;
  8658             last_type_symbol = param_data_type;
  9480             last_type_symbol = param_data_type;
  8659             
  9481             
  8660             if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
  9482             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
  8661             {
  9483             {
  8662         
  9484         
       
  9485                 
       
  9486                 if (IN_type_symbol == NULL)
       
  9487                   IN_type_symbol = last_type_symbol;
  8663                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9488                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8664                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
  9489                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
  8665                 function_type_prefix = return_type_symbol;
  9490                 function_type_prefix = return_type_symbol;
  8666                 break;
  9491                 break;
  8667                 
  9492                 
  8686             symbol_c *IN_param_value = &this->default_variable_name;
  9511             symbol_c *IN_param_value = &this->default_variable_name;
  8687         
  9512         
  8688             symbol_c *IN_type_symbol = param_data_type;
  9513             symbol_c *IN_type_symbol = param_data_type;
  8689             last_type_symbol = param_data_type;
  9514             last_type_symbol = param_data_type;
  8690             
  9515             
  8691             if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
  9516             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
  8692             {
  9517             {
  8693         
  9518         
       
  9519                 
       
  9520                 if (IN_type_symbol == NULL)
       
  9521                   IN_type_symbol = last_type_symbol;
  8694                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9522                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8695                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
  9523                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
  8696                 function_type_prefix = return_type_symbol;
  9524                 function_type_prefix = return_type_symbol;
  8697                 break;
  9525                 break;
  8698                 
  9526                 
  8717             symbol_c *IN_param_value = &this->default_variable_name;
  9545             symbol_c *IN_param_value = &this->default_variable_name;
  8718         
  9546         
  8719             symbol_c *IN_type_symbol = param_data_type;
  9547             symbol_c *IN_type_symbol = param_data_type;
  8720             last_type_symbol = param_data_type;
  9548             last_type_symbol = param_data_type;
  8721             
  9549             
  8722             if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
  9550             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
  8723             {
  9551             {
  8724         
  9552         
       
  9553                 
       
  9554                 if (IN_type_symbol == NULL)
       
  9555                   IN_type_symbol = last_type_symbol;
  8725                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9556                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8726                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
  9557                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
  8727                 function_type_prefix = return_type_symbol;
  9558                 function_type_prefix = return_type_symbol;
  8728                 break;
  9559                 break;
  8729                 
  9560                 
  8748             symbol_c *IN_param_value = &this->default_variable_name;
  9579             symbol_c *IN_param_value = &this->default_variable_name;
  8749         
  9580         
  8750             symbol_c *IN_type_symbol = param_data_type;
  9581             symbol_c *IN_type_symbol = param_data_type;
  8751             last_type_symbol = param_data_type;
  9582             last_type_symbol = param_data_type;
  8752             
  9583             
  8753             if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
  9584             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
  8754             {
  9585             {
  8755         
  9586         
  8756                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
  9587                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
       
  9588                 
       
  9589                 if (IN_type_symbol == NULL)
       
  9590                   IN_type_symbol = last_type_symbol;
  8757                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9591                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8758                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
  9592                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
  8759                 function_type_prefix = return_type_symbol;
  9593                 function_type_prefix = return_type_symbol;
  8760                 break;
  9594                 break;
  8761                 
  9595                 
  8780             symbol_c *IN_param_value = &this->default_variable_name;
  9614             symbol_c *IN_param_value = &this->default_variable_name;
  8781         
  9615         
  8782             symbol_c *IN_type_symbol = param_data_type;
  9616             symbol_c *IN_type_symbol = param_data_type;
  8783             last_type_symbol = param_data_type;
  9617             last_type_symbol = param_data_type;
  8784             
  9618             
  8785             if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
  9619             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
  8786             {
  9620             {
  8787         
  9621         
       
  9622                 
       
  9623                 if (IN_type_symbol == NULL)
       
  9624                   IN_type_symbol = last_type_symbol;
  8788                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9625                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8789                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
  9626                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
  8790                 function_type_prefix = return_type_symbol;
  9627                 function_type_prefix = return_type_symbol;
  8791                 break;
  9628                 break;
  8792                 
  9629                 
  8811             symbol_c *IN_param_value = &this->default_variable_name;
  9648             symbol_c *IN_param_value = &this->default_variable_name;
  8812         
  9649         
  8813             symbol_c *IN_type_symbol = param_data_type;
  9650             symbol_c *IN_type_symbol = param_data_type;
  8814             last_type_symbol = param_data_type;
  9651             last_type_symbol = param_data_type;
  8815             
  9652             
  8816             if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
  9653             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
  8817             {
  9654             {
  8818         
  9655         
  8819                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
  9656                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
       
  9657                 
       
  9658                 if (IN_type_symbol == NULL)
       
  9659                   IN_type_symbol = last_type_symbol;
  8820                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9660                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8821                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
  9661                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
  8822                 function_type_prefix = return_type_symbol;
  9662                 function_type_prefix = return_type_symbol;
  8823                 break;
  9663                 break;
  8824                 
  9664                 
  8843             symbol_c *IN_param_value = &this->default_variable_name;
  9683             symbol_c *IN_param_value = &this->default_variable_name;
  8844         
  9684         
  8845             symbol_c *IN_type_symbol = param_data_type;
  9685             symbol_c *IN_type_symbol = param_data_type;
  8846             last_type_symbol = param_data_type;
  9686             last_type_symbol = param_data_type;
  8847             
  9687             
  8848             if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
  9688             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
  8849             {
  9689             {
  8850         
  9690         
  8851                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
  9691                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
       
  9692                 
       
  9693                 if (IN_type_symbol == NULL)
       
  9694                   IN_type_symbol = last_type_symbol;
  8852                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9695                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8853                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
  9696                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
  8854                 function_type_prefix = return_type_symbol;
  9697                 function_type_prefix = return_type_symbol;
  8855                 break;
  9698                 break;
  8856                 
  9699                 
  8875             symbol_c *IN_param_value = &this->default_variable_name;
  9718             symbol_c *IN_param_value = &this->default_variable_name;
  8876         
  9719         
  8877             symbol_c *IN_type_symbol = param_data_type;
  9720             symbol_c *IN_type_symbol = param_data_type;
  8878             last_type_symbol = param_data_type;
  9721             last_type_symbol = param_data_type;
  8879             
  9722             
  8880             if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
  9723             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
  8881             {
  9724             {
  8882         
  9725         
       
  9726                 
       
  9727                 if (IN_type_symbol == NULL)
       
  9728                   IN_type_symbol = last_type_symbol;
  8883                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9729                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8884                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
  9730                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
  8885                 function_type_prefix = return_type_symbol;
  9731                 function_type_prefix = return_type_symbol;
  8886                 break;
  9732                 break;
  8887                 
  9733                 
  8906             symbol_c *IN_param_value = &this->default_variable_name;
  9752             symbol_c *IN_param_value = &this->default_variable_name;
  8907         
  9753         
  8908             symbol_c *IN_type_symbol = param_data_type;
  9754             symbol_c *IN_type_symbol = param_data_type;
  8909             last_type_symbol = param_data_type;
  9755             last_type_symbol = param_data_type;
  8910             
  9756             
  8911             if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
  9757             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
  8912             {
  9758             {
  8913         
  9759         
       
  9760                 
       
  9761                 if (IN_type_symbol == NULL)
       
  9762                   IN_type_symbol = last_type_symbol;
  8914                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9763                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8915                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
  9764                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
  8916                 function_type_prefix = return_type_symbol;
  9765                 function_type_prefix = return_type_symbol;
  8917                 break;
  9766                 break;
  8918                 
  9767                 
  8937             symbol_c *IN_param_value = &this->default_variable_name;
  9786             symbol_c *IN_param_value = &this->default_variable_name;
  8938         
  9787         
  8939             symbol_c *IN_type_symbol = param_data_type;
  9788             symbol_c *IN_type_symbol = param_data_type;
  8940             last_type_symbol = param_data_type;
  9789             last_type_symbol = param_data_type;
  8941             
  9790             
  8942             if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
  9791             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
  8943             {
  9792             {
  8944         
  9793         
  8945                 function_name = (symbol_c*)(new pragma_c("__uint_to_string"));
  9794                 function_name = (symbol_c*)(new pragma_c("__uint_to_string"));
       
  9795                 
       
  9796                 if (IN_type_symbol == NULL)
       
  9797                   IN_type_symbol = last_type_symbol;
  8946                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9798                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8947                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
  9799                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
  8948                 function_type_prefix = return_type_symbol;
  9800                 function_type_prefix = return_type_symbol;
  8949                 break;
  9801                 break;
  8950                 
  9802                 
  8969             symbol_c *IN_param_value = &this->default_variable_name;
  9821             symbol_c *IN_param_value = &this->default_variable_name;
  8970         
  9822         
  8971             symbol_c *IN_type_symbol = param_data_type;
  9823             symbol_c *IN_type_symbol = param_data_type;
  8972             last_type_symbol = param_data_type;
  9824             last_type_symbol = param_data_type;
  8973             
  9825             
  8974             if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
  9826             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
  8975             {
  9827             {
  8976         
  9828         
       
  9829                 
       
  9830                 if (IN_type_symbol == NULL)
       
  9831                   IN_type_symbol = last_type_symbol;
  8977                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9832                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  8978                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
  9833                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
  8979                 function_type_prefix = return_type_symbol;
  9834                 function_type_prefix = return_type_symbol;
  8980                 break;
  9835                 break;
  8981                 
  9836                 
  9000             symbol_c *IN_param_value = &this->default_variable_name;
  9855             symbol_c *IN_param_value = &this->default_variable_name;
  9001         
  9856         
  9002             symbol_c *IN_type_symbol = param_data_type;
  9857             symbol_c *IN_type_symbol = param_data_type;
  9003             last_type_symbol = param_data_type;
  9858             last_type_symbol = param_data_type;
  9004             
  9859             
  9005             if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
  9860             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
  9006             {
  9861             {
  9007         
  9862         
       
  9863                 
       
  9864                 if (IN_type_symbol == NULL)
       
  9865                   IN_type_symbol = last_type_symbol;
  9008                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9866                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9009                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
  9867                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
  9010                 function_type_prefix = return_type_symbol;
  9868                 function_type_prefix = return_type_symbol;
  9011                 break;
  9869                 break;
  9012                 
  9870                 
  9031             symbol_c *IN_param_value = &this->default_variable_name;
  9889             symbol_c *IN_param_value = &this->default_variable_name;
  9032         
  9890         
  9033             symbol_c *IN_type_symbol = param_data_type;
  9891             symbol_c *IN_type_symbol = param_data_type;
  9034             last_type_symbol = param_data_type;
  9892             last_type_symbol = param_data_type;
  9035             
  9893             
  9036             if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
  9894             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
  9037             {
  9895             {
  9038         
  9896         
       
  9897                 
       
  9898                 if (IN_type_symbol == NULL)
       
  9899                   IN_type_symbol = last_type_symbol;
  9039                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9900                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9040                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
  9901                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
  9041                 function_type_prefix = return_type_symbol;
  9902                 function_type_prefix = return_type_symbol;
  9042                 break;
  9903                 break;
  9043                 
  9904                 
  9062             symbol_c *IN_param_value = &this->default_variable_name;
  9923             symbol_c *IN_param_value = &this->default_variable_name;
  9063         
  9924         
  9064             symbol_c *IN_type_symbol = param_data_type;
  9925             symbol_c *IN_type_symbol = param_data_type;
  9065             last_type_symbol = param_data_type;
  9926             last_type_symbol = param_data_type;
  9066             
  9927             
  9067             if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
  9928             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
  9068             {
  9929             {
  9069         
  9930         
       
  9931                 
       
  9932                 if (IN_type_symbol == NULL)
       
  9933                   IN_type_symbol = last_type_symbol;
  9070                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9934                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9071                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
  9935                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
  9072                 function_type_prefix = return_type_symbol;
  9936                 function_type_prefix = return_type_symbol;
  9073                 break;
  9937                 break;
  9074                 
  9938                 
  9093             symbol_c *IN_param_value = &this->default_variable_name;
  9957             symbol_c *IN_param_value = &this->default_variable_name;
  9094         
  9958         
  9095             symbol_c *IN_type_symbol = param_data_type;
  9959             symbol_c *IN_type_symbol = param_data_type;
  9096             last_type_symbol = param_data_type;
  9960             last_type_symbol = param_data_type;
  9097             
  9961             
  9098             if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
  9962             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
  9099             {
  9963             {
  9100         
  9964         
       
  9965                 
       
  9966                 if (IN_type_symbol == NULL)
       
  9967                   IN_type_symbol = last_type_symbol;
  9101                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9968                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9102                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
  9969                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
  9103                 function_type_prefix = return_type_symbol;
  9970                 function_type_prefix = return_type_symbol;
  9104                 break;
  9971                 break;
  9105                 
  9972                 
  9124             symbol_c *IN_param_value = &this->default_variable_name;
  9991             symbol_c *IN_param_value = &this->default_variable_name;
  9125         
  9992         
  9126             symbol_c *IN_type_symbol = param_data_type;
  9993             symbol_c *IN_type_symbol = param_data_type;
  9127             last_type_symbol = param_data_type;
  9994             last_type_symbol = param_data_type;
  9128             
  9995             
  9129             if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
  9996             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
  9130             {
  9997             {
  9131         
  9998         
       
  9999                 
       
 10000                 if (IN_type_symbol == NULL)
       
 10001                   IN_type_symbol = last_type_symbol;
  9132                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10002                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9133                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
 10003                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
  9134                 function_type_prefix = return_type_symbol;
 10004                 function_type_prefix = return_type_symbol;
  9135                 break;
 10005                 break;
  9136                 
 10006                 
  9155             symbol_c *IN_param_value = &this->default_variable_name;
 10025             symbol_c *IN_param_value = &this->default_variable_name;
  9156         
 10026         
  9157             symbol_c *IN_type_symbol = param_data_type;
 10027             symbol_c *IN_type_symbol = param_data_type;
  9158             last_type_symbol = param_data_type;
 10028             last_type_symbol = param_data_type;
  9159             
 10029             
  9160             if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
 10030             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
  9161             {
 10031             {
  9162         
 10032         
  9163                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
 10033                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
       
 10034                 
       
 10035                 if (IN_type_symbol == NULL)
       
 10036                   IN_type_symbol = last_type_symbol;
  9164                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10037                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9165                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
 10038                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
  9166                 function_type_prefix = return_type_symbol;
 10039                 function_type_prefix = return_type_symbol;
  9167                 break;
 10040                 break;
  9168                 
 10041                 
  9187             symbol_c *IN_param_value = &this->default_variable_name;
 10060             symbol_c *IN_param_value = &this->default_variable_name;
  9188         
 10061         
  9189             symbol_c *IN_type_symbol = param_data_type;
 10062             symbol_c *IN_type_symbol = param_data_type;
  9190             last_type_symbol = param_data_type;
 10063             last_type_symbol = param_data_type;
  9191             
 10064             
  9192             if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
 10065             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
  9193             {
 10066             {
  9194         
 10067         
       
 10068                 
       
 10069                 if (IN_type_symbol == NULL)
       
 10070                   IN_type_symbol = last_type_symbol;
  9195                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10071                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9196                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
 10072                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
  9197                 function_type_prefix = return_type_symbol;
 10073                 function_type_prefix = return_type_symbol;
  9198                 break;
 10074                 break;
  9199                 
 10075                 
  9218             symbol_c *IN_param_value = &this->default_variable_name;
 10094             symbol_c *IN_param_value = &this->default_variable_name;
  9219         
 10095         
  9220             symbol_c *IN_type_symbol = param_data_type;
 10096             symbol_c *IN_type_symbol = param_data_type;
  9221             last_type_symbol = param_data_type;
 10097             last_type_symbol = param_data_type;
  9222             
 10098             
  9223             if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
 10099             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
  9224             {
 10100             {
  9225         
 10101         
       
 10102                 
       
 10103                 if (IN_type_symbol == NULL)
       
 10104                   IN_type_symbol = last_type_symbol;
  9226                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10105                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9227                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
 10106                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
  9228                 function_type_prefix = return_type_symbol;
 10107                 function_type_prefix = return_type_symbol;
  9229                 break;
 10108                 break;
  9230                 
 10109                 
  9249             symbol_c *IN_param_value = &this->default_variable_name;
 10128             symbol_c *IN_param_value = &this->default_variable_name;
  9250         
 10129         
  9251             symbol_c *IN_type_symbol = param_data_type;
 10130             symbol_c *IN_type_symbol = param_data_type;
  9252             last_type_symbol = param_data_type;
 10131             last_type_symbol = param_data_type;
  9253             
 10132             
  9254             if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
 10133             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
  9255             {
 10134             {
  9256         
 10135         
       
 10136                 
       
 10137                 if (IN_type_symbol == NULL)
       
 10138                   IN_type_symbol = last_type_symbol;
  9257                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10139                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9258                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
 10140                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
  9259                 function_type_prefix = return_type_symbol;
 10141                 function_type_prefix = return_type_symbol;
  9260                 break;
 10142                 break;
  9261                 
 10143                 
  9280             symbol_c *IN_param_value = &this->default_variable_name;
 10162             symbol_c *IN_param_value = &this->default_variable_name;
  9281         
 10163         
  9282             symbol_c *IN_type_symbol = param_data_type;
 10164             symbol_c *IN_type_symbol = param_data_type;
  9283             last_type_symbol = param_data_type;
 10165             last_type_symbol = param_data_type;
  9284             
 10166             
  9285             if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
 10167             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
  9286             {
 10168             {
  9287         
 10169         
       
 10170                 
       
 10171                 if (IN_type_symbol == NULL)
       
 10172                   IN_type_symbol = last_type_symbol;
  9288                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10173                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9289                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
 10174                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
  9290                 function_type_prefix = return_type_symbol;
 10175                 function_type_prefix = return_type_symbol;
  9291                 break;
 10176                 break;
  9292                 
 10177                 
  9311             symbol_c *IN_param_value = &this->default_variable_name;
 10196             symbol_c *IN_param_value = &this->default_variable_name;
  9312         
 10197         
  9313             symbol_c *IN_type_symbol = param_data_type;
 10198             symbol_c *IN_type_symbol = param_data_type;
  9314             last_type_symbol = param_data_type;
 10199             last_type_symbol = param_data_type;
  9315             
 10200             
  9316             if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
 10201             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
  9317             {
 10202             {
  9318         
 10203         
       
 10204                 
       
 10205                 if (IN_type_symbol == NULL)
       
 10206                   IN_type_symbol = last_type_symbol;
  9319                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10207                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9320                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
 10208                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
  9321                 function_type_prefix = return_type_symbol;
 10209                 function_type_prefix = return_type_symbol;
  9322                 break;
 10210                 break;
  9323                 
 10211                 
  9342             symbol_c *IN_param_value = &this->default_variable_name;
 10230             symbol_c *IN_param_value = &this->default_variable_name;
  9343         
 10231         
  9344             symbol_c *IN_type_symbol = param_data_type;
 10232             symbol_c *IN_type_symbol = param_data_type;
  9345             last_type_symbol = param_data_type;
 10233             last_type_symbol = param_data_type;
  9346             
 10234             
  9347             if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
 10235             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
  9348             {
 10236             {
  9349         
 10237         
  9350                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
 10238                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
       
 10239                 
       
 10240                 if (IN_type_symbol == NULL)
       
 10241                   IN_type_symbol = last_type_symbol;
  9351                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10242                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9352                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
 10243                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
  9353                 function_type_prefix = return_type_symbol;
 10244                 function_type_prefix = return_type_symbol;
  9354                 break;
 10245                 break;
  9355                 
 10246                 
  9374             symbol_c *IN_param_value = &this->default_variable_name;
 10265             symbol_c *IN_param_value = &this->default_variable_name;
  9375         
 10266         
  9376             symbol_c *IN_type_symbol = param_data_type;
 10267             symbol_c *IN_type_symbol = param_data_type;
  9377             last_type_symbol = param_data_type;
 10268             last_type_symbol = param_data_type;
  9378             
 10269             
  9379             if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
 10270             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
  9380             {
 10271             {
  9381         
 10272         
       
 10273                 
       
 10274                 if (IN_type_symbol == NULL)
       
 10275                   IN_type_symbol = last_type_symbol;
  9382                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10276                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9383                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
 10277                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
  9384                 function_type_prefix = return_type_symbol;
 10278                 function_type_prefix = return_type_symbol;
  9385                 break;
 10279                 break;
  9386                 
 10280                 
  9405             symbol_c *IN_param_value = &this->default_variable_name;
 10299             symbol_c *IN_param_value = &this->default_variable_name;
  9406         
 10300         
  9407             symbol_c *IN_type_symbol = param_data_type;
 10301             symbol_c *IN_type_symbol = param_data_type;
  9408             last_type_symbol = param_data_type;
 10302             last_type_symbol = param_data_type;
  9409             
 10303             
  9410             if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
 10304             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
  9411             {
 10305             {
  9412         
 10306         
  9413                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
 10307                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
       
 10308                 
       
 10309                 if (IN_type_symbol == NULL)
       
 10310                   IN_type_symbol = last_type_symbol;
  9414                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10311                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9415                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
 10312                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
  9416                 function_type_prefix = return_type_symbol;
 10313                 function_type_prefix = return_type_symbol;
  9417                 break;
 10314                 break;
  9418                 
 10315                 
  9437             symbol_c *IN_param_value = &this->default_variable_name;
 10334             symbol_c *IN_param_value = &this->default_variable_name;
  9438         
 10335         
  9439             symbol_c *IN_type_symbol = param_data_type;
 10336             symbol_c *IN_type_symbol = param_data_type;
  9440             last_type_symbol = param_data_type;
 10337             last_type_symbol = param_data_type;
  9441             
 10338             
  9442             if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
 10339             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
  9443             {
 10340             {
  9444         
 10341         
  9445                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
 10342                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
       
 10343                 
       
 10344                 if (IN_type_symbol == NULL)
       
 10345                   IN_type_symbol = last_type_symbol;
  9446                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10346                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9447                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
 10347                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
  9448                 function_type_prefix = return_type_symbol;
 10348                 function_type_prefix = return_type_symbol;
  9449                 break;
 10349                 break;
  9450                 
 10350                 
  9469             symbol_c *IN_param_value = &this->default_variable_name;
 10369             symbol_c *IN_param_value = &this->default_variable_name;
  9470         
 10370         
  9471             symbol_c *IN_type_symbol = param_data_type;
 10371             symbol_c *IN_type_symbol = param_data_type;
  9472             last_type_symbol = param_data_type;
 10372             last_type_symbol = param_data_type;
  9473             
 10373             
  9474             if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
 10374             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
  9475             {
 10375             {
  9476         
 10376         
       
 10377                 
       
 10378                 if (IN_type_symbol == NULL)
       
 10379                   IN_type_symbol = last_type_symbol;
  9477                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10380                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9478                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
 10381                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
  9479                 function_type_prefix = return_type_symbol;
 10382                 function_type_prefix = return_type_symbol;
  9480                 break;
 10383                 break;
  9481                 
 10384                 
  9500             symbol_c *IN_param_value = &this->default_variable_name;
 10403             symbol_c *IN_param_value = &this->default_variable_name;
  9501         
 10404         
  9502             symbol_c *IN_type_symbol = param_data_type;
 10405             symbol_c *IN_type_symbol = param_data_type;
  9503             last_type_symbol = param_data_type;
 10406             last_type_symbol = param_data_type;
  9504             
 10407             
  9505             if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
 10408             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
  9506             {
 10409             {
  9507         
 10410         
       
 10411                 
       
 10412                 if (IN_type_symbol == NULL)
       
 10413                   IN_type_symbol = last_type_symbol;
  9508                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10414                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9509                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
 10415                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
  9510                 function_type_prefix = return_type_symbol;
 10416                 function_type_prefix = return_type_symbol;
  9511                 break;
 10417                 break;
  9512                 
 10418                 
  9531             symbol_c *IN_param_value = &this->default_variable_name;
 10437             symbol_c *IN_param_value = &this->default_variable_name;
  9532         
 10438         
  9533             symbol_c *IN_type_symbol = param_data_type;
 10439             symbol_c *IN_type_symbol = param_data_type;
  9534             last_type_symbol = param_data_type;
 10440             last_type_symbol = param_data_type;
  9535             
 10441             
  9536             if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
 10442             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
  9537             {
 10443             {
  9538         
 10444         
  9539                 function_name = (symbol_c*)(new pragma_c("__uint_to_string"));
 10445                 function_name = (symbol_c*)(new pragma_c("__uint_to_string"));
       
 10446                 
       
 10447                 if (IN_type_symbol == NULL)
       
 10448                   IN_type_symbol = last_type_symbol;
  9540                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10449                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9541                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
 10450                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
  9542                 function_type_prefix = return_type_symbol;
 10451                 function_type_prefix = return_type_symbol;
  9543                 break;
 10452                 break;
  9544                 
 10453                 
  9563             symbol_c *IN_param_value = &this->default_variable_name;
 10472             symbol_c *IN_param_value = &this->default_variable_name;
  9564         
 10473         
  9565             symbol_c *IN_type_symbol = param_data_type;
 10474             symbol_c *IN_type_symbol = param_data_type;
  9566             last_type_symbol = param_data_type;
 10475             last_type_symbol = param_data_type;
  9567             
 10476             
  9568             if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
 10477             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
  9569             {
 10478             {
  9570         
 10479         
       
 10480                 
       
 10481                 if (IN_type_symbol == NULL)
       
 10482                   IN_type_symbol = last_type_symbol;
  9571                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10483                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9572                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
 10484                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
  9573                 function_type_prefix = return_type_symbol;
 10485                 function_type_prefix = return_type_symbol;
  9574                 break;
 10486                 break;
  9575                 
 10487                 
  9594             symbol_c *IN_param_value = &this->default_variable_name;
 10506             symbol_c *IN_param_value = &this->default_variable_name;
  9595         
 10507         
  9596             symbol_c *IN_type_symbol = param_data_type;
 10508             symbol_c *IN_type_symbol = param_data_type;
  9597             last_type_symbol = param_data_type;
 10509             last_type_symbol = param_data_type;
  9598             
 10510             
  9599             if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
 10511             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
  9600             {
 10512             {
  9601         
 10513         
       
 10514                 
       
 10515                 if (IN_type_symbol == NULL)
       
 10516                   IN_type_symbol = last_type_symbol;
  9602                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10517                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9603                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
 10518                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
  9604                 function_type_prefix = return_type_symbol;
 10519                 function_type_prefix = return_type_symbol;
  9605                 break;
 10520                 break;
  9606                 
 10521                 
  9625             symbol_c *IN_param_value = &this->default_variable_name;
 10540             symbol_c *IN_param_value = &this->default_variable_name;
  9626         
 10541         
  9627             symbol_c *IN_type_symbol = param_data_type;
 10542             symbol_c *IN_type_symbol = param_data_type;
  9628             last_type_symbol = param_data_type;
 10543             last_type_symbol = param_data_type;
  9629             
 10544             
  9630             if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
 10545             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
  9631             {
 10546             {
  9632         
 10547         
       
 10548                 
       
 10549                 if (IN_type_symbol == NULL)
       
 10550                   IN_type_symbol = last_type_symbol;
  9633                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10551                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9634                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
 10552                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
  9635                 function_type_prefix = return_type_symbol;
 10553                 function_type_prefix = return_type_symbol;
  9636                 break;
 10554                 break;
  9637                 
 10555                 
  9656             symbol_c *IN_param_value = &this->default_variable_name;
 10574             symbol_c *IN_param_value = &this->default_variable_name;
  9657         
 10575         
  9658             symbol_c *IN_type_symbol = param_data_type;
 10576             symbol_c *IN_type_symbol = param_data_type;
  9659             last_type_symbol = param_data_type;
 10577             last_type_symbol = param_data_type;
  9660             
 10578             
  9661             if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
 10579             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
  9662             {
 10580             {
  9663         
 10581         
       
 10582                 
       
 10583                 if (IN_type_symbol == NULL)
       
 10584                   IN_type_symbol = last_type_symbol;
  9664                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10585                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9665                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
 10586                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
  9666                 function_type_prefix = return_type_symbol;
 10587                 function_type_prefix = return_type_symbol;
  9667                 break;
 10588                 break;
  9668                 
 10589                 
  9687             symbol_c *IN_param_value = &this->default_variable_name;
 10608             symbol_c *IN_param_value = &this->default_variable_name;
  9688         
 10609         
  9689             symbol_c *IN_type_symbol = param_data_type;
 10610             symbol_c *IN_type_symbol = param_data_type;
  9690             last_type_symbol = param_data_type;
 10611             last_type_symbol = param_data_type;
  9691             
 10612             
  9692             if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
 10613             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
  9693             {
 10614             {
  9694         
 10615         
       
 10616                 
       
 10617                 if (IN_type_symbol == NULL)
       
 10618                   IN_type_symbol = last_type_symbol;
  9695                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10619                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9696                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
 10620                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
  9697                 function_type_prefix = return_type_symbol;
 10621                 function_type_prefix = return_type_symbol;
  9698                 break;
 10622                 break;
  9699                 
 10623                 
  9718             symbol_c *IN_param_value = &this->default_variable_name;
 10642             symbol_c *IN_param_value = &this->default_variable_name;
  9719         
 10643         
  9720             symbol_c *IN_type_symbol = param_data_type;
 10644             symbol_c *IN_type_symbol = param_data_type;
  9721             last_type_symbol = param_data_type;
 10645             last_type_symbol = param_data_type;
  9722             
 10646             
  9723             if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
 10647             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
  9724             {
 10648             {
  9725         
 10649         
       
 10650                 
       
 10651                 if (IN_type_symbol == NULL)
       
 10652                   IN_type_symbol = last_type_symbol;
  9726                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10653                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9727                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
 10654                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
  9728                 function_type_prefix = return_type_symbol;
 10655                 function_type_prefix = return_type_symbol;
  9729                 break;
 10656                 break;
  9730                 
 10657                 
  9749             symbol_c *IN_param_value = &this->default_variable_name;
 10676             symbol_c *IN_param_value = &this->default_variable_name;
  9750         
 10677         
  9751             symbol_c *IN_type_symbol = param_data_type;
 10678             symbol_c *IN_type_symbol = param_data_type;
  9752             last_type_symbol = param_data_type;
 10679             last_type_symbol = param_data_type;
  9753             
 10680             
  9754             if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
 10681             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
  9755             {
 10682             {
  9756         
 10683         
  9757                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
 10684                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
       
 10685                 
       
 10686                 if (IN_type_symbol == NULL)
       
 10687                   IN_type_symbol = last_type_symbol;
  9758                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10688                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9759                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
 10689                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
  9760                 function_type_prefix = return_type_symbol;
 10690                 function_type_prefix = return_type_symbol;
  9761                 break;
 10691                 break;
  9762                 
 10692                 
  9781             symbol_c *IN_param_value = &this->default_variable_name;
 10711             symbol_c *IN_param_value = &this->default_variable_name;
  9782         
 10712         
  9783             symbol_c *IN_type_symbol = param_data_type;
 10713             symbol_c *IN_type_symbol = param_data_type;
  9784             last_type_symbol = param_data_type;
 10714             last_type_symbol = param_data_type;
  9785             
 10715             
  9786             if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
 10716             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
  9787             {
 10717             {
  9788         
 10718         
       
 10719                 
       
 10720                 if (IN_type_symbol == NULL)
       
 10721                   IN_type_symbol = last_type_symbol;
  9789                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10722                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9790                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
 10723                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
  9791                 function_type_prefix = return_type_symbol;
 10724                 function_type_prefix = return_type_symbol;
  9792                 break;
 10725                 break;
  9793                 
 10726                 
  9812             symbol_c *IN_param_value = &this->default_variable_name;
 10745             symbol_c *IN_param_value = &this->default_variable_name;
  9813         
 10746         
  9814             symbol_c *IN_type_symbol = param_data_type;
 10747             symbol_c *IN_type_symbol = param_data_type;
  9815             last_type_symbol = param_data_type;
 10748             last_type_symbol = param_data_type;
  9816             
 10749             
  9817             if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
 10750             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
  9818             {
 10751             {
  9819         
 10752         
       
 10753                 
       
 10754                 if (IN_type_symbol == NULL)
       
 10755                   IN_type_symbol = last_type_symbol;
  9820                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10756                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9821                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
 10757                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
  9822                 function_type_prefix = return_type_symbol;
 10758                 function_type_prefix = return_type_symbol;
  9823                 break;
 10759                 break;
  9824                 
 10760                 
  9843             symbol_c *IN_param_value = &this->default_variable_name;
 10779             symbol_c *IN_param_value = &this->default_variable_name;
  9844         
 10780         
  9845             symbol_c *IN_type_symbol = param_data_type;
 10781             symbol_c *IN_type_symbol = param_data_type;
  9846             last_type_symbol = param_data_type;
 10782             last_type_symbol = param_data_type;
  9847             
 10783             
  9848             if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
 10784             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
  9849             {
 10785             {
  9850         
 10786         
       
 10787                 
       
 10788                 if (IN_type_symbol == NULL)
       
 10789                   IN_type_symbol = last_type_symbol;
  9851                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10790                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9852                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
 10791                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
  9853                 function_type_prefix = return_type_symbol;
 10792                 function_type_prefix = return_type_symbol;
  9854                 break;
 10793                 break;
  9855                 
 10794                 
  9874             symbol_c *IN_param_value = &this->default_variable_name;
 10813             symbol_c *IN_param_value = &this->default_variable_name;
  9875         
 10814         
  9876             symbol_c *IN_type_symbol = param_data_type;
 10815             symbol_c *IN_type_symbol = param_data_type;
  9877             last_type_symbol = param_data_type;
 10816             last_type_symbol = param_data_type;
  9878             
 10817             
  9879             if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
 10818             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
  9880             {
 10819             {
  9881         
 10820         
       
 10821                 
       
 10822                 if (IN_type_symbol == NULL)
       
 10823                   IN_type_symbol = last_type_symbol;
  9882                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10824                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9883                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
 10825                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
  9884                 function_type_prefix = return_type_symbol;
 10826                 function_type_prefix = return_type_symbol;
  9885                 break;
 10827                 break;
  9886                 
 10828                 
  9905             symbol_c *IN_param_value = &this->default_variable_name;
 10847             symbol_c *IN_param_value = &this->default_variable_name;
  9906         
 10848         
  9907             symbol_c *IN_type_symbol = param_data_type;
 10849             symbol_c *IN_type_symbol = param_data_type;
  9908             last_type_symbol = param_data_type;
 10850             last_type_symbol = param_data_type;
  9909             
 10851             
  9910             if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
 10852             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
  9911             {
 10853             {
  9912         
 10854         
       
 10855                 
       
 10856                 if (IN_type_symbol == NULL)
       
 10857                   IN_type_symbol = last_type_symbol;
  9913                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10858                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9914                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
 10859                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
  9915                 function_type_prefix = return_type_symbol;
 10860                 function_type_prefix = return_type_symbol;
  9916                 break;
 10861                 break;
  9917                 
 10862                 
  9936             symbol_c *IN_param_value = &this->default_variable_name;
 10881             symbol_c *IN_param_value = &this->default_variable_name;
  9937         
 10882         
  9938             symbol_c *IN_type_symbol = param_data_type;
 10883             symbol_c *IN_type_symbol = param_data_type;
  9939             last_type_symbol = param_data_type;
 10884             last_type_symbol = param_data_type;
  9940             
 10885             
  9941             if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
 10886             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
  9942             {
 10887             {
  9943         
 10888         
  9944                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
 10889                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
       
 10890                 
       
 10891                 if (IN_type_symbol == NULL)
       
 10892                   IN_type_symbol = last_type_symbol;
  9945                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10893                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9946                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
 10894                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
  9947                 function_type_prefix = return_type_symbol;
 10895                 function_type_prefix = return_type_symbol;
  9948                 break;
 10896                 break;
  9949                 
 10897                 
  9968             symbol_c *IN_param_value = &this->default_variable_name;
 10916             symbol_c *IN_param_value = &this->default_variable_name;
  9969         
 10917         
  9970             symbol_c *IN_type_symbol = param_data_type;
 10918             symbol_c *IN_type_symbol = param_data_type;
  9971             last_type_symbol = param_data_type;
 10919             last_type_symbol = param_data_type;
  9972             
 10920             
  9973             if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
 10921             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
  9974             {
 10922             {
  9975         
 10923         
       
 10924                 
       
 10925                 if (IN_type_symbol == NULL)
       
 10926                   IN_type_symbol = last_type_symbol;
  9976                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10927                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
  9977                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
 10928                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
  9978                 function_type_prefix = return_type_symbol;
 10929                 function_type_prefix = return_type_symbol;
  9979                 break;
 10930                 break;
  9980                 
 10931                 
  9999             symbol_c *IN_param_value = &this->default_variable_name;
 10950             symbol_c *IN_param_value = &this->default_variable_name;
 10000         
 10951         
 10001             symbol_c *IN_type_symbol = param_data_type;
 10952             symbol_c *IN_type_symbol = param_data_type;
 10002             last_type_symbol = param_data_type;
 10953             last_type_symbol = param_data_type;
 10003             
 10954             
 10004             if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
 10955             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
 10005             {
 10956             {
 10006         
 10957         
 10007                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
 10958                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
       
 10959                 
       
 10960                 if (IN_type_symbol == NULL)
       
 10961                   IN_type_symbol = last_type_symbol;
 10008                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10962                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10009                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
 10963                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
 10010                 function_type_prefix = return_type_symbol;
 10964                 function_type_prefix = return_type_symbol;
 10011                 break;
 10965                 break;
 10012                 
 10966                 
 10031             symbol_c *IN_param_value = &this->default_variable_name;
 10985             symbol_c *IN_param_value = &this->default_variable_name;
 10032         
 10986         
 10033             symbol_c *IN_type_symbol = param_data_type;
 10987             symbol_c *IN_type_symbol = param_data_type;
 10034             last_type_symbol = param_data_type;
 10988             last_type_symbol = param_data_type;
 10035             
 10989             
 10036             if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
 10990             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
 10037             {
 10991             {
 10038         
 10992         
 10039                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
 10993                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
       
 10994                 
       
 10995                 if (IN_type_symbol == NULL)
       
 10996                   IN_type_symbol = last_type_symbol;
 10040                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10997                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10041                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
 10998                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
 10042                 function_type_prefix = return_type_symbol;
 10999                 function_type_prefix = return_type_symbol;
 10043                 break;
 11000                 break;
 10044                 
 11001                 
 10063             symbol_c *IN_param_value = &this->default_variable_name;
 11020             symbol_c *IN_param_value = &this->default_variable_name;
 10064         
 11021         
 10065             symbol_c *IN_type_symbol = param_data_type;
 11022             symbol_c *IN_type_symbol = param_data_type;
 10066             last_type_symbol = param_data_type;
 11023             last_type_symbol = param_data_type;
 10067             
 11024             
 10068             if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
 11025             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
 10069             {
 11026             {
 10070         
 11027         
       
 11028                 
       
 11029                 if (IN_type_symbol == NULL)
       
 11030                   IN_type_symbol = last_type_symbol;
 10071                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11031                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10072                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
 11032                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
 10073                 function_type_prefix = return_type_symbol;
 11033                 function_type_prefix = return_type_symbol;
 10074                 break;
 11034                 break;
 10075                 
 11035                 
 10094             symbol_c *IN_param_value = &this->default_variable_name;
 11054             symbol_c *IN_param_value = &this->default_variable_name;
 10095         
 11055         
 10096             symbol_c *IN_type_symbol = param_data_type;
 11056             symbol_c *IN_type_symbol = param_data_type;
 10097             last_type_symbol = param_data_type;
 11057             last_type_symbol = param_data_type;
 10098             
 11058             
 10099             if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
 11059             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
 10100             {
 11060             {
 10101         
 11061         
       
 11062                 
       
 11063                 if (IN_type_symbol == NULL)
       
 11064                   IN_type_symbol = last_type_symbol;
 10102                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11065                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10103                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
 11066                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
 10104                 function_type_prefix = return_type_symbol;
 11067                 function_type_prefix = return_type_symbol;
 10105                 break;
 11068                 break;
 10106                 
 11069                 
 10125             symbol_c *IN_param_value = &this->default_variable_name;
 11088             symbol_c *IN_param_value = &this->default_variable_name;
 10126         
 11089         
 10127             symbol_c *IN_type_symbol = param_data_type;
 11090             symbol_c *IN_type_symbol = param_data_type;
 10128             last_type_symbol = param_data_type;
 11091             last_type_symbol = param_data_type;
 10129             
 11092             
 10130             if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
 11093             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
 10131             {
 11094             {
 10132         
 11095         
 10133                 function_name = (symbol_c*)(new pragma_c("__bool_to_string"));
 11096                 function_name = (symbol_c*)(new pragma_c("__bool_to_string"));
       
 11097                 
       
 11098                 if (IN_type_symbol == NULL)
       
 11099                   IN_type_symbol = last_type_symbol;
 10134                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11100                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10135                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
 11101                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
 10136                 function_type_prefix = return_type_symbol;
 11102                 function_type_prefix = return_type_symbol;
 10137                 break;
 11103                 break;
 10138                 
 11104                 
 10157             symbol_c *IN_param_value = &this->default_variable_name;
 11123             symbol_c *IN_param_value = &this->default_variable_name;
 10158         
 11124         
 10159             symbol_c *IN_type_symbol = param_data_type;
 11125             symbol_c *IN_type_symbol = param_data_type;
 10160             last_type_symbol = param_data_type;
 11126             last_type_symbol = param_data_type;
 10161             
 11127             
 10162             if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
 11128             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
 10163             {
 11129             {
 10164         
 11130         
       
 11131                 
       
 11132                 if (IN_type_symbol == NULL)
       
 11133                   IN_type_symbol = last_type_symbol;
 10165                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11134                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10166                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
 11135                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
 10167                 function_type_prefix = return_type_symbol;
 11136                 function_type_prefix = return_type_symbol;
 10168                 break;
 11137                 break;
 10169                 
 11138                 
 10188             symbol_c *IN_param_value = &this->default_variable_name;
 11157             symbol_c *IN_param_value = &this->default_variable_name;
 10189         
 11158         
 10190             symbol_c *IN_type_symbol = param_data_type;
 11159             symbol_c *IN_type_symbol = param_data_type;
 10191             last_type_symbol = param_data_type;
 11160             last_type_symbol = param_data_type;
 10192             
 11161             
 10193             if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
 11162             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
 10194             {
 11163             {
 10195         
 11164         
       
 11165                 
       
 11166                 if (IN_type_symbol == NULL)
       
 11167                   IN_type_symbol = last_type_symbol;
 10196                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11168                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10197                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
 11169                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
 10198                 function_type_prefix = return_type_symbol;
 11170                 function_type_prefix = return_type_symbol;
 10199                 break;
 11171                 break;
 10200                 
 11172                 
 10219             symbol_c *IN_param_value = &this->default_variable_name;
 11191             symbol_c *IN_param_value = &this->default_variable_name;
 10220         
 11192         
 10221             symbol_c *IN_type_symbol = param_data_type;
 11193             symbol_c *IN_type_symbol = param_data_type;
 10222             last_type_symbol = param_data_type;
 11194             last_type_symbol = param_data_type;
 10223             
 11195             
 10224             if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
 11196             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
 10225             {
 11197             {
 10226         
 11198         
       
 11199                 
       
 11200                 if (IN_type_symbol == NULL)
       
 11201                   IN_type_symbol = last_type_symbol;
 10227                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11202                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10228                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
 11203                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
 10229                 function_type_prefix = return_type_symbol;
 11204                 function_type_prefix = return_type_symbol;
 10230                 break;
 11205                 break;
 10231                 
 11206                 
 10250             symbol_c *IN_param_value = &this->default_variable_name;
 11225             symbol_c *IN_param_value = &this->default_variable_name;
 10251         
 11226         
 10252             symbol_c *IN_type_symbol = param_data_type;
 11227             symbol_c *IN_type_symbol = param_data_type;
 10253             last_type_symbol = param_data_type;
 11228             last_type_symbol = param_data_type;
 10254             
 11229             
 10255             if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
 11230             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
 10256             {
 11231             {
 10257         
 11232         
       
 11233                 
       
 11234                 if (IN_type_symbol == NULL)
       
 11235                   IN_type_symbol = last_type_symbol;
 10258                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11236                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10259                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
 11237                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
 10260                 function_type_prefix = return_type_symbol;
 11238                 function_type_prefix = return_type_symbol;
 10261                 break;
 11239                 break;
 10262                 
 11240                 
 10281             symbol_c *IN_param_value = &this->default_variable_name;
 11259             symbol_c *IN_param_value = &this->default_variable_name;
 10282         
 11260         
 10283             symbol_c *IN_type_symbol = param_data_type;
 11261             symbol_c *IN_type_symbol = param_data_type;
 10284             last_type_symbol = param_data_type;
 11262             last_type_symbol = param_data_type;
 10285             
 11263             
 10286             if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
 11264             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
 10287             {
 11265             {
 10288         
 11266         
       
 11267                 
       
 11268                 if (IN_type_symbol == NULL)
       
 11269                   IN_type_symbol = last_type_symbol;
 10289                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11270                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10290                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
 11271                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
 10291                 function_type_prefix = return_type_symbol;
 11272                 function_type_prefix = return_type_symbol;
 10292                 break;
 11273                 break;
 10293                 
 11274                 
 10312             symbol_c *IN_param_value = &this->default_variable_name;
 11293             symbol_c *IN_param_value = &this->default_variable_name;
 10313         
 11294         
 10314             symbol_c *IN_type_symbol = param_data_type;
 11295             symbol_c *IN_type_symbol = param_data_type;
 10315             last_type_symbol = param_data_type;
 11296             last_type_symbol = param_data_type;
 10316             
 11297             
 10317             if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
 11298             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
 10318             {
 11299             {
 10319         
 11300         
       
 11301                 
       
 11302                 if (IN_type_symbol == NULL)
       
 11303                   IN_type_symbol = last_type_symbol;
 10320                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11304                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10321                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
 11305                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
 10322                 function_type_prefix = return_type_symbol;
 11306                 function_type_prefix = return_type_symbol;
 10323                 break;
 11307                 break;
 10324                 
 11308                 
 10343             symbol_c *IN_param_value = &this->default_variable_name;
 11327             symbol_c *IN_param_value = &this->default_variable_name;
 10344         
 11328         
 10345             symbol_c *IN_type_symbol = param_data_type;
 11329             symbol_c *IN_type_symbol = param_data_type;
 10346             last_type_symbol = param_data_type;
 11330             last_type_symbol = param_data_type;
 10347             
 11331             
 10348             if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
 11332             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
 10349             {
 11333             {
 10350         
 11334         
 10351                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
 11335                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
       
 11336                 
       
 11337                 if (IN_type_symbol == NULL)
       
 11338                   IN_type_symbol = last_type_symbol;
 10352                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11339                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10353                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
 11340                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
 10354                 function_type_prefix = return_type_symbol;
 11341                 function_type_prefix = return_type_symbol;
 10355                 break;
 11342                 break;
 10356                 
 11343                 
 10375             symbol_c *IN_param_value = &this->default_variable_name;
 11362             symbol_c *IN_param_value = &this->default_variable_name;
 10376         
 11363         
 10377             symbol_c *IN_type_symbol = param_data_type;
 11364             symbol_c *IN_type_symbol = param_data_type;
 10378             last_type_symbol = param_data_type;
 11365             last_type_symbol = param_data_type;
 10379             
 11366             
 10380             if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
 11367             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
 10381             {
 11368             {
 10382         
 11369         
       
 11370                 
       
 11371                 if (IN_type_symbol == NULL)
       
 11372                   IN_type_symbol = last_type_symbol;
 10383                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11373                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10384                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
 11374                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
 10385                 function_type_prefix = return_type_symbol;
 11375                 function_type_prefix = return_type_symbol;
 10386                 break;
 11376                 break;
 10387                 
 11377                 
 10406             symbol_c *IN_param_value = &this->default_variable_name;
 11396             symbol_c *IN_param_value = &this->default_variable_name;
 10407         
 11397         
 10408             symbol_c *IN_type_symbol = param_data_type;
 11398             symbol_c *IN_type_symbol = param_data_type;
 10409             last_type_symbol = param_data_type;
 11399             last_type_symbol = param_data_type;
 10410             
 11400             
 10411             if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 11401             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 10412             {
 11402             {
 10413         
 11403         
 10414                 function_name = (symbol_c*)(new pragma_c("__time_to_real"));
 11404                 function_name = (symbol_c*)(new pragma_c("__time_to_real"));
       
 11405                 
       
 11406                 if (IN_type_symbol == NULL)
       
 11407                   IN_type_symbol = last_type_symbol;
 10415                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11408                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10416                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
 11409                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
 10417                 function_type_prefix = return_type_symbol;
 11410                 function_type_prefix = return_type_symbol;
 10418                 break;
 11411                 break;
 10419                 
 11412                 
 10438             symbol_c *IN_param_value = &this->default_variable_name;
 11431             symbol_c *IN_param_value = &this->default_variable_name;
 10439         
 11432         
 10440             symbol_c *IN_type_symbol = param_data_type;
 11433             symbol_c *IN_type_symbol = param_data_type;
 10441             last_type_symbol = param_data_type;
 11434             last_type_symbol = param_data_type;
 10442             
 11435             
 10443             if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 11436             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 10444             {
 11437             {
 10445         
 11438         
 10446                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
 11439                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
       
 11440                 
       
 11441                 if (IN_type_symbol == NULL)
       
 11442                   IN_type_symbol = last_type_symbol;
 10447                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11443                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10448                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
 11444                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
 10449                 function_type_prefix = return_type_symbol;
 11445                 function_type_prefix = return_type_symbol;
 10450                 break;
 11446                 break;
 10451                 
 11447                 
 10470             symbol_c *IN_param_value = &this->default_variable_name;
 11466             symbol_c *IN_param_value = &this->default_variable_name;
 10471         
 11467         
 10472             symbol_c *IN_type_symbol = param_data_type;
 11468             symbol_c *IN_type_symbol = param_data_type;
 10473             last_type_symbol = param_data_type;
 11469             last_type_symbol = param_data_type;
 10474             
 11470             
 10475             if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 11471             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 10476             {
 11472             {
 10477         
 11473         
 10478                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
 11474                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
       
 11475                 
       
 11476                 if (IN_type_symbol == NULL)
       
 11477                   IN_type_symbol = last_type_symbol;
 10479                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11478                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10480                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
 11479                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
 10481                 function_type_prefix = return_type_symbol;
 11480                 function_type_prefix = return_type_symbol;
 10482                 break;
 11481                 break;
 10483                 
 11482                 
 10502             symbol_c *IN_param_value = &this->default_variable_name;
 11501             symbol_c *IN_param_value = &this->default_variable_name;
 10503         
 11502         
 10504             symbol_c *IN_type_symbol = param_data_type;
 11503             symbol_c *IN_type_symbol = param_data_type;
 10505             last_type_symbol = param_data_type;
 11504             last_type_symbol = param_data_type;
 10506             
 11505             
 10507             if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 11506             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 10508             {
 11507             {
 10509         
 11508         
 10510                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
 11509                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
       
 11510                 
       
 11511                 if (IN_type_symbol == NULL)
       
 11512                   IN_type_symbol = last_type_symbol;
 10511                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11513                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10512                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
 11514                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
 10513                 function_type_prefix = return_type_symbol;
 11515                 function_type_prefix = return_type_symbol;
 10514                 break;
 11516                 break;
 10515                 
 11517                 
 10534             symbol_c *IN_param_value = &this->default_variable_name;
 11536             symbol_c *IN_param_value = &this->default_variable_name;
 10535         
 11537         
 10536             symbol_c *IN_type_symbol = param_data_type;
 11538             symbol_c *IN_type_symbol = param_data_type;
 10537             last_type_symbol = param_data_type;
 11539             last_type_symbol = param_data_type;
 10538             
 11540             
 10539             if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 11541             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 10540             {
 11542             {
 10541         
 11543         
 10542                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
 11544                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
       
 11545                 
       
 11546                 if (IN_type_symbol == NULL)
       
 11547                   IN_type_symbol = last_type_symbol;
 10543                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11548                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10544                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
 11549                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
 10545                 function_type_prefix = return_type_symbol;
 11550                 function_type_prefix = return_type_symbol;
 10546                 break;
 11551                 break;
 10547                 
 11552                 
 10566             symbol_c *IN_param_value = &this->default_variable_name;
 11571             symbol_c *IN_param_value = &this->default_variable_name;
 10567         
 11572         
 10568             symbol_c *IN_type_symbol = param_data_type;
 11573             symbol_c *IN_type_symbol = param_data_type;
 10569             last_type_symbol = param_data_type;
 11574             last_type_symbol = param_data_type;
 10570             
 11575             
 10571             if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 11576             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 10572             {
 11577             {
 10573         
 11578         
 10574                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
 11579                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
       
 11580                 
       
 11581                 if (IN_type_symbol == NULL)
       
 11582                   IN_type_symbol = last_type_symbol;
 10575                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11583                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10576                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
 11584                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
 10577                 function_type_prefix = return_type_symbol;
 11585                 function_type_prefix = return_type_symbol;
 10578                 break;
 11586                 break;
 10579                 
 11587                 
 10598             symbol_c *IN_param_value = &this->default_variable_name;
 11606             symbol_c *IN_param_value = &this->default_variable_name;
 10599         
 11607         
 10600             symbol_c *IN_type_symbol = param_data_type;
 11608             symbol_c *IN_type_symbol = param_data_type;
 10601             last_type_symbol = param_data_type;
 11609             last_type_symbol = param_data_type;
 10602             
 11610             
 10603             if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 11611             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 10604             {
 11612             {
 10605         
 11613         
 10606                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
 11614                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
       
 11615                 
       
 11616                 if (IN_type_symbol == NULL)
       
 11617                   IN_type_symbol = last_type_symbol;
 10607                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11618                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10608                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
 11619                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
 10609                 function_type_prefix = return_type_symbol;
 11620                 function_type_prefix = return_type_symbol;
 10610                 break;
 11621                 break;
 10611                 
 11622                 
 10630             symbol_c *IN_param_value = &this->default_variable_name;
 11641             symbol_c *IN_param_value = &this->default_variable_name;
 10631         
 11642         
 10632             symbol_c *IN_type_symbol = param_data_type;
 11643             symbol_c *IN_type_symbol = param_data_type;
 10633             last_type_symbol = param_data_type;
 11644             last_type_symbol = param_data_type;
 10634             
 11645             
 10635             if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 11646             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 10636             {
 11647             {
 10637         
 11648         
 10638                 function_name = (symbol_c*)(new pragma_c("__time_to_string"));
 11649                 function_name = (symbol_c*)(new pragma_c("__time_to_string"));
       
 11650                 
       
 11651                 if (IN_type_symbol == NULL)
       
 11652                   IN_type_symbol = last_type_symbol;
 10639                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11653                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10640                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
 11654                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
 10641                 function_type_prefix = return_type_symbol;
 11655                 function_type_prefix = return_type_symbol;
 10642                 break;
 11656                 break;
 10643                 
 11657                 
 10662             symbol_c *IN_param_value = &this->default_variable_name;
 11676             symbol_c *IN_param_value = &this->default_variable_name;
 10663         
 11677         
 10664             symbol_c *IN_type_symbol = param_data_type;
 11678             symbol_c *IN_type_symbol = param_data_type;
 10665             last_type_symbol = param_data_type;
 11679             last_type_symbol = param_data_type;
 10666             
 11680             
 10667             if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 11681             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 10668             {
 11682             {
 10669         
 11683         
 10670                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
 11684                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
       
 11685                 
       
 11686                 if (IN_type_symbol == NULL)
       
 11687                   IN_type_symbol = last_type_symbol;
 10671                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11688                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10672                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
 11689                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
 10673                 function_type_prefix = return_type_symbol;
 11690                 function_type_prefix = return_type_symbol;
 10674                 break;
 11691                 break;
 10675                 
 11692                 
 10694             symbol_c *IN_param_value = &this->default_variable_name;
 11711             symbol_c *IN_param_value = &this->default_variable_name;
 10695         
 11712         
 10696             symbol_c *IN_type_symbol = param_data_type;
 11713             symbol_c *IN_type_symbol = param_data_type;
 10697             last_type_symbol = param_data_type;
 11714             last_type_symbol = param_data_type;
 10698             
 11715             
 10699             if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 11716             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 10700             {
 11717             {
 10701         
 11718         
 10702                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
 11719                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
       
 11720                 
       
 11721                 if (IN_type_symbol == NULL)
       
 11722                   IN_type_symbol = last_type_symbol;
 10703                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11723                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10704                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
 11724                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
 10705                 function_type_prefix = return_type_symbol;
 11725                 function_type_prefix = return_type_symbol;
 10706                 break;
 11726                 break;
 10707                 
 11727                 
 10726             symbol_c *IN_param_value = &this->default_variable_name;
 11746             symbol_c *IN_param_value = &this->default_variable_name;
 10727         
 11747         
 10728             symbol_c *IN_type_symbol = param_data_type;
 11748             symbol_c *IN_type_symbol = param_data_type;
 10729             last_type_symbol = param_data_type;
 11749             last_type_symbol = param_data_type;
 10730             
 11750             
 10731             if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 11751             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 10732             {
 11752             {
 10733         
 11753         
 10734                 function_name = (symbol_c*)(new pragma_c("__time_to_real"));
 11754                 function_name = (symbol_c*)(new pragma_c("__time_to_real"));
       
 11755                 
       
 11756                 if (IN_type_symbol == NULL)
       
 11757                   IN_type_symbol = last_type_symbol;
 10735                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11758                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10736                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
 11759                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
 10737                 function_type_prefix = return_type_symbol;
 11760                 function_type_prefix = return_type_symbol;
 10738                 break;
 11761                 break;
 10739                 
 11762                 
 10758             symbol_c *IN_param_value = &this->default_variable_name;
 11781             symbol_c *IN_param_value = &this->default_variable_name;
 10759         
 11782         
 10760             symbol_c *IN_type_symbol = param_data_type;
 11783             symbol_c *IN_type_symbol = param_data_type;
 10761             last_type_symbol = param_data_type;
 11784             last_type_symbol = param_data_type;
 10762             
 11785             
 10763             if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 11786             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 10764             {
 11787             {
 10765         
 11788         
 10766                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
 11789                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
       
 11790                 
       
 11791                 if (IN_type_symbol == NULL)
       
 11792                   IN_type_symbol = last_type_symbol;
 10767                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11793                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10768                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
 11794                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
 10769                 function_type_prefix = return_type_symbol;
 11795                 function_type_prefix = return_type_symbol;
 10770                 break;
 11796                 break;
 10771                 
 11797                 
 10790             symbol_c *IN_param_value = &this->default_variable_name;
 11816             symbol_c *IN_param_value = &this->default_variable_name;
 10791         
 11817         
 10792             symbol_c *IN_type_symbol = param_data_type;
 11818             symbol_c *IN_type_symbol = param_data_type;
 10793             last_type_symbol = param_data_type;
 11819             last_type_symbol = param_data_type;
 10794             
 11820             
 10795             if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 11821             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 10796             {
 11822             {
 10797         
 11823         
 10798                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
 11824                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
       
 11825                 
       
 11826                 if (IN_type_symbol == NULL)
       
 11827                   IN_type_symbol = last_type_symbol;
 10799                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11828                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10800                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
 11829                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
 10801                 function_type_prefix = return_type_symbol;
 11830                 function_type_prefix = return_type_symbol;
 10802                 break;
 11831                 break;
 10803                 
 11832                 
 10822             symbol_c *IN_param_value = &this->default_variable_name;
 11851             symbol_c *IN_param_value = &this->default_variable_name;
 10823         
 11852         
 10824             symbol_c *IN_type_symbol = param_data_type;
 11853             symbol_c *IN_type_symbol = param_data_type;
 10825             last_type_symbol = param_data_type;
 11854             last_type_symbol = param_data_type;
 10826             
 11855             
 10827             if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 11856             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 10828             {
 11857             {
 10829         
 11858         
 10830                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
 11859                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
       
 11860                 
       
 11861                 if (IN_type_symbol == NULL)
       
 11862                   IN_type_symbol = last_type_symbol;
 10831                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11863                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10832                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
 11864                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
 10833                 function_type_prefix = return_type_symbol;
 11865                 function_type_prefix = return_type_symbol;
 10834                 break;
 11866                 break;
 10835                 
 11867                 
 10854             symbol_c *IN_param_value = &this->default_variable_name;
 11886             symbol_c *IN_param_value = &this->default_variable_name;
 10855         
 11887         
 10856             symbol_c *IN_type_symbol = param_data_type;
 11888             symbol_c *IN_type_symbol = param_data_type;
 10857             last_type_symbol = param_data_type;
 11889             last_type_symbol = param_data_type;
 10858             
 11890             
 10859             if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 11891             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 10860             {
 11892             {
 10861         
 11893         
 10862                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
 11894                 function_name = (symbol_c*)(new pragma_c("__time_to_int"));
       
 11895                 
       
 11896                 if (IN_type_symbol == NULL)
       
 11897                   IN_type_symbol = last_type_symbol;
 10863                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11898                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10864                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
 11899                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
 10865                 function_type_prefix = return_type_symbol;
 11900                 function_type_prefix = return_type_symbol;
 10866                 break;
 11901                 break;
 10867                 
 11902                 
 10886             symbol_c *IN_param_value = &this->default_variable_name;
 11921             symbol_c *IN_param_value = &this->default_variable_name;
 10887         
 11922         
 10888             symbol_c *IN_type_symbol = param_data_type;
 11923             symbol_c *IN_type_symbol = param_data_type;
 10889             last_type_symbol = param_data_type;
 11924             last_type_symbol = param_data_type;
 10890             
 11925             
 10891             if(search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol))
 11926             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol))
 10892             {
 11927             {
 10893         
 11928         
       
 11929                 
       
 11930                 if (IN_type_symbol == NULL)
       
 11931                   IN_type_symbol = last_type_symbol;
 10894                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11932                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10895                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
 11933                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
 10896                 function_type_prefix = return_type_symbol;
 11934                 function_type_prefix = return_type_symbol;
 10897                 break;
 11935                 break;
 10898                 
 11936                 
 10917             symbol_c *IN_param_value = &this->default_variable_name;
 11955             symbol_c *IN_param_value = &this->default_variable_name;
 10918         
 11956         
 10919             symbol_c *IN_type_symbol = param_data_type;
 11957             symbol_c *IN_type_symbol = param_data_type;
 10920             last_type_symbol = param_data_type;
 11958             last_type_symbol = param_data_type;
 10921             
 11959             
 10922             if(search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol))
 11960             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol))
 10923             {
 11961             {
 10924         
 11962         
       
 11963                 
       
 11964                 if (IN_type_symbol == NULL)
       
 11965                   IN_type_symbol = last_type_symbol;
 10925                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11966                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10926                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
 11967                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
 10927                 function_type_prefix = return_type_symbol;
 11968                 function_type_prefix = return_type_symbol;
 10928                 break;
 11969                 break;
 10929                 
 11970                 
 10948             symbol_c *IN_param_value = &this->default_variable_name;
 11989             symbol_c *IN_param_value = &this->default_variable_name;
 10949         
 11990         
 10950             symbol_c *IN_type_symbol = param_data_type;
 11991             symbol_c *IN_type_symbol = param_data_type;
 10951             last_type_symbol = param_data_type;
 11992             last_type_symbol = param_data_type;
 10952             
 11993             
 10953             if(search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol))
 11994             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol))
 10954             {
 11995             {
 10955         
 11996         
       
 11997                 
       
 11998                 if (IN_type_symbol == NULL)
       
 11999                   IN_type_symbol = last_type_symbol;
 10956                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 12000                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10957                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
 12001                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
 10958                 function_type_prefix = return_type_symbol;
 12002                 function_type_prefix = return_type_symbol;
 10959                 break;
 12003                 break;
 10960                 
 12004                 
 10979             symbol_c *IN_param_value = &this->default_variable_name;
 12023             symbol_c *IN_param_value = &this->default_variable_name;
 10980         
 12024         
 10981             symbol_c *IN_type_symbol = param_data_type;
 12025             symbol_c *IN_type_symbol = param_data_type;
 10982             last_type_symbol = param_data_type;
 12026             last_type_symbol = param_data_type;
 10983             
 12027             
 10984             if(search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol))
 12028             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol))
 10985             {
 12029             {
 10986         
 12030         
       
 12031                 
       
 12032                 if (IN_type_symbol == NULL)
       
 12033                   IN_type_symbol = last_type_symbol;
 10987                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 12034                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 10988                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
 12035                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
 10989                 function_type_prefix = return_type_symbol;
 12036                 function_type_prefix = return_type_symbol;
 10990                 break;
 12037                 break;
 10991                 
 12038                 
 11010             symbol_c *IN_param_value = &this->default_variable_name;
 12057             symbol_c *IN_param_value = &this->default_variable_name;
 11011         
 12058         
 11012             symbol_c *IN_type_symbol = param_data_type;
 12059             symbol_c *IN_type_symbol = param_data_type;
 11013             last_type_symbol = param_data_type;
 12060             last_type_symbol = param_data_type;
 11014             
 12061             
 11015             if(search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol))
 12062             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol))
 11016             {
 12063             {
 11017         
 12064         
 11018                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
 12065                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
       
 12066                 
       
 12067                 if (IN_type_symbol == NULL)
       
 12068                   IN_type_symbol = last_type_symbol;
 11019                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 12069                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11020                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
 12070                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
 11021                 function_type_prefix = return_type_symbol;
 12071                 function_type_prefix = return_type_symbol;
 11022                 break;
 12072                 break;
 11023                 
 12073                 
 11042             symbol_c *IN_param_value = &this->default_variable_name;
 12092             symbol_c *IN_param_value = &this->default_variable_name;
 11043         
 12093         
 11044             symbol_c *IN_type_symbol = param_data_type;
 12094             symbol_c *IN_type_symbol = param_data_type;
 11045             last_type_symbol = param_data_type;
 12095             last_type_symbol = param_data_type;
 11046             
 12096             
 11047             if(search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol))
 12097             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol))
 11048             {
 12098             {
 11049         
 12099         
       
 12100                 
       
 12101                 if (IN_type_symbol == NULL)
       
 12102                   IN_type_symbol = last_type_symbol;
 11050                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 12103                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11051                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
 12104                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
 11052                 function_type_prefix = return_type_symbol;
 12105                 function_type_prefix = return_type_symbol;
 11053                 break;
 12106                 break;
 11054                 
 12107                 
 11073             symbol_c *IN_param_value = &this->default_variable_name;
 12126             symbol_c *IN_param_value = &this->default_variable_name;
 11074         
 12127         
 11075             symbol_c *IN_type_symbol = param_data_type;
 12128             symbol_c *IN_type_symbol = param_data_type;
 11076             last_type_symbol = param_data_type;
 12129             last_type_symbol = param_data_type;
 11077             
 12130             
 11078             if(search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol))
 12131             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol))
 11079             {
 12132             {
 11080         
 12133         
 11081                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
 12134                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
       
 12135                 
       
 12136                 if (IN_type_symbol == NULL)
       
 12137                   IN_type_symbol = last_type_symbol;
 11082                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 12138                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11083                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
 12139                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
 11084                 function_type_prefix = return_type_symbol;
 12140                 function_type_prefix = return_type_symbol;
 11085                 break;
 12141                 break;
 11086                 
 12142                 
 11105             symbol_c *IN_param_value = &this->default_variable_name;
 12161             symbol_c *IN_param_value = &this->default_variable_name;
 11106         
 12162         
 11107             symbol_c *IN_type_symbol = param_data_type;
 12163             symbol_c *IN_type_symbol = param_data_type;
 11108             last_type_symbol = param_data_type;
 12164             last_type_symbol = param_data_type;
 11109             
 12165             
 11110             if(search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol))
 12166             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol))
 11111             {
 12167             {
 11112         
 12168         
 11113                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
 12169                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
       
 12170                 
       
 12171                 if (IN_type_symbol == NULL)
       
 12172                   IN_type_symbol = last_type_symbol;
 11114                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 12173                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11115                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
 12174                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
 11116                 function_type_prefix = return_type_symbol;
 12175                 function_type_prefix = return_type_symbol;
 11117                 break;
 12176                 break;
 11118                 
 12177                 
 11137             symbol_c *IN_param_value = &this->default_variable_name;
 12196             symbol_c *IN_param_value = &this->default_variable_name;
 11138         
 12197         
 11139             symbol_c *IN_type_symbol = param_data_type;
 12198             symbol_c *IN_type_symbol = param_data_type;
 11140             last_type_symbol = param_data_type;
 12199             last_type_symbol = param_data_type;
 11141             
 12200             
 11142             if(search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol))
 12201             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol))
 11143             {
 12202             {
 11144         
 12203         
       
 12204                 
       
 12205                 if (IN_type_symbol == NULL)
       
 12206                   IN_type_symbol = last_type_symbol;
 11145                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 12207                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11146                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
 12208                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
 11147                 function_type_prefix = return_type_symbol;
 12209                 function_type_prefix = return_type_symbol;
 11148                 break;
 12210                 break;
 11149                 
 12211                 
 11168             symbol_c *IN_param_value = &this->default_variable_name;
 12230             symbol_c *IN_param_value = &this->default_variable_name;
 11169         
 12231         
 11170             symbol_c *IN_type_symbol = param_data_type;
 12232             symbol_c *IN_type_symbol = param_data_type;
 11171             last_type_symbol = param_data_type;
 12233             last_type_symbol = param_data_type;
 11172             
 12234             
 11173             if(search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol))
 12235             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol))
 11174             {
 12236             {
 11175         
 12237         
       
 12238                 
       
 12239                 if (IN_type_symbol == NULL)
       
 12240                   IN_type_symbol = last_type_symbol;
 11176                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 12241                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11177                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
 12242                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
 11178                 function_type_prefix = return_type_symbol;
 12243                 function_type_prefix = return_type_symbol;
 11179                 break;
 12244                 break;
 11180                 
 12245                 
 11199             symbol_c *IN_param_value = &this->default_variable_name;
 12264             symbol_c *IN_param_value = &this->default_variable_name;
 11200         
 12265         
 11201             symbol_c *IN_type_symbol = param_data_type;
 12266             symbol_c *IN_type_symbol = param_data_type;
 11202             last_type_symbol = param_data_type;
 12267             last_type_symbol = param_data_type;
 11203             
 12268             
 11204             if(search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol))
 12269             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol))
 11205             {
 12270             {
 11206         
 12271         
 11207                 function_name = (symbol_c*)(new pragma_c("__sint_to_string"));
 12272                 function_name = (symbol_c*)(new pragma_c("__sint_to_string"));
       
 12273                 
       
 12274                 if (IN_type_symbol == NULL)
       
 12275                   IN_type_symbol = last_type_symbol;
 11208                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 12276                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11209                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
 12277                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
 11210                 function_type_prefix = return_type_symbol;
 12278                 function_type_prefix = return_type_symbol;
 11211                 break;
 12279                 break;
 11212                 
 12280                 
 11231             symbol_c *IN_param_value = &this->default_variable_name;
 12299             symbol_c *IN_param_value = &this->default_variable_name;
 11232         
 12300         
 11233             symbol_c *IN_type_symbol = param_data_type;
 12301             symbol_c *IN_type_symbol = param_data_type;
 11234             last_type_symbol = param_data_type;
 12302             last_type_symbol = param_data_type;
 11235             
 12303             
 11236             if(search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol))
 12304             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol))
 11237             {
 12305             {
 11238         
 12306         
       
 12307                 
       
 12308                 if (IN_type_symbol == NULL)
       
 12309                   IN_type_symbol = last_type_symbol;
 11239                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 12310                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11240                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
 12311                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
 11241                 function_type_prefix = return_type_symbol;
 12312                 function_type_prefix = return_type_symbol;
 11242                 break;
 12313                 break;
 11243                 
 12314                 
 11262             symbol_c *IN_param_value = &this->default_variable_name;
 12333             symbol_c *IN_param_value = &this->default_variable_name;
 11263         
 12334         
 11264             symbol_c *IN_type_symbol = param_data_type;
 12335             symbol_c *IN_type_symbol = param_data_type;
 11265             last_type_symbol = param_data_type;
 12336             last_type_symbol = param_data_type;
 11266             
 12337             
 11267             if(search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol))
 12338             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol))
 11268             {
 12339             {
 11269         
 12340         
       
 12341                 
       
 12342                 if (IN_type_symbol == NULL)
       
 12343                   IN_type_symbol = last_type_symbol;
 11270                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 12344                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11271                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
 12345                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
 11272                 function_type_prefix = return_type_symbol;
 12346                 function_type_prefix = return_type_symbol;
 11273                 break;
 12347                 break;
 11274                 
 12348                 
 11293             symbol_c *IN_param_value = &this->default_variable_name;
 12367             symbol_c *IN_param_value = &this->default_variable_name;
 11294         
 12368         
 11295             symbol_c *IN_type_symbol = param_data_type;
 12369             symbol_c *IN_type_symbol = param_data_type;
 11296             last_type_symbol = param_data_type;
 12370             last_type_symbol = param_data_type;
 11297             
 12371             
 11298             if(search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol))
 12372             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol))
 11299             {
 12373             {
 11300         
 12374         
       
 12375                 
       
 12376                 if (IN_type_symbol == NULL)
       
 12377                   IN_type_symbol = last_type_symbol;
 11301                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 12378                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11302                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
 12379                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
 11303                 function_type_prefix = return_type_symbol;
 12380                 function_type_prefix = return_type_symbol;
 11304                 break;
 12381                 break;
 11305                 
 12382                 
 11324             symbol_c *IN_param_value = &this->default_variable_name;
 12401             symbol_c *IN_param_value = &this->default_variable_name;
 11325         
 12402         
 11326             symbol_c *IN_type_symbol = param_data_type;
 12403             symbol_c *IN_type_symbol = param_data_type;
 11327             last_type_symbol = param_data_type;
 12404             last_type_symbol = param_data_type;
 11328             
 12405             
 11329             if(search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol))
 12406             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol))
 11330             {
 12407             {
 11331         
 12408         
       
 12409                 
       
 12410                 if (IN_type_symbol == NULL)
       
 12411                   IN_type_symbol = last_type_symbol;
 11332                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 12412                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11333                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
 12413                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
 11334                 function_type_prefix = return_type_symbol;
 12414                 function_type_prefix = return_type_symbol;
 11335                 break;
 12415                 break;
 11336                 
 12416                 
 11355             symbol_c *IN_param_value = &this->default_variable_name;
 12435             symbol_c *IN_param_value = &this->default_variable_name;
 11356         
 12436         
 11357             symbol_c *IN_type_symbol = param_data_type;
 12437             symbol_c *IN_type_symbol = param_data_type;
 11358             last_type_symbol = param_data_type;
 12438             last_type_symbol = param_data_type;
 11359             
 12439             
 11360             if(search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol))
 12440             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol))
 11361             {
 12441             {
 11362         
 12442         
       
 12443                 
       
 12444                 if (IN_type_symbol == NULL)
       
 12445                   IN_type_symbol = last_type_symbol;
 11363                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 12446                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11364                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
 12447                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
 11365                 function_type_prefix = return_type_symbol;
 12448                 function_type_prefix = return_type_symbol;
 11366                 break;
 12449                 break;
 11367                 
 12450                 
 11386             symbol_c *IN_param_value = &this->default_variable_name;
 12469             symbol_c *IN_param_value = &this->default_variable_name;
 11387         
 12470         
 11388             symbol_c *IN_type_symbol = param_data_type;
 12471             symbol_c *IN_type_symbol = param_data_type;
 11389             last_type_symbol = param_data_type;
 12472             last_type_symbol = param_data_type;
 11390             
 12473             
 11391             if(search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol))
 12474             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol))
 11392             {
 12475             {
 11393         
 12476         
       
 12477                 
       
 12478                 if (IN_type_symbol == NULL)
       
 12479                   IN_type_symbol = last_type_symbol;
 11394                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 12480                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11395                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
 12481                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
 11396                 function_type_prefix = return_type_symbol;
 12482                 function_type_prefix = return_type_symbol;
 11397                 break;
 12483                 break;
 11398                 
 12484                 
 11417             symbol_c *IN_param_value = &this->default_variable_name;
 12503             symbol_c *IN_param_value = &this->default_variable_name;
 11418         
 12504         
 11419             symbol_c *IN_type_symbol = param_data_type;
 12505             symbol_c *IN_type_symbol = param_data_type;
 11420             last_type_symbol = param_data_type;
 12506             last_type_symbol = param_data_type;
 11421             
 12507             
 11422             if(search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol))
 12508             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol))
 11423             {
 12509             {
 11424         
 12510         
       
 12511                 
       
 12512                 if (IN_type_symbol == NULL)
       
 12513                   IN_type_symbol = last_type_symbol;
 11425                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 12514                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11426                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
 12515                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
 11427                 function_type_prefix = return_type_symbol;
 12516                 function_type_prefix = return_type_symbol;
 11428                 break;
 12517                 break;
 11429                 
 12518                 
 11448             symbol_c *IN_param_value = &this->default_variable_name;
 12537             symbol_c *IN_param_value = &this->default_variable_name;
 11449         
 12538         
 11450             symbol_c *IN_type_symbol = param_data_type;
 12539             symbol_c *IN_type_symbol = param_data_type;
 11451             last_type_symbol = param_data_type;
 12540             last_type_symbol = param_data_type;
 11452             
 12541             
 11453             if(search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol))
 12542             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol))
 11454             {
 12543             {
 11455         
 12544         
 11456                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
 12545                 function_name = (symbol_c*)(new pragma_c("__int_to_time"));
       
 12546                 
       
 12547                 if (IN_type_symbol == NULL)
       
 12548                   IN_type_symbol = last_type_symbol;
 11457                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 12549                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11458                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
 12550                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
 11459                 function_type_prefix = return_type_symbol;
 12551                 function_type_prefix = return_type_symbol;
 11460                 break;
 12552                 break;
 11461                 
 12553                 
 11480             symbol_c *IN_param_value = &this->default_variable_name;
 12572             symbol_c *IN_param_value = &this->default_variable_name;
 11481         
 12573         
 11482             symbol_c *IN_type_symbol = param_data_type;
 12574             symbol_c *IN_type_symbol = param_data_type;
 11483             last_type_symbol = param_data_type;
 12575             last_type_symbol = param_data_type;
 11484             
 12576             
 11485             if(search_expression_type->is_real_type(IN_type_symbol))
 12577             if(IN_type_symbol == NULL || search_expression_type->is_real_type(IN_type_symbol))
 11486             {
 12578             {
 11487         
 12579         
       
 12580                 
       
 12581                 if (IN_type_symbol == NULL)
       
 12582                   IN_type_symbol = last_type_symbol;
 11488                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 12583                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11489                 symbol_c * return_type_symbol = &search_constant_type_c::constant_int_type_name;
 12584                 symbol_c * return_type_symbol = &search_constant_type_c::constant_int_type_name;
 11490                 function_type_prefix = (symbol_c*)(new pragma_c("int"));
 12585                 function_type_prefix = (symbol_c*)(new pragma_c("int"));
 11491                 break;
 12586                 break;
 11492                 
 12587                 
 11511             symbol_c *IN_param_value = &this->default_variable_name;
 12606             symbol_c *IN_param_value = &this->default_variable_name;
 11512         
 12607         
 11513             symbol_c *IN_type_symbol = param_data_type;
 12608             symbol_c *IN_type_symbol = param_data_type;
 11514             last_type_symbol = param_data_type;
 12609             last_type_symbol = param_data_type;
 11515             
 12610             
 11516             if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
 12611             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
 11517             {
 12612             {
 11518         
 12613         
 11519                 function_name = (symbol_c*)(new pragma_c("__bcd_to_uint"));
 12614                 function_name = (symbol_c*)(new pragma_c("__bcd_to_uint"));
       
 12615                 
       
 12616                 if (IN_type_symbol == NULL)
       
 12617                   IN_type_symbol = last_type_symbol;
 11520                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 12618                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11521                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
 12619                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
 11522                 function_type_prefix = return_type_symbol;
 12620                 function_type_prefix = return_type_symbol;
 11523                 break;
 12621                 break;
 11524                 
 12622                 
 11543             symbol_c *IN_param_value = &this->default_variable_name;
 12641             symbol_c *IN_param_value = &this->default_variable_name;
 11544         
 12642         
 11545             symbol_c *IN_type_symbol = param_data_type;
 12643             symbol_c *IN_type_symbol = param_data_type;
 11546             last_type_symbol = param_data_type;
 12644             last_type_symbol = param_data_type;
 11547             
 12645             
 11548             if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
 12646             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
 11549             {
 12647             {
 11550         
 12648         
 11551                 function_name = (symbol_c*)(new pragma_c("__bcd_to_uint"));
 12649                 function_name = (symbol_c*)(new pragma_c("__bcd_to_uint"));
       
 12650                 
       
 12651                 if (IN_type_symbol == NULL)
       
 12652                   IN_type_symbol = last_type_symbol;
 11552                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 12653                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11553                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
 12654                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
 11554                 function_type_prefix = return_type_symbol;
 12655                 function_type_prefix = return_type_symbol;
 11555                 break;
 12656                 break;
 11556                 
 12657                 
 11575             symbol_c *IN_param_value = &this->default_variable_name;
 12676             symbol_c *IN_param_value = &this->default_variable_name;
 11576         
 12677         
 11577             symbol_c *IN_type_symbol = param_data_type;
 12678             symbol_c *IN_type_symbol = param_data_type;
 11578             last_type_symbol = param_data_type;
 12679             last_type_symbol = param_data_type;
 11579             
 12680             
 11580             if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
 12681             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
 11581             {
 12682             {
 11582         
 12683         
 11583                 function_name = (symbol_c*)(new pragma_c("__bcd_to_uint"));
 12684                 function_name = (symbol_c*)(new pragma_c("__bcd_to_uint"));
       
 12685                 
       
 12686                 if (IN_type_symbol == NULL)
       
 12687                   IN_type_symbol = last_type_symbol;
 11584                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 12688                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11585                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
 12689                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
 11586                 function_type_prefix = return_type_symbol;
 12690                 function_type_prefix = return_type_symbol;
 11587                 break;
 12691                 break;
 11588                 
 12692                 
 11607             symbol_c *IN_param_value = &this->default_variable_name;
 12711             symbol_c *IN_param_value = &this->default_variable_name;
 11608         
 12712         
 11609             symbol_c *IN_type_symbol = param_data_type;
 12713             symbol_c *IN_type_symbol = param_data_type;
 11610             last_type_symbol = param_data_type;
 12714             last_type_symbol = param_data_type;
 11611             
 12715             
 11612             if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
 12716             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
 11613             {
 12717             {
 11614         
 12718         
 11615                 function_name = (symbol_c*)(new pragma_c("__bcd_to_uint"));
 12719                 function_name = (symbol_c*)(new pragma_c("__bcd_to_uint"));
       
 12720                 
       
 12721                 if (IN_type_symbol == NULL)
       
 12722                   IN_type_symbol = last_type_symbol;
 11616                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 12723                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11617                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
 12724                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
 11618                 function_type_prefix = return_type_symbol;
 12725                 function_type_prefix = return_type_symbol;
 11619                 break;
 12726                 break;
 11620                 
 12727                 
 11639             symbol_c *IN_param_value = &this->default_variable_name;
 12746             symbol_c *IN_param_value = &this->default_variable_name;
 11640         
 12747         
 11641             symbol_c *IN_type_symbol = param_data_type;
 12748             symbol_c *IN_type_symbol = param_data_type;
 11642             last_type_symbol = param_data_type;
 12749             last_type_symbol = param_data_type;
 11643             
 12750             
 11644             if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
 12751             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
 11645             {
 12752             {
 11646         
 12753         
 11647                 function_name = (symbol_c*)(new pragma_c("__uint_to_bcd"));
 12754                 function_name = (symbol_c*)(new pragma_c("__uint_to_bcd"));
       
 12755                 
       
 12756                 if (IN_type_symbol == NULL)
       
 12757                   IN_type_symbol = last_type_symbol;
 11648                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 12758                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11649                 symbol_c * return_type_symbol = &search_constant_type_c::constant_int_type_name;
 12759                 symbol_c * return_type_symbol = &search_constant_type_c::constant_int_type_name;
 11650                 function_type_prefix = return_type_symbol;
 12760                 function_type_prefix = return_type_symbol;
 11651                 break;
 12761                 break;
 11652                 
 12762                 
 11671             symbol_c *IN_param_value = &this->default_variable_name;
 12781             symbol_c *IN_param_value = &this->default_variable_name;
 11672         
 12782         
 11673             symbol_c *IN_type_symbol = param_data_type;
 12783             symbol_c *IN_type_symbol = param_data_type;
 11674             last_type_symbol = param_data_type;
 12784             last_type_symbol = param_data_type;
 11675             
 12785             
 11676             if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
 12786             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
 11677             {
 12787             {
 11678         
 12788         
 11679                 function_name = (symbol_c*)(new pragma_c("__uint_to_bcd"));
 12789                 function_name = (symbol_c*)(new pragma_c("__uint_to_bcd"));
       
 12790                 
       
 12791                 if (IN_type_symbol == NULL)
       
 12792                   IN_type_symbol = last_type_symbol;
 11680                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 12793                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11681                 symbol_c * return_type_symbol = &search_constant_type_c::constant_int_type_name;
 12794                 symbol_c * return_type_symbol = &search_constant_type_c::constant_int_type_name;
 11682                 function_type_prefix = return_type_symbol;
 12795                 function_type_prefix = return_type_symbol;
 11683                 break;
 12796                 break;
 11684                 
 12797                 
 11703             symbol_c *IN_param_value = &this->default_variable_name;
 12816             symbol_c *IN_param_value = &this->default_variable_name;
 11704         
 12817         
 11705             symbol_c *IN_type_symbol = param_data_type;
 12818             symbol_c *IN_type_symbol = param_data_type;
 11706             last_type_symbol = param_data_type;
 12819             last_type_symbol = param_data_type;
 11707             
 12820             
 11708             if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
 12821             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
 11709             {
 12822             {
 11710         
 12823         
 11711                 function_name = (symbol_c*)(new pragma_c("__uint_to_bcd"));
 12824                 function_name = (symbol_c*)(new pragma_c("__uint_to_bcd"));
       
 12825                 
       
 12826                 if (IN_type_symbol == NULL)
       
 12827                   IN_type_symbol = last_type_symbol;
 11712                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 12828                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11713                 symbol_c * return_type_symbol = &search_constant_type_c::constant_int_type_name;
 12829                 symbol_c * return_type_symbol = &search_constant_type_c::constant_int_type_name;
 11714                 function_type_prefix = return_type_symbol;
 12830                 function_type_prefix = return_type_symbol;
 11715                 break;
 12831                 break;
 11716                 
 12832                 
 11735             symbol_c *IN_param_value = &this->default_variable_name;
 12851             symbol_c *IN_param_value = &this->default_variable_name;
 11736         
 12852         
 11737             symbol_c *IN_type_symbol = param_data_type;
 12853             symbol_c *IN_type_symbol = param_data_type;
 11738             last_type_symbol = param_data_type;
 12854             last_type_symbol = param_data_type;
 11739             
 12855             
 11740             if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
 12856             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
 11741             {
 12857             {
 11742         
 12858         
 11743                 function_name = (symbol_c*)(new pragma_c("__uint_to_bcd"));
 12859                 function_name = (symbol_c*)(new pragma_c("__uint_to_bcd"));
       
 12860                 
       
 12861                 if (IN_type_symbol == NULL)
       
 12862                   IN_type_symbol = last_type_symbol;
 11744                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 12863                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11745                 symbol_c * return_type_symbol = &search_constant_type_c::constant_int_type_name;
 12864                 symbol_c * return_type_symbol = &search_constant_type_c::constant_int_type_name;
 11746                 function_type_prefix = return_type_symbol;
 12865                 function_type_prefix = return_type_symbol;
 11747                 break;
 12866                 break;
 11748                 
 12867                 
 11767             symbol_c *IN_param_value = &this->default_variable_name;
 12886             symbol_c *IN_param_value = &this->default_variable_name;
 11768         
 12887         
 11769             symbol_c *IN_type_symbol = param_data_type;
 12888             symbol_c *IN_type_symbol = param_data_type;
 11770             last_type_symbol = param_data_type;
 12889             last_type_symbol = param_data_type;
 11771             
 12890             
 11772             if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
 12891             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
 11773             {
 12892             {
 11774         
 12893         
 11775                 function_name = (symbol_c*)(new pragma_c("__date_and_time_to_time_of_day"));
 12894                 function_name = (symbol_c*)(new pragma_c("__date_and_time_to_time_of_day"));
       
 12895                 
       
 12896                 if (IN_type_symbol == NULL)
       
 12897                   IN_type_symbol = last_type_symbol;
 11776                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 12898                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11777                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
 12899                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
 11778                 break;
 12900                 break;
 11779                 
 12901                 
 11780             }
 12902             }
 11798             symbol_c *IN_param_value = &this->default_variable_name;
 12920             symbol_c *IN_param_value = &this->default_variable_name;
 11799         
 12921         
 11800             symbol_c *IN_type_symbol = param_data_type;
 12922             symbol_c *IN_type_symbol = param_data_type;
 11801             last_type_symbol = param_data_type;
 12923             last_type_symbol = param_data_type;
 11802             
 12924             
 11803             if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
 12925             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
 11804             {
 12926             {
 11805         
 12927         
 11806                 function_name = (symbol_c*)(new pragma_c("__date_and_time_to_date"));
 12928                 function_name = (symbol_c*)(new pragma_c("__date_and_time_to_date"));
       
 12929                 
       
 12930                 if (IN_type_symbol == NULL)
       
 12931                   IN_type_symbol = last_type_symbol;
 11807                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 12932                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11808                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
 12933                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
 11809                 break;
 12934                 break;
 11810                 
 12935                 
 11811             }
 12936             }
 11829             symbol_c *IN_param_value = &this->default_variable_name;
 12954             symbol_c *IN_param_value = &this->default_variable_name;
 11830         
 12955         
 11831             symbol_c *IN_type_symbol = param_data_type;
 12956             symbol_c *IN_type_symbol = param_data_type;
 11832             last_type_symbol = param_data_type;
 12957             last_type_symbol = param_data_type;
 11833             
 12958             
 11834             if(search_expression_type->is_num_type(IN_type_symbol))
 12959             if(IN_type_symbol == NULL || search_expression_type->is_num_type(IN_type_symbol))
 11835             {
 12960             {
 11836         
 12961         
 11837                 function_name = (symbol_c*)(new pragma_c("__abs_"));
 12962                 function_name = (symbol_c*)(new pragma_c("__abs_"));
       
 12963                 
       
 12964                 if (IN_type_symbol == NULL)
       
 12965                   IN_type_symbol = last_type_symbol;
 11838                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 12966                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11839                 symbol_c * return_type_symbol = IN_type_symbol;
 12967                 symbol_c * return_type_symbol = IN_type_symbol;
 11840                 function_type_suffix = IN_type_symbol;
 12968                 function_type_suffix = IN_type_symbol;
 11841                 break;
 12969                 break;
 11842                 
 12970                 
 11861             symbol_c *IN_param_value = &this->default_variable_name;
 12989             symbol_c *IN_param_value = &this->default_variable_name;
 11862         
 12990         
 11863             symbol_c *IN_type_symbol = param_data_type;
 12991             symbol_c *IN_type_symbol = param_data_type;
 11864             last_type_symbol = param_data_type;
 12992             last_type_symbol = param_data_type;
 11865             
 12993             
 11866             if(search_expression_type->is_real_type(IN_type_symbol))
 12994             if(IN_type_symbol == NULL || search_expression_type->is_real_type(IN_type_symbol))
 11867             {
 12995             {
 11868         
 12996         
 11869                 function_name = (symbol_c*)(new pragma_c("__sqrt_"));
 12997                 function_name = (symbol_c*)(new pragma_c("__sqrt_"));
       
 12998                 
       
 12999                 if (IN_type_symbol == NULL)
       
 13000                   IN_type_symbol = last_type_symbol;
 11870                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 13001                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11871                 symbol_c * return_type_symbol = IN_type_symbol;
 13002                 symbol_c * return_type_symbol = IN_type_symbol;
 11872                 function_type_suffix = IN_type_symbol;
 13003                 function_type_suffix = IN_type_symbol;
 11873                 break;
 13004                 break;
 11874                 
 13005                 
 11893             symbol_c *IN_param_value = &this->default_variable_name;
 13024             symbol_c *IN_param_value = &this->default_variable_name;
 11894         
 13025         
 11895             symbol_c *IN_type_symbol = param_data_type;
 13026             symbol_c *IN_type_symbol = param_data_type;
 11896             last_type_symbol = param_data_type;
 13027             last_type_symbol = param_data_type;
 11897             
 13028             
 11898             if(search_expression_type->is_real_type(IN_type_symbol))
 13029             if(IN_type_symbol == NULL || search_expression_type->is_real_type(IN_type_symbol))
 11899             {
 13030             {
 11900         
 13031         
 11901                 function_name = (symbol_c*)(new pragma_c("__ln_"));
 13032                 function_name = (symbol_c*)(new pragma_c("__ln_"));
       
 13033                 
       
 13034                 if (IN_type_symbol == NULL)
       
 13035                   IN_type_symbol = last_type_symbol;
 11902                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 13036                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11903                 symbol_c * return_type_symbol = IN_type_symbol;
 13037                 symbol_c * return_type_symbol = IN_type_symbol;
 11904                 function_type_suffix = IN_type_symbol;
 13038                 function_type_suffix = IN_type_symbol;
 11905                 break;
 13039                 break;
 11906                 
 13040                 
 11925             symbol_c *IN_param_value = &this->default_variable_name;
 13059             symbol_c *IN_param_value = &this->default_variable_name;
 11926         
 13060         
 11927             symbol_c *IN_type_symbol = param_data_type;
 13061             symbol_c *IN_type_symbol = param_data_type;
 11928             last_type_symbol = param_data_type;
 13062             last_type_symbol = param_data_type;
 11929             
 13063             
 11930             if(search_expression_type->is_real_type(IN_type_symbol))
 13064             if(IN_type_symbol == NULL || search_expression_type->is_real_type(IN_type_symbol))
 11931             {
 13065             {
 11932         
 13066         
 11933                 function_name = (symbol_c*)(new pragma_c("__log_"));
 13067                 function_name = (symbol_c*)(new pragma_c("__log_"));
       
 13068                 
       
 13069                 if (IN_type_symbol == NULL)
       
 13070                   IN_type_symbol = last_type_symbol;
 11934                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 13071                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11935                 symbol_c * return_type_symbol = IN_type_symbol;
 13072                 symbol_c * return_type_symbol = IN_type_symbol;
 11936                 function_type_suffix = IN_type_symbol;
 13073                 function_type_suffix = IN_type_symbol;
 11937                 break;
 13074                 break;
 11938                 
 13075                 
 11957             symbol_c *IN_param_value = &this->default_variable_name;
 13094             symbol_c *IN_param_value = &this->default_variable_name;
 11958         
 13095         
 11959             symbol_c *IN_type_symbol = param_data_type;
 13096             symbol_c *IN_type_symbol = param_data_type;
 11960             last_type_symbol = param_data_type;
 13097             last_type_symbol = param_data_type;
 11961             
 13098             
 11962             if(search_expression_type->is_real_type(IN_type_symbol))
 13099             if(IN_type_symbol == NULL || search_expression_type->is_real_type(IN_type_symbol))
 11963             {
 13100             {
 11964         
 13101         
 11965                 function_name = (symbol_c*)(new pragma_c("__exp_"));
 13102                 function_name = (symbol_c*)(new pragma_c("__exp_"));
       
 13103                 
       
 13104                 if (IN_type_symbol == NULL)
       
 13105                   IN_type_symbol = last_type_symbol;
 11966                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 13106                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11967                 symbol_c * return_type_symbol = IN_type_symbol;
 13107                 symbol_c * return_type_symbol = IN_type_symbol;
 11968                 function_type_suffix = IN_type_symbol;
 13108                 function_type_suffix = IN_type_symbol;
 11969                 break;
 13109                 break;
 11970                 
 13110                 
 11989             symbol_c *IN_param_value = &this->default_variable_name;
 13129             symbol_c *IN_param_value = &this->default_variable_name;
 11990         
 13130         
 11991             symbol_c *IN_type_symbol = param_data_type;
 13131             symbol_c *IN_type_symbol = param_data_type;
 11992             last_type_symbol = param_data_type;
 13132             last_type_symbol = param_data_type;
 11993             
 13133             
 11994             if(search_expression_type->is_real_type(IN_type_symbol))
 13134             if(IN_type_symbol == NULL || search_expression_type->is_real_type(IN_type_symbol))
 11995             {
 13135             {
 11996         
 13136         
 11997                 function_name = (symbol_c*)(new pragma_c("__sin_"));
 13137                 function_name = (symbol_c*)(new pragma_c("__sin_"));
       
 13138                 
       
 13139                 if (IN_type_symbol == NULL)
       
 13140                   IN_type_symbol = last_type_symbol;
 11998                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 13141                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 11999                 symbol_c * return_type_symbol = IN_type_symbol;
 13142                 symbol_c * return_type_symbol = IN_type_symbol;
 12000                 function_type_suffix = IN_type_symbol;
 13143                 function_type_suffix = IN_type_symbol;
 12001                 break;
 13144                 break;
 12002                 
 13145                 
 12021             symbol_c *IN_param_value = &this->default_variable_name;
 13164             symbol_c *IN_param_value = &this->default_variable_name;
 12022         
 13165         
 12023             symbol_c *IN_type_symbol = param_data_type;
 13166             symbol_c *IN_type_symbol = param_data_type;
 12024             last_type_symbol = param_data_type;
 13167             last_type_symbol = param_data_type;
 12025             
 13168             
 12026             if(search_expression_type->is_real_type(IN_type_symbol))
 13169             if(IN_type_symbol == NULL || search_expression_type->is_real_type(IN_type_symbol))
 12027             {
 13170             {
 12028         
 13171         
 12029                 function_name = (symbol_c*)(new pragma_c("__cos_"));
 13172                 function_name = (symbol_c*)(new pragma_c("__cos_"));
       
 13173                 
       
 13174                 if (IN_type_symbol == NULL)
       
 13175                   IN_type_symbol = last_type_symbol;
 12030                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 13176                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 12031                 symbol_c * return_type_symbol = IN_type_symbol;
 13177                 symbol_c * return_type_symbol = IN_type_symbol;
 12032                 function_type_suffix = IN_type_symbol;
 13178                 function_type_suffix = IN_type_symbol;
 12033                 break;
 13179                 break;
 12034                 
 13180                 
 12053             symbol_c *IN_param_value = &this->default_variable_name;
 13199             symbol_c *IN_param_value = &this->default_variable_name;
 12054         
 13200         
 12055             symbol_c *IN_type_symbol = param_data_type;
 13201             symbol_c *IN_type_symbol = param_data_type;
 12056             last_type_symbol = param_data_type;
 13202             last_type_symbol = param_data_type;
 12057             
 13203             
 12058             if(search_expression_type->is_real_type(IN_type_symbol))
 13204             if(IN_type_symbol == NULL || search_expression_type->is_real_type(IN_type_symbol))
 12059             {
 13205             {
 12060         
 13206         
 12061                 function_name = (symbol_c*)(new pragma_c("__tan_"));
 13207                 function_name = (symbol_c*)(new pragma_c("__tan_"));
       
 13208                 
       
 13209                 if (IN_type_symbol == NULL)
       
 13210                   IN_type_symbol = last_type_symbol;
 12062                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 13211                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 12063                 symbol_c * return_type_symbol = IN_type_symbol;
 13212                 symbol_c * return_type_symbol = IN_type_symbol;
 12064                 function_type_suffix = IN_type_symbol;
 13213                 function_type_suffix = IN_type_symbol;
 12065                 break;
 13214                 break;
 12066                 
 13215                 
 12085             symbol_c *IN_param_value = &this->default_variable_name;
 13234             symbol_c *IN_param_value = &this->default_variable_name;
 12086         
 13235         
 12087             symbol_c *IN_type_symbol = param_data_type;
 13236             symbol_c *IN_type_symbol = param_data_type;
 12088             last_type_symbol = param_data_type;
 13237             last_type_symbol = param_data_type;
 12089             
 13238             
 12090             if(search_expression_type->is_real_type(IN_type_symbol))
 13239             if(IN_type_symbol == NULL || search_expression_type->is_real_type(IN_type_symbol))
 12091             {
 13240             {
 12092         
 13241         
 12093                 function_name = (symbol_c*)(new pragma_c("__asin_"));
 13242                 function_name = (symbol_c*)(new pragma_c("__asin_"));
       
 13243                 
       
 13244                 if (IN_type_symbol == NULL)
       
 13245                   IN_type_symbol = last_type_symbol;
 12094                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 13246                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 12095                 symbol_c * return_type_symbol = IN_type_symbol;
 13247                 symbol_c * return_type_symbol = IN_type_symbol;
 12096                 function_type_suffix = IN_type_symbol;
 13248                 function_type_suffix = IN_type_symbol;
 12097                 break;
 13249                 break;
 12098                 
 13250                 
 12117             symbol_c *IN_param_value = &this->default_variable_name;
 13269             symbol_c *IN_param_value = &this->default_variable_name;
 12118         
 13270         
 12119             symbol_c *IN_type_symbol = param_data_type;
 13271             symbol_c *IN_type_symbol = param_data_type;
 12120             last_type_symbol = param_data_type;
 13272             last_type_symbol = param_data_type;
 12121             
 13273             
 12122             if(search_expression_type->is_real_type(IN_type_symbol))
 13274             if(IN_type_symbol == NULL || search_expression_type->is_real_type(IN_type_symbol))
 12123             {
 13275             {
 12124         
 13276         
 12125                 function_name = (symbol_c*)(new pragma_c("__acos_"));
 13277                 function_name = (symbol_c*)(new pragma_c("__acos_"));
       
 13278                 
       
 13279                 if (IN_type_symbol == NULL)
       
 13280                   IN_type_symbol = last_type_symbol;
 12126                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 13281                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 12127                 symbol_c * return_type_symbol = IN_type_symbol;
 13282                 symbol_c * return_type_symbol = IN_type_symbol;
 12128                 function_type_suffix = IN_type_symbol;
 13283                 function_type_suffix = IN_type_symbol;
 12129                 break;
 13284                 break;
 12130                 
 13285                 
 12149             symbol_c *IN_param_value = &this->default_variable_name;
 13304             symbol_c *IN_param_value = &this->default_variable_name;
 12150         
 13305         
 12151             symbol_c *IN_type_symbol = param_data_type;
 13306             symbol_c *IN_type_symbol = param_data_type;
 12152             last_type_symbol = param_data_type;
 13307             last_type_symbol = param_data_type;
 12153             
 13308             
 12154             if(search_expression_type->is_real_type(IN_type_symbol))
 13309             if(IN_type_symbol == NULL || search_expression_type->is_real_type(IN_type_symbol))
 12155             {
 13310             {
 12156         
 13311         
 12157                 function_name = (symbol_c*)(new pragma_c("__atan_"));
 13312                 function_name = (symbol_c*)(new pragma_c("__atan_"));
       
 13313                 
       
 13314                 if (IN_type_symbol == NULL)
       
 13315                   IN_type_symbol = last_type_symbol;
 12158                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 13316                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 12159                 symbol_c * return_type_symbol = IN_type_symbol;
 13317                 symbol_c * return_type_symbol = IN_type_symbol;
 12160                 function_type_suffix = IN_type_symbol;
 13318                 function_type_suffix = IN_type_symbol;
 12161                 break;
 13319                 break;
 12162                 
 13320                 
 12181             symbol_c *IN1_param_value = &this->default_variable_name;
 13339             symbol_c *IN1_param_value = &this->default_variable_name;
 12182         
 13340         
 12183             symbol_c *IN1_type_symbol = param_data_type;
 13341             symbol_c *IN1_type_symbol = param_data_type;
 12184             last_type_symbol = param_data_type;
 13342             last_type_symbol = param_data_type;
 12185             
 13343             
 12186             if(search_expression_type->is_num_type(IN1_type_symbol))
 13344             if(IN1_type_symbol == NULL || search_expression_type->is_num_type(IN1_type_symbol))
 12187             {
 13345             {
 12188         
 13346         
 12189                 {
 13347                 {
 12190                     identifier_c param_name("IN2");
 13348                     identifier_c param_name("IN2");
 12191                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 13349                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 12192                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
 13350                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
       
 13351                     symbol_c *IN2_type_symbol = NULL;
 12193                     
 13352                     
 12194                     /* Get the value from a foo(<param_value>) style call */
 13353                     /* Get the value from a foo(<param_value>) style call */
 12195                     if (IN2_param_value == NULL)
 13354                     if (IN2_param_value == NULL)
 12196                       IN2_param_value = function_call_param_iterator.next();
 13355                       IN2_param_value = function_call_param_iterator.next();
 12197                     symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 13356                     if (IN2_param_value != NULL) {
 12198                     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 ;
 13357                       IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 12199                     
 13358                       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 ;
 12200                     if(search_expression_type->is_num_type(IN2_type_symbol))
 13359                     }
       
 13360                     
       
 13361                     if(IN2_type_symbol == NULL || search_expression_type->is_num_type(IN2_type_symbol))
 12201                     {
 13362                     {
 12202                 
 13363                 
 12203                         function_name = (symbol_c*)(new pragma_c("__add_"));
 13364                         function_name = (symbol_c*)(new pragma_c("__add_"));
 12204                         
 13365                         
       
 13366                         if (nb_param < 2)
       
 13367                           nb_param = 2;
 12205                         char* nb_param_str = new char[10];
 13368                         char* nb_param_str = new char[10];
 12206                         sprintf(nb_param_str, "%d", nb_param);
 13369                         sprintf(nb_param_str, "%d", nb_param);
 12207                         ADD_PARAM_LIST((symbol_c*)(new integer_c((const char *)nb_param_str)), (symbol_c*)(new int_type_name_c()), function_param_iterator_c::direction_in)
 13370                         ADD_PARAM_LIST((symbol_c*)(new integer_c((const char *)nb_param_str)), (symbol_c*)(new int_type_name_c()), function_param_iterator_c::direction_in)
       
 13371                         
       
 13372                         if (IN1_type_symbol == NULL)
       
 13373                           IN1_type_symbol = last_type_symbol;
 12208                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
 13374                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
       
 13375                         
       
 13376                         if (IN2_type_symbol == NULL)
       
 13377                           IN2_type_symbol = last_type_symbol;
 12209                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 13378                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 12210                         
 13379                         
 12211                         int base_num = 3;
 13380                         int base_num = 3;
 12212                         symbol_c *param_value = NULL;
 13381                         symbol_c *param_value = NULL;
 12213                         do{
 13382                         do{
 12240                     ERROR;
 13409                     ERROR;
 12241                 }
 13410                 }
 12242                 
 13411                 
 12243             }
 13412             }
 12244             
 13413             
 12245             if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
 13414             if(IN1_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
 12246             {
 13415             {
 12247         
 13416         
 12248                 {
 13417                 {
 12249                     identifier_c param_name("IN2");
 13418                     identifier_c param_name("IN2");
 12250                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 13419                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 12251                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
 13420                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
       
 13421                     symbol_c *IN2_type_symbol = NULL;
 12252                     
 13422                     
 12253                     /* Get the value from a foo(<param_value>) style call */
 13423                     /* Get the value from a foo(<param_value>) style call */
 12254                     if (IN2_param_value == NULL)
 13424                     if (IN2_param_value == NULL)
 12255                       IN2_param_value = function_call_param_iterator.next();
 13425                       IN2_param_value = function_call_param_iterator.next();
 12256                     symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 13426                     if (IN2_param_value != NULL) {
 12257                     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 ;
 13427                       IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 12258                     
 13428                       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 ;
 12259                     if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 13429                     }
       
 13430                     
       
 13431                     if(IN2_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 12260                     {
 13432                     {
 12261                 
 13433                 
 12262                         function_name = (symbol_c*)(new pragma_c("__time_add"));
 13434                         function_name = (symbol_c*)(new pragma_c("__time_add"));
       
 13435                         
       
 13436                         if (IN1_type_symbol == NULL)
       
 13437                           IN1_type_symbol = last_type_symbol;
 12263                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
 13438                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
       
 13439                         
       
 13440                         if (IN2_type_symbol == NULL)
       
 13441                           IN2_type_symbol = last_type_symbol;
 12264                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 13442                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 12265                         symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
 13443                         symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
 12266                         break;
 13444                         break;
 12267                         
 13445                         
 12268                     }
 13446                     }
 12271                     ERROR;
 13449                     ERROR;
 12272                 }
 13450                 }
 12273                 
 13451                 
 12274             }
 13452             }
 12275             
 13453             
 12276             if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol))
 13454             if(IN1_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol))
 12277             {
 13455             {
 12278         
 13456         
 12279                 {
 13457                 {
 12280                     identifier_c param_name("IN2");
 13458                     identifier_c param_name("IN2");
 12281                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 13459                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 12282                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
 13460                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
       
 13461                     symbol_c *IN2_type_symbol = NULL;
 12283                     
 13462                     
 12284                     /* Get the value from a foo(<param_value>) style call */
 13463                     /* Get the value from a foo(<param_value>) style call */
 12285                     if (IN2_param_value == NULL)
 13464                     if (IN2_param_value == NULL)
 12286                       IN2_param_value = function_call_param_iterator.next();
 13465                       IN2_param_value = function_call_param_iterator.next();
 12287                     symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 13466                     if (IN2_param_value != NULL) {
 12288                     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 ;
 13467                       IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 12289                     
 13468                       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 ;
 12290                     if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 13469                     }
       
 13470                     
       
 13471                     if(IN2_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 12291                     {
 13472                     {
 12292                 
 13473                 
 12293                         function_name = (symbol_c*)(new pragma_c("__time_add"));
 13474                         function_name = (symbol_c*)(new pragma_c("__time_add"));
       
 13475                         
       
 13476                         if (IN1_type_symbol == NULL)
       
 13477                           IN1_type_symbol = last_type_symbol;
 12294                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
 13478                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
       
 13479                         
       
 13480                         if (IN2_type_symbol == NULL)
       
 13481                           IN2_type_symbol = last_type_symbol;
 12295                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 13482                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 12296                         symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
 13483                         symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
 12297                         break;
 13484                         break;
 12298                         
 13485                         
 12299                     }
 13486                     }
 12302                     ERROR;
 13489                     ERROR;
 12303                 }
 13490                 }
 12304                 
 13491                 
 12305             }
 13492             }
 12306             
 13493             
 12307             if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 13494             if(IN1_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 12308             {
 13495             {
 12309         
 13496         
 12310                 {
 13497                 {
 12311                     identifier_c param_name("IN2");
 13498                     identifier_c param_name("IN2");
 12312                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 13499                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 12313                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
 13500                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
       
 13501                     symbol_c *IN2_type_symbol = NULL;
 12314                     
 13502                     
 12315                     /* Get the value from a foo(<param_value>) style call */
 13503                     /* Get the value from a foo(<param_value>) style call */
 12316                     if (IN2_param_value == NULL)
 13504                     if (IN2_param_value == NULL)
 12317                       IN2_param_value = function_call_param_iterator.next();
 13505                       IN2_param_value = function_call_param_iterator.next();
 12318                     symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 13506                     if (IN2_param_value != NULL) {
 12319                     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 ;
 13507                       IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 12320                     
 13508                       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 ;
 12321                     if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 13509                     }
       
 13510                     
       
 13511                     if(IN2_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 12322                     {
 13512                     {
 12323                 
 13513                 
 12324                         function_name = (symbol_c*)(new pragma_c("__time_add"));
 13514                         function_name = (symbol_c*)(new pragma_c("__time_add"));
       
 13515                         
       
 13516                         if (IN1_type_symbol == NULL)
       
 13517                           IN1_type_symbol = last_type_symbol;
 12325                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
 13518                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
       
 13519                         
       
 13520                         if (IN2_type_symbol == NULL)
       
 13521                           IN2_type_symbol = last_type_symbol;
 12326                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 13522                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 12327                         symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
 13523                         symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
 12328                         break;
 13524                         break;
 12329                         
 13525                         
 12330                     }
 13526                     }
 12354             symbol_c *IN1_param_value = &this->default_variable_name;
 13550             symbol_c *IN1_param_value = &this->default_variable_name;
 12355         
 13551         
 12356             symbol_c *IN1_type_symbol = param_data_type;
 13552             symbol_c *IN1_type_symbol = param_data_type;
 12357             last_type_symbol = param_data_type;
 13553             last_type_symbol = param_data_type;
 12358             
 13554             
 12359             if(search_expression_type->is_num_type(IN1_type_symbol))
 13555             if(IN1_type_symbol == NULL || search_expression_type->is_num_type(IN1_type_symbol))
 12360             {
 13556             {
 12361         
 13557         
 12362                 {
 13558                 {
 12363                     identifier_c param_name("IN2");
 13559                     identifier_c param_name("IN2");
 12364                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 13560                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 12365                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
 13561                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
       
 13562                     symbol_c *IN2_type_symbol = NULL;
 12366                     
 13563                     
 12367                     /* Get the value from a foo(<param_value>) style call */
 13564                     /* Get the value from a foo(<param_value>) style call */
 12368                     if (IN2_param_value == NULL)
 13565                     if (IN2_param_value == NULL)
 12369                       IN2_param_value = function_call_param_iterator.next();
 13566                       IN2_param_value = function_call_param_iterator.next();
 12370                     symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 13567                     if (IN2_param_value != NULL) {
 12371                     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 ;
 13568                       IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 12372                     
 13569                       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 ;
 12373                     if(search_expression_type->is_num_type(IN2_type_symbol))
 13570                     }
       
 13571                     
       
 13572                     if(IN2_type_symbol == NULL || search_expression_type->is_num_type(IN2_type_symbol))
 12374                     {
 13573                     {
 12375                 
 13574                 
 12376                         function_name = (symbol_c*)(new pragma_c("__mul_"));
 13575                         function_name = (symbol_c*)(new pragma_c("__mul_"));
 12377                         
 13576                         
       
 13577                         if (nb_param < 2)
       
 13578                           nb_param = 2;
 12378                         char* nb_param_str = new char[10];
 13579                         char* nb_param_str = new char[10];
 12379                         sprintf(nb_param_str, "%d", nb_param);
 13580                         sprintf(nb_param_str, "%d", nb_param);
 12380                         ADD_PARAM_LIST((symbol_c*)(new integer_c((const char *)nb_param_str)), (symbol_c*)(new int_type_name_c()), function_param_iterator_c::direction_in)
 13581                         ADD_PARAM_LIST((symbol_c*)(new integer_c((const char *)nb_param_str)), (symbol_c*)(new int_type_name_c()), function_param_iterator_c::direction_in)
       
 13582                         
       
 13583                         if (IN1_type_symbol == NULL)
       
 13584                           IN1_type_symbol = last_type_symbol;
 12381                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
 13585                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
       
 13586                         
       
 13587                         if (IN2_type_symbol == NULL)
       
 13588                           IN2_type_symbol = last_type_symbol;
 12382                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 13589                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 12383                         
 13590                         
 12384                         int base_num = 3;
 13591                         int base_num = 3;
 12385                         symbol_c *param_value = NULL;
 13592                         symbol_c *param_value = NULL;
 12386                         do{
 13593                         do{
 12413                     ERROR;
 13620                     ERROR;
 12414                 }
 13621                 }
 12415                 
 13622                 
 12416             }
 13623             }
 12417             
 13624             
 12418             if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 13625             if(IN1_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 12419             {
 13626             {
 12420         
 13627         
 12421                 {
 13628                 {
 12422                     identifier_c param_name("IN2");
 13629                     identifier_c param_name("IN2");
 12423                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 13630                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 12424                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
 13631                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
       
 13632                     symbol_c *IN2_type_symbol = NULL;
 12425                     
 13633                     
 12426                     /* Get the value from a foo(<param_value>) style call */
 13634                     /* Get the value from a foo(<param_value>) style call */
 12427                     if (IN2_param_value == NULL)
 13635                     if (IN2_param_value == NULL)
 12428                       IN2_param_value = function_call_param_iterator.next();
 13636                       IN2_param_value = function_call_param_iterator.next();
 12429                     symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 13637                     if (IN2_param_value != NULL) {
 12430                     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 ;
 13638                       IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 12431                     
 13639                       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 ;
 12432                     if(search_expression_type->is_num_type(IN2_type_symbol))
 13640                     }
       
 13641                     
       
 13642                     if(IN2_type_symbol == NULL || search_expression_type->is_num_type(IN2_type_symbol))
 12433                     {
 13643                     {
 12434                 
 13644                 
 12435                         function_name = (symbol_c*)(new pragma_c("__time_mul"));
 13645                         function_name = (symbol_c*)(new pragma_c("__time_mul"));
       
 13646                         
       
 13647                         if (IN1_type_symbol == NULL)
       
 13648                           IN1_type_symbol = last_type_symbol;
 12436                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
 13649                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
       
 13650                         
       
 13651                         if (IN2_type_symbol == NULL)
       
 13652                           IN2_type_symbol = last_type_symbol;
 12437                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 13653                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 12438                         symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
 13654                         symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
 12439                         break;
 13655                         break;
 12440                         
 13656                         
 12441                     }
 13657                     }
 12465             symbol_c *IN1_param_value = &this->default_variable_name;
 13681             symbol_c *IN1_param_value = &this->default_variable_name;
 12466         
 13682         
 12467             symbol_c *IN1_type_symbol = param_data_type;
 13683             symbol_c *IN1_type_symbol = param_data_type;
 12468             last_type_symbol = param_data_type;
 13684             last_type_symbol = param_data_type;
 12469             
 13685             
 12470             if(search_expression_type->is_num_type(IN1_type_symbol))
 13686             if(IN1_type_symbol == NULL || search_expression_type->is_num_type(IN1_type_symbol))
 12471             {
 13687             {
 12472         
 13688         
 12473                 {
 13689                 {
 12474                     identifier_c param_name("IN2");
 13690                     identifier_c param_name("IN2");
 12475                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 13691                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 12476                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
 13692                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
       
 13693                     symbol_c *IN2_type_symbol = NULL;
 12477                     
 13694                     
 12478                     /* Get the value from a foo(<param_value>) style call */
 13695                     /* Get the value from a foo(<param_value>) style call */
 12479                     if (IN2_param_value == NULL)
 13696                     if (IN2_param_value == NULL)
 12480                       IN2_param_value = function_call_param_iterator.next();
 13697                       IN2_param_value = function_call_param_iterator.next();
 12481                     symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 13698                     if (IN2_param_value != NULL) {
 12482                     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 ;
 13699                       IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 12483                     
 13700                       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 ;
 12484                     if(search_expression_type->is_num_type(IN2_type_symbol))
 13701                     }
       
 13702                     
       
 13703                     if(IN2_type_symbol == NULL || search_expression_type->is_num_type(IN2_type_symbol))
 12485                     {
 13704                     {
 12486                 
 13705                 
 12487                         function_name = (symbol_c*)(new pragma_c("__sub_"));
 13706                         function_name = (symbol_c*)(new pragma_c("__sub_"));
       
 13707                         
       
 13708                         if (IN1_type_symbol == NULL)
       
 13709                           IN1_type_symbol = last_type_symbol;
 12488                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
 13710                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
       
 13711                         
       
 13712                         if (IN2_type_symbol == NULL)
       
 13713                           IN2_type_symbol = last_type_symbol;
 12489                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 13714                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 12490                         symbol_c * return_type_symbol = last_type_symbol;
 13715                         symbol_c * return_type_symbol = last_type_symbol;
 12491                         function_type_suffix = return_type_symbol;
 13716                         function_type_suffix = return_type_symbol;
 12492                         break;
 13717                         break;
 12493                         
 13718                         
 12497                     ERROR;
 13722                     ERROR;
 12498                 }
 13723                 }
 12499                 
 13724                 
 12500             }
 13725             }
 12501             
 13726             
 12502             if(search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol))
 13727             if(IN1_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol))
 12503             {
 13728             {
 12504         
 13729         
 12505                 {
 13730                 {
 12506                     identifier_c param_name("IN2");
 13731                     identifier_c param_name("IN2");
 12507                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 13732                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 12508                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
 13733                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
       
 13734                     symbol_c *IN2_type_symbol = NULL;
 12509                     
 13735                     
 12510                     /* Get the value from a foo(<param_value>) style call */
 13736                     /* Get the value from a foo(<param_value>) style call */
 12511                     if (IN2_param_value == NULL)
 13737                     if (IN2_param_value == NULL)
 12512                       IN2_param_value = function_call_param_iterator.next();
 13738                       IN2_param_value = function_call_param_iterator.next();
 12513                     symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 13739                     if (IN2_param_value != NULL) {
 12514                     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 ;
 13740                       IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 12515                     
 13741                       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 ;
 12516                     if(search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol))
 13742                     }
       
 13743                     
       
 13744                     if(IN2_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol))
 12517                     {
 13745                     {
 12518                 
 13746                 
 12519                         function_name = (symbol_c*)(new pragma_c("__time_sub"));
 13747                         function_name = (symbol_c*)(new pragma_c("__time_sub"));
       
 13748                         
       
 13749                         if (IN1_type_symbol == NULL)
       
 13750                           IN1_type_symbol = last_type_symbol;
 12520                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
 13751                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
       
 13752                         
       
 13753                         if (IN2_type_symbol == NULL)
       
 13754                           IN2_type_symbol = last_type_symbol;
 12521                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 13755                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 12522                         symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
 13756                         symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
 12523                         break;
 13757                         break;
 12524                         
 13758                         
 12525                     }
 13759                     }
 12528                     ERROR;
 13762                     ERROR;
 12529                 }
 13763                 }
 12530                 
 13764                 
 12531             }
 13765             }
 12532             
 13766             
 12533             if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
 13767             if(IN1_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
 12534             {
 13768             {
 12535         
 13769         
 12536                 {
 13770                 {
 12537                     identifier_c param_name("IN2");
 13771                     identifier_c param_name("IN2");
 12538                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 13772                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 12539                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
 13773                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
       
 13774                     symbol_c *IN2_type_symbol = NULL;
 12540                     
 13775                     
 12541                     /* Get the value from a foo(<param_value>) style call */
 13776                     /* Get the value from a foo(<param_value>) style call */
 12542                     if (IN2_param_value == NULL)
 13777                     if (IN2_param_value == NULL)
 12543                       IN2_param_value = function_call_param_iterator.next();
 13778                       IN2_param_value = function_call_param_iterator.next();
 12544                     symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 13779                     if (IN2_param_value != NULL) {
 12545                     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 ;
 13780                       IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 12546                     
 13781                       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 ;
 12547                     if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
 13782                     }
       
 13783                     
       
 13784                     if(IN2_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
 12548                     {
 13785                     {
 12549                 
 13786                 
 12550                         function_name = (symbol_c*)(new pragma_c("__time_sub"));
 13787                         function_name = (symbol_c*)(new pragma_c("__time_sub"));
       
 13788                         
       
 13789                         if (IN1_type_symbol == NULL)
       
 13790                           IN1_type_symbol = last_type_symbol;
 12551                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
 13791                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
       
 13792                         
       
 13793                         if (IN2_type_symbol == NULL)
       
 13794                           IN2_type_symbol = last_type_symbol;
 12552                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 13795                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 12553                         symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
 13796                         symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
 12554                         break;
 13797                         break;
 12555                         
 13798                         
 12556                     }
 13799                     }
 12557                     
 13800                     
 12558                     if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 13801                     if(IN2_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 12559                     {
 13802                     {
 12560                 
 13803                 
 12561                         function_name = (symbol_c*)(new pragma_c("__time_sub"));
 13804                         function_name = (symbol_c*)(new pragma_c("__time_sub"));
       
 13805                         
       
 13806                         if (IN1_type_symbol == NULL)
       
 13807                           IN1_type_symbol = last_type_symbol;
 12562                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
 13808                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
       
 13809                         
       
 13810                         if (IN2_type_symbol == NULL)
       
 13811                           IN2_type_symbol = last_type_symbol;
 12563                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 13812                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 12564                         symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
 13813                         symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
 12565                         break;
 13814                         break;
 12566                         
 13815                         
 12567                     }
 13816                     }
 12570                     ERROR;
 13819                     ERROR;
 12571                 }
 13820                 }
 12572                 
 13821                 
 12573             }
 13822             }
 12574             
 13823             
 12575             if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol))
 13824             if(IN1_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol))
 12576             {
 13825             {
 12577         
 13826         
 12578                 {
 13827                 {
 12579                     identifier_c param_name("IN2");
 13828                     identifier_c param_name("IN2");
 12580                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 13829                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 12581                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
 13830                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
       
 13831                     symbol_c *IN2_type_symbol = NULL;
 12582                     
 13832                     
 12583                     /* Get the value from a foo(<param_value>) style call */
 13833                     /* Get the value from a foo(<param_value>) style call */
 12584                     if (IN2_param_value == NULL)
 13834                     if (IN2_param_value == NULL)
 12585                       IN2_param_value = function_call_param_iterator.next();
 13835                       IN2_param_value = function_call_param_iterator.next();
 12586                     symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 13836                     if (IN2_param_value != NULL) {
 12587                     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 ;
 13837                       IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 12588                     
 13838                       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 ;
 12589                     if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol))
 13839                     }
       
 13840                     
       
 13841                     if(IN2_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol))
 12590                     {
 13842                     {
 12591                 
 13843                 
 12592                         function_name = (symbol_c*)(new pragma_c("__time_sub"));
 13844                         function_name = (symbol_c*)(new pragma_c("__time_sub"));
       
 13845                         
       
 13846                         if (IN1_type_symbol == NULL)
       
 13847                           IN1_type_symbol = last_type_symbol;
 12593                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
 13848                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
       
 13849                         
       
 13850                         if (IN2_type_symbol == NULL)
       
 13851                           IN2_type_symbol = last_type_symbol;
 12594                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 13852                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 12595                         symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
 13853                         symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
 12596                         break;
 13854                         break;
 12597                         
 13855                         
 12598                     }
 13856                     }
 12599                     
 13857                     
 12600                     if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 13858                     if(IN2_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 12601                     {
 13859                     {
 12602                 
 13860                 
 12603                         function_name = (symbol_c*)(new pragma_c("__time_sub"));
 13861                         function_name = (symbol_c*)(new pragma_c("__time_sub"));
       
 13862                         
       
 13863                         if (IN1_type_symbol == NULL)
       
 13864                           IN1_type_symbol = last_type_symbol;
 12604                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
 13865                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
       
 13866                         
       
 13867                         if (IN2_type_symbol == NULL)
       
 13868                           IN2_type_symbol = last_type_symbol;
 12605                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 13869                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 12606                         symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
 13870                         symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
 12607                         break;
 13871                         break;
 12608                         
 13872                         
 12609                     }
 13873                     }
 12612                     ERROR;
 13876                     ERROR;
 12613                 }
 13877                 }
 12614                 
 13878                 
 12615             }
 13879             }
 12616             
 13880             
 12617             if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 13881             if(IN1_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 12618             {
 13882             {
 12619         
 13883         
 12620                 {
 13884                 {
 12621                     identifier_c param_name("IN2");
 13885                     identifier_c param_name("IN2");
 12622                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 13886                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 12623                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
 13887                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
       
 13888                     symbol_c *IN2_type_symbol = NULL;
 12624                     
 13889                     
 12625                     /* Get the value from a foo(<param_value>) style call */
 13890                     /* Get the value from a foo(<param_value>) style call */
 12626                     if (IN2_param_value == NULL)
 13891                     if (IN2_param_value == NULL)
 12627                       IN2_param_value = function_call_param_iterator.next();
 13892                       IN2_param_value = function_call_param_iterator.next();
 12628                     symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 13893                     if (IN2_param_value != NULL) {
 12629                     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 ;
 13894                       IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 12630                     
 13895                       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 ;
 12631                     if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 13896                     }
       
 13897                     
       
 13898                     if(IN2_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 12632                     {
 13899                     {
 12633                 
 13900                 
 12634                         function_name = (symbol_c*)(new pragma_c("__time_sub"));
 13901                         function_name = (symbol_c*)(new pragma_c("__time_sub"));
       
 13902                         
       
 13903                         if (IN1_type_symbol == NULL)
       
 13904                           IN1_type_symbol = last_type_symbol;
 12635                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
 13905                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
       
 13906                         
       
 13907                         if (IN2_type_symbol == NULL)
       
 13908                           IN2_type_symbol = last_type_symbol;
 12636                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 13909                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 12637                         symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
 13910                         symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
 12638                         break;
 13911                         break;
 12639                         
 13912                         
 12640                     }
 13913                     }
 12664             symbol_c *IN1_param_value = &this->default_variable_name;
 13937             symbol_c *IN1_param_value = &this->default_variable_name;
 12665         
 13938         
 12666             symbol_c *IN1_type_symbol = param_data_type;
 13939             symbol_c *IN1_type_symbol = param_data_type;
 12667             last_type_symbol = param_data_type;
 13940             last_type_symbol = param_data_type;
 12668             
 13941             
 12669             if(search_expression_type->is_num_type(IN1_type_symbol))
 13942             if(IN1_type_symbol == NULL || search_expression_type->is_num_type(IN1_type_symbol))
 12670             {
 13943             {
 12671         
 13944         
 12672                 {
 13945                 {
 12673                     identifier_c param_name("IN2");
 13946                     identifier_c param_name("IN2");
 12674                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 13947                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 12675                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
 13948                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
       
 13949                     symbol_c *IN2_type_symbol = NULL;
 12676                     
 13950                     
 12677                     /* Get the value from a foo(<param_value>) style call */
 13951                     /* Get the value from a foo(<param_value>) style call */
 12678                     if (IN2_param_value == NULL)
 13952                     if (IN2_param_value == NULL)
 12679                       IN2_param_value = function_call_param_iterator.next();
 13953                       IN2_param_value = function_call_param_iterator.next();
 12680                     symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 13954                     if (IN2_param_value != NULL) {
 12681                     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 ;
 13955                       IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 12682                     
 13956                       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 ;
 12683                     if(search_expression_type->is_num_type(IN2_type_symbol))
 13957                     }
       
 13958                     
       
 13959                     if(IN2_type_symbol == NULL || search_expression_type->is_num_type(IN2_type_symbol))
 12684                     {
 13960                     {
 12685                 
 13961                 
 12686                         function_name = (symbol_c*)(new pragma_c("__div_"));
 13962                         function_name = (symbol_c*)(new pragma_c("__div_"));
       
 13963                         
       
 13964                         if (IN1_type_symbol == NULL)
       
 13965                           IN1_type_symbol = last_type_symbol;
 12687                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
 13966                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
       
 13967                         
       
 13968                         if (IN2_type_symbol == NULL)
       
 13969                           IN2_type_symbol = last_type_symbol;
 12688                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 13970                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 12689                         symbol_c * return_type_symbol = last_type_symbol;
 13971                         symbol_c * return_type_symbol = last_type_symbol;
 12690                         function_type_suffix = return_type_symbol;
 13972                         function_type_suffix = return_type_symbol;
 12691                         break;
 13973                         break;
 12692                         
 13974                         
 12696                     ERROR;
 13978                     ERROR;
 12697                 }
 13979                 }
 12698                 
 13980                 
 12699             }
 13981             }
 12700             
 13982             
 12701             if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 13983             if(IN1_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 12702             {
 13984             {
 12703         
 13985         
 12704                 {
 13986                 {
 12705                     identifier_c param_name("IN2");
 13987                     identifier_c param_name("IN2");
 12706                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 13988                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 12707                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
 13989                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
       
 13990                     symbol_c *IN2_type_symbol = NULL;
 12708                     
 13991                     
 12709                     /* Get the value from a foo(<param_value>) style call */
 13992                     /* Get the value from a foo(<param_value>) style call */
 12710                     if (IN2_param_value == NULL)
 13993                     if (IN2_param_value == NULL)
 12711                       IN2_param_value = function_call_param_iterator.next();
 13994                       IN2_param_value = function_call_param_iterator.next();
 12712                     symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 13995                     if (IN2_param_value != NULL) {
 12713                     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 ;
 13996                       IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 12714                     
 13997                       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 ;
 12715                     if(search_expression_type->is_num_type(IN2_type_symbol))
 13998                     }
       
 13999                     
       
 14000                     if(IN2_type_symbol == NULL || search_expression_type->is_num_type(IN2_type_symbol))
 12716                     {
 14001                     {
 12717                 
 14002                 
 12718                         function_name = (symbol_c*)(new pragma_c("__time_div"));
 14003                         function_name = (symbol_c*)(new pragma_c("__time_div"));
       
 14004                         
       
 14005                         if (IN1_type_symbol == NULL)
       
 14006                           IN1_type_symbol = last_type_symbol;
 12719                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
 14007                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
       
 14008                         
       
 14009                         if (IN2_type_symbol == NULL)
       
 14010                           IN2_type_symbol = last_type_symbol;
 12720                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 14011                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 12721                         symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
 14012                         symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
 12722                         break;
 14013                         break;
 12723                         
 14014                         
 12724                     }
 14015                     }
 12748             symbol_c *IN1_param_value = &this->default_variable_name;
 14039             symbol_c *IN1_param_value = &this->default_variable_name;
 12749         
 14040         
 12750             symbol_c *IN1_type_symbol = param_data_type;
 14041             symbol_c *IN1_type_symbol = param_data_type;
 12751             last_type_symbol = param_data_type;
 14042             last_type_symbol = param_data_type;
 12752             
 14043             
 12753             if(search_expression_type->is_num_type(IN1_type_symbol))
 14044             if(IN1_type_symbol == NULL || search_expression_type->is_num_type(IN1_type_symbol))
 12754             {
 14045             {
 12755         
 14046         
 12756                 {
 14047                 {
 12757                     identifier_c param_name("IN2");
 14048                     identifier_c param_name("IN2");
 12758                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 14049                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 12759                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
 14050                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
       
 14051                     symbol_c *IN2_type_symbol = NULL;
 12760                     
 14052                     
 12761                     /* Get the value from a foo(<param_value>) style call */
 14053                     /* Get the value from a foo(<param_value>) style call */
 12762                     if (IN2_param_value == NULL)
 14054                     if (IN2_param_value == NULL)
 12763                       IN2_param_value = function_call_param_iterator.next();
 14055                       IN2_param_value = function_call_param_iterator.next();
 12764                     symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 14056                     if (IN2_param_value != NULL) {
 12765                     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 ;
 14057                       IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 12766                     
 14058                       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 ;
 12767                     if(search_expression_type->is_num_type(IN2_type_symbol))
 14059                     }
       
 14060                     
       
 14061                     if(IN2_type_symbol == NULL || search_expression_type->is_num_type(IN2_type_symbol))
 12768                     {
 14062                     {
 12769                 
 14063                 
 12770                         function_name = (symbol_c*)(new pragma_c("__mod_"));
 14064                         function_name = (symbol_c*)(new pragma_c("__mod_"));
       
 14065                         
       
 14066                         if (IN1_type_symbol == NULL)
       
 14067                           IN1_type_symbol = last_type_symbol;
 12771                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
 14068                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
       
 14069                         
       
 14070                         if (IN2_type_symbol == NULL)
       
 14071                           IN2_type_symbol = last_type_symbol;
 12772                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 14072                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 12773                         symbol_c * return_type_symbol = last_type_symbol;
 14073                         symbol_c * return_type_symbol = last_type_symbol;
 12774                         function_type_suffix = return_type_symbol;
 14074                         function_type_suffix = return_type_symbol;
 12775                         break;
 14075                         break;
 12776                         
 14076                         
 12801             symbol_c *IN1_param_value = &this->default_variable_name;
 14101             symbol_c *IN1_param_value = &this->default_variable_name;
 12802         
 14102         
 12803             symbol_c *IN1_type_symbol = param_data_type;
 14103             symbol_c *IN1_type_symbol = param_data_type;
 12804             last_type_symbol = param_data_type;
 14104             last_type_symbol = param_data_type;
 12805             
 14105             
 12806             if(search_expression_type->is_real_type(IN1_type_symbol))
 14106             if(IN1_type_symbol == NULL || search_expression_type->is_real_type(IN1_type_symbol))
 12807             {
 14107             {
 12808         
 14108         
 12809                 {
 14109                 {
 12810                     identifier_c param_name("IN2");
 14110                     identifier_c param_name("IN2");
 12811                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 14111                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 12812                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
 14112                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
       
 14113                     symbol_c *IN2_type_symbol = NULL;
 12813                     
 14114                     
 12814                     /* Get the value from a foo(<param_value>) style call */
 14115                     /* Get the value from a foo(<param_value>) style call */
 12815                     if (IN2_param_value == NULL)
 14116                     if (IN2_param_value == NULL)
 12816                       IN2_param_value = function_call_param_iterator.next();
 14117                       IN2_param_value = function_call_param_iterator.next();
 12817                     symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 14118                     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 ;
 14119                       IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 12819                     
 14120                       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))
 14121                     }
       
 14122                     
       
 14123                     if(IN2_type_symbol == NULL || search_expression_type->is_num_type(IN2_type_symbol))
 12821                     {
 14124                     {
 12822                 
 14125                 
 12823                         function_name = (symbol_c*)(new pragma_c("__expt_"));
 14126                         function_name = (symbol_c*)(new pragma_c("__expt_"));
       
 14127                         
       
 14128                         if (IN1_type_symbol == NULL)
       
 14129                           IN1_type_symbol = last_type_symbol;
 12824                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
 14130                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
       
 14131                         
       
 14132                         if (IN2_type_symbol == NULL)
       
 14133                           IN2_type_symbol = last_type_symbol;
 12825                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 14134                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 12826                         symbol_c * return_type_symbol = last_type_symbol;
 14135                         symbol_c * return_type_symbol = last_type_symbol;
 12827                         function_type_suffix = IN1_type_symbol;
 14136                         function_type_suffix = IN1_type_symbol;
 12828                         break;
 14137                         break;
 12829                         
 14138                         
 12858             
 14167             
 12859             
 14168             
 12860             {
 14169             {
 12861         
 14170         
 12862                 function_name = (symbol_c*)(new pragma_c("__move_"));
 14171                 function_name = (symbol_c*)(new pragma_c("__move_"));
       
 14172                 
       
 14173                 if (IN_type_symbol == NULL)
       
 14174                   IN_type_symbol = last_type_symbol;
 12863                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 14175                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 12864                 symbol_c * return_type_symbol = last_type_symbol;
 14176                 symbol_c * return_type_symbol = last_type_symbol;
 12865                 function_type_suffix = return_type_symbol;
 14177                 function_type_suffix = return_type_symbol;
 12866                 break;
 14178                 break;
 12867                 
 14179                 
 12886             symbol_c *IN_param_value = &this->default_variable_name;
 14198             symbol_c *IN_param_value = &this->default_variable_name;
 12887         
 14199         
 12888             symbol_c *IN_type_symbol = param_data_type;
 14200             symbol_c *IN_type_symbol = param_data_type;
 12889             last_type_symbol = param_data_type;
 14201             last_type_symbol = param_data_type;
 12890             
 14202             
 12891             if(search_expression_type->is_binary_type(IN_type_symbol))
 14203             if(IN_type_symbol == NULL || search_expression_type->is_binary_type(IN_type_symbol))
 12892             {
 14204             {
 12893         
 14205         
 12894                 {
 14206                 {
 12895                     identifier_c param_name("N");
 14207                     identifier_c param_name("N");
 12896                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 14208                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 12897                     symbol_c *N_param_value = function_call_param_iterator.search(&param_name);
 14209                     symbol_c *N_param_value = function_call_param_iterator.search(&param_name);
       
 14210                     symbol_c *N_type_symbol = NULL;
 12898                     
 14211                     
 12899                     /* Get the value from a foo(<param_value>) style call */
 14212                     /* Get the value from a foo(<param_value>) style call */
 12900                     if (N_param_value == NULL)
 14213                     if (N_param_value == NULL)
 12901                       N_param_value = function_call_param_iterator.next();
 14214                       N_param_value = function_call_param_iterator.next();
 12902                     symbol_c *N_type_symbol = search_expression_type->get_type(N_param_value);
 14215                     if (N_param_value != NULL) {
 12903                     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 ;
 14216                       N_type_symbol = search_expression_type->get_type(N_param_value);
 12904                     
 14217                       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 ;
 12905                     if(search_expression_type->is_integer_type(N_type_symbol))
 14218                     }
       
 14219                     
       
 14220                     if(N_type_symbol == NULL || search_expression_type->is_integer_type(N_type_symbol))
 12906                     {
 14221                     {
 12907                 
 14222                 
 12908                         function_name = (symbol_c*)(new pragma_c("__shl_"));
 14223                         function_name = (symbol_c*)(new pragma_c("__shl_"));
       
 14224                         
       
 14225                         if (IN_type_symbol == NULL)
       
 14226                           IN_type_symbol = last_type_symbol;
 12909                         ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 14227                         ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
       
 14228                         
       
 14229                         if (N_type_symbol == NULL)
       
 14230                           N_type_symbol = last_type_symbol;
 12910                         ADD_PARAM_LIST(N_param_value, N_type_symbol, function_param_iterator_c::direction_in)
 14231                         ADD_PARAM_LIST(N_param_value, N_type_symbol, function_param_iterator_c::direction_in)
 12911                         symbol_c * return_type_symbol = IN_type_symbol;
 14232                         symbol_c * return_type_symbol = IN_type_symbol;
 12912                         function_type_suffix = IN_type_symbol;
 14233                         function_type_suffix = IN_type_symbol;
 12913                         break;
 14234                         break;
 12914                         
 14235                         
 12939             symbol_c *IN_param_value = &this->default_variable_name;
 14260             symbol_c *IN_param_value = &this->default_variable_name;
 12940         
 14261         
 12941             symbol_c *IN_type_symbol = param_data_type;
 14262             symbol_c *IN_type_symbol = param_data_type;
 12942             last_type_symbol = param_data_type;
 14263             last_type_symbol = param_data_type;
 12943             
 14264             
 12944             if(search_expression_type->is_binary_type(IN_type_symbol))
 14265             if(IN_type_symbol == NULL || search_expression_type->is_binary_type(IN_type_symbol))
 12945             {
 14266             {
 12946         
 14267         
 12947                 {
 14268                 {
 12948                     identifier_c param_name("N");
 14269                     identifier_c param_name("N");
 12949                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 14270                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 12950                     symbol_c *N_param_value = function_call_param_iterator.search(&param_name);
 14271                     symbol_c *N_param_value = function_call_param_iterator.search(&param_name);
       
 14272                     symbol_c *N_type_symbol = NULL;
 12951                     
 14273                     
 12952                     /* Get the value from a foo(<param_value>) style call */
 14274                     /* Get the value from a foo(<param_value>) style call */
 12953                     if (N_param_value == NULL)
 14275                     if (N_param_value == NULL)
 12954                       N_param_value = function_call_param_iterator.next();
 14276                       N_param_value = function_call_param_iterator.next();
 12955                     symbol_c *N_type_symbol = search_expression_type->get_type(N_param_value);
 14277                     if (N_param_value != NULL) {
 12956                     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 ;
 14278                       N_type_symbol = search_expression_type->get_type(N_param_value);
 12957                     
 14279                       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 ;
 12958                     if(search_expression_type->is_integer_type(N_type_symbol))
 14280                     }
       
 14281                     
       
 14282                     if(N_type_symbol == NULL || search_expression_type->is_integer_type(N_type_symbol))
 12959                     {
 14283                     {
 12960                 
 14284                 
 12961                         function_name = (symbol_c*)(new pragma_c("__shr_"));
 14285                         function_name = (symbol_c*)(new pragma_c("__shr_"));
       
 14286                         
       
 14287                         if (IN_type_symbol == NULL)
       
 14288                           IN_type_symbol = last_type_symbol;
 12962                         ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 14289                         ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
       
 14290                         
       
 14291                         if (N_type_symbol == NULL)
       
 14292                           N_type_symbol = last_type_symbol;
 12963                         ADD_PARAM_LIST(N_param_value, N_type_symbol, function_param_iterator_c::direction_in)
 14293                         ADD_PARAM_LIST(N_param_value, N_type_symbol, function_param_iterator_c::direction_in)
 12964                         symbol_c * return_type_symbol = IN_type_symbol;
 14294                         symbol_c * return_type_symbol = IN_type_symbol;
 12965                         function_type_suffix = IN_type_symbol;
 14295                         function_type_suffix = IN_type_symbol;
 12966                         break;
 14296                         break;
 12967                         
 14297                         
 12992             symbol_c *IN_param_value = &this->default_variable_name;
 14322             symbol_c *IN_param_value = &this->default_variable_name;
 12993         
 14323         
 12994             symbol_c *IN_type_symbol = param_data_type;
 14324             symbol_c *IN_type_symbol = param_data_type;
 12995             last_type_symbol = param_data_type;
 14325             last_type_symbol = param_data_type;
 12996             
 14326             
 12997             if(search_expression_type->is_nbinary_type(IN_type_symbol))
 14327             if(IN_type_symbol == NULL || search_expression_type->is_nbinary_type(IN_type_symbol))
 12998             {
 14328             {
 12999         
 14329         
 13000                 {
 14330                 {
 13001                     identifier_c param_name("N");
 14331                     identifier_c param_name("N");
 13002                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 14332                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 13003                     symbol_c *N_param_value = function_call_param_iterator.search(&param_name);
 14333                     symbol_c *N_param_value = function_call_param_iterator.search(&param_name);
       
 14334                     symbol_c *N_type_symbol = NULL;
 13004                     
 14335                     
 13005                     /* Get the value from a foo(<param_value>) style call */
 14336                     /* Get the value from a foo(<param_value>) style call */
 13006                     if (N_param_value == NULL)
 14337                     if (N_param_value == NULL)
 13007                       N_param_value = function_call_param_iterator.next();
 14338                       N_param_value = function_call_param_iterator.next();
 13008                     symbol_c *N_type_symbol = search_expression_type->get_type(N_param_value);
 14339                     if (N_param_value != NULL) {
 13009                     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 ;
 14340                       N_type_symbol = search_expression_type->get_type(N_param_value);
 13010                     
 14341                       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 ;
 13011                     if(search_expression_type->is_integer_type(N_type_symbol))
 14342                     }
       
 14343                     
       
 14344                     if(N_type_symbol == NULL || search_expression_type->is_integer_type(N_type_symbol))
 13012                     {
 14345                     {
 13013                 
 14346                 
 13014                         function_name = (symbol_c*)(new pragma_c("__ror_"));
 14347                         function_name = (symbol_c*)(new pragma_c("__ror_"));
       
 14348                         
       
 14349                         if (IN_type_symbol == NULL)
       
 14350                           IN_type_symbol = last_type_symbol;
 13015                         ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 14351                         ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
       
 14352                         
       
 14353                         if (N_type_symbol == NULL)
       
 14354                           N_type_symbol = last_type_symbol;
 13016                         ADD_PARAM_LIST(N_param_value, N_type_symbol, function_param_iterator_c::direction_in)
 14355                         ADD_PARAM_LIST(N_param_value, N_type_symbol, function_param_iterator_c::direction_in)
 13017                         symbol_c * return_type_symbol = IN_type_symbol;
 14356                         symbol_c * return_type_symbol = IN_type_symbol;
 13018                         function_type_suffix = IN_type_symbol;
 14357                         function_type_suffix = IN_type_symbol;
 13019                         break;
 14358                         break;
 13020                         
 14359                         
 13045             symbol_c *IN_param_value = &this->default_variable_name;
 14384             symbol_c *IN_param_value = &this->default_variable_name;
 13046         
 14385         
 13047             symbol_c *IN_type_symbol = param_data_type;
 14386             symbol_c *IN_type_symbol = param_data_type;
 13048             last_type_symbol = param_data_type;
 14387             last_type_symbol = param_data_type;
 13049             
 14388             
 13050             if(search_expression_type->is_nbinary_type(IN_type_symbol))
 14389             if(IN_type_symbol == NULL || search_expression_type->is_nbinary_type(IN_type_symbol))
 13051             {
 14390             {
 13052         
 14391         
 13053                 {
 14392                 {
 13054                     identifier_c param_name("N");
 14393                     identifier_c param_name("N");
 13055                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 14394                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 13056                     symbol_c *N_param_value = function_call_param_iterator.search(&param_name);
 14395                     symbol_c *N_param_value = function_call_param_iterator.search(&param_name);
       
 14396                     symbol_c *N_type_symbol = NULL;
 13057                     
 14397                     
 13058                     /* Get the value from a foo(<param_value>) style call */
 14398                     /* Get the value from a foo(<param_value>) style call */
 13059                     if (N_param_value == NULL)
 14399                     if (N_param_value == NULL)
 13060                       N_param_value = function_call_param_iterator.next();
 14400                       N_param_value = function_call_param_iterator.next();
 13061                     symbol_c *N_type_symbol = search_expression_type->get_type(N_param_value);
 14401                     if (N_param_value != NULL) {
 13062                     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 ;
 14402                       N_type_symbol = search_expression_type->get_type(N_param_value);
 13063                     
 14403                       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 ;
 13064                     if(search_expression_type->is_integer_type(N_type_symbol))
 14404                     }
       
 14405                     
       
 14406                     if(N_type_symbol == NULL || search_expression_type->is_integer_type(N_type_symbol))
 13065                     {
 14407                     {
 13066                 
 14408                 
 13067                         function_name = (symbol_c*)(new pragma_c("__rol_"));
 14409                         function_name = (symbol_c*)(new pragma_c("__rol_"));
       
 14410                         
       
 14411                         if (IN_type_symbol == NULL)
       
 14412                           IN_type_symbol = last_type_symbol;
 13068                         ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 14413                         ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
       
 14414                         
       
 14415                         if (N_type_symbol == NULL)
       
 14416                           N_type_symbol = last_type_symbol;
 13069                         ADD_PARAM_LIST(N_param_value, N_type_symbol, function_param_iterator_c::direction_in)
 14417                         ADD_PARAM_LIST(N_param_value, N_type_symbol, function_param_iterator_c::direction_in)
 13070                         symbol_c * return_type_symbol = IN_type_symbol;
 14418                         symbol_c * return_type_symbol = IN_type_symbol;
 13071                         function_type_suffix = IN_type_symbol;
 14419                         function_type_suffix = IN_type_symbol;
 13072                         break;
 14420                         break;
 13073                         
 14421                         
 13098             symbol_c *IN1_param_value = &this->default_variable_name;
 14446             symbol_c *IN1_param_value = &this->default_variable_name;
 13099         
 14447         
 13100             symbol_c *IN1_type_symbol = param_data_type;
 14448             symbol_c *IN1_type_symbol = param_data_type;
 13101             last_type_symbol = param_data_type;
 14449             last_type_symbol = param_data_type;
 13102             
 14450             
 13103             if(search_expression_type->is_binary_type(IN1_type_symbol))
 14451             if(IN1_type_symbol == NULL || search_expression_type->is_binary_type(IN1_type_symbol))
 13104             {
 14452             {
 13105         
 14453         
 13106                 {
 14454                 {
 13107                     identifier_c param_name("IN2");
 14455                     identifier_c param_name("IN2");
 13108                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 14456                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 13109                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
 14457                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
       
 14458                     symbol_c *IN2_type_symbol = NULL;
 13110                     
 14459                     
 13111                     /* Get the value from a foo(<param_value>) style call */
 14460                     /* Get the value from a foo(<param_value>) style call */
 13112                     if (IN2_param_value == NULL)
 14461                     if (IN2_param_value == NULL)
 13113                       IN2_param_value = function_call_param_iterator.next();
 14462                       IN2_param_value = function_call_param_iterator.next();
 13114                     symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 14463                     if (IN2_param_value != NULL) {
 13115                     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 ;
 14464                       IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 13116                     
 14465                       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 ;
 13117                     if(search_expression_type->is_binary_type(IN2_type_symbol))
 14466                     }
       
 14467                     
       
 14468                     if(IN2_type_symbol == NULL || search_expression_type->is_binary_type(IN2_type_symbol))
 13118                     {
 14469                     {
 13119                 
 14470                 
 13120                         function_name = (symbol_c*)(new pragma_c("__and_"));
 14471                         function_name = (symbol_c*)(new pragma_c("__and_"));
 13121                         
 14472                         
       
 14473                         if (nb_param < 2)
       
 14474                           nb_param = 2;
 13122                         char* nb_param_str = new char[10];
 14475                         char* nb_param_str = new char[10];
 13123                         sprintf(nb_param_str, "%d", nb_param);
 14476                         sprintf(nb_param_str, "%d", nb_param);
 13124                         ADD_PARAM_LIST((symbol_c*)(new integer_c((const char *)nb_param_str)), (symbol_c*)(new int_type_name_c()), function_param_iterator_c::direction_in)
 14477                         ADD_PARAM_LIST((symbol_c*)(new integer_c((const char *)nb_param_str)), (symbol_c*)(new int_type_name_c()), function_param_iterator_c::direction_in)
       
 14478                         
       
 14479                         if (IN1_type_symbol == NULL)
       
 14480                           IN1_type_symbol = last_type_symbol;
 13125                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
 14481                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
       
 14482                         
       
 14483                         if (IN2_type_symbol == NULL)
       
 14484                           IN2_type_symbol = last_type_symbol;
 13126                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 14485                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 13127                         
 14486                         
 13128                         int base_num = 3;
 14487                         int base_num = 3;
 13129                         symbol_c *param_value = NULL;
 14488                         symbol_c *param_value = NULL;
 13130                         do{
 14489                         do{
 13178             symbol_c *IN1_param_value = &this->default_variable_name;
 14537             symbol_c *IN1_param_value = &this->default_variable_name;
 13179         
 14538         
 13180             symbol_c *IN1_type_symbol = param_data_type;
 14539             symbol_c *IN1_type_symbol = param_data_type;
 13181             last_type_symbol = param_data_type;
 14540             last_type_symbol = param_data_type;
 13182             
 14541             
 13183             if(search_expression_type->is_binary_type(IN1_type_symbol))
 14542             if(IN1_type_symbol == NULL || search_expression_type->is_binary_type(IN1_type_symbol))
 13184             {
 14543             {
 13185         
 14544         
 13186                 {
 14545                 {
 13187                     identifier_c param_name("IN2");
 14546                     identifier_c param_name("IN2");
 13188                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 14547                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 13189                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
 14548                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
       
 14549                     symbol_c *IN2_type_symbol = NULL;
 13190                     
 14550                     
 13191                     /* Get the value from a foo(<param_value>) style call */
 14551                     /* Get the value from a foo(<param_value>) style call */
 13192                     if (IN2_param_value == NULL)
 14552                     if (IN2_param_value == NULL)
 13193                       IN2_param_value = function_call_param_iterator.next();
 14553                       IN2_param_value = function_call_param_iterator.next();
 13194                     symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 14554                     if (IN2_param_value != NULL) {
 13195                     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 ;
 14555                       IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 13196                     
 14556                       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 ;
 13197                     if(search_expression_type->is_binary_type(IN2_type_symbol))
 14557                     }
       
 14558                     
       
 14559                     if(IN2_type_symbol == NULL || search_expression_type->is_binary_type(IN2_type_symbol))
 13198                     {
 14560                     {
 13199                 
 14561                 
 13200                         function_name = (symbol_c*)(new pragma_c("__or_"));
 14562                         function_name = (symbol_c*)(new pragma_c("__or_"));
 13201                         
 14563                         
       
 14564                         if (nb_param < 2)
       
 14565                           nb_param = 2;
 13202                         char* nb_param_str = new char[10];
 14566                         char* nb_param_str = new char[10];
 13203                         sprintf(nb_param_str, "%d", nb_param);
 14567                         sprintf(nb_param_str, "%d", nb_param);
 13204                         ADD_PARAM_LIST((symbol_c*)(new integer_c((const char *)nb_param_str)), (symbol_c*)(new int_type_name_c()), function_param_iterator_c::direction_in)
 14568                         ADD_PARAM_LIST((symbol_c*)(new integer_c((const char *)nb_param_str)), (symbol_c*)(new int_type_name_c()), function_param_iterator_c::direction_in)
       
 14569                         
       
 14570                         if (IN1_type_symbol == NULL)
       
 14571                           IN1_type_symbol = last_type_symbol;
 13205                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
 14572                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
       
 14573                         
       
 14574                         if (IN2_type_symbol == NULL)
       
 14575                           IN2_type_symbol = last_type_symbol;
 13206                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 14576                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 13207                         
 14577                         
 13208                         int base_num = 3;
 14578                         int base_num = 3;
 13209                         symbol_c *param_value = NULL;
 14579                         symbol_c *param_value = NULL;
 13210                         do{
 14580                         do{
 13258             symbol_c *IN1_param_value = &this->default_variable_name;
 14628             symbol_c *IN1_param_value = &this->default_variable_name;
 13259         
 14629         
 13260             symbol_c *IN1_type_symbol = param_data_type;
 14630             symbol_c *IN1_type_symbol = param_data_type;
 13261             last_type_symbol = param_data_type;
 14631             last_type_symbol = param_data_type;
 13262             
 14632             
 13263             if(search_expression_type->is_binary_type(IN1_type_symbol))
 14633             if(IN1_type_symbol == NULL || search_expression_type->is_binary_type(IN1_type_symbol))
 13264             {
 14634             {
 13265         
 14635         
 13266                 {
 14636                 {
 13267                     identifier_c param_name("IN2");
 14637                     identifier_c param_name("IN2");
 13268                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 14638                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 13269                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
 14639                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
       
 14640                     symbol_c *IN2_type_symbol = NULL;
 13270                     
 14641                     
 13271                     /* Get the value from a foo(<param_value>) style call */
 14642                     /* Get the value from a foo(<param_value>) style call */
 13272                     if (IN2_param_value == NULL)
 14643                     if (IN2_param_value == NULL)
 13273                       IN2_param_value = function_call_param_iterator.next();
 14644                       IN2_param_value = function_call_param_iterator.next();
 13274                     symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 14645                     if (IN2_param_value != NULL) {
 13275                     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 ;
 14646                       IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 13276                     
 14647                       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 ;
 13277                     if(search_expression_type->is_binary_type(IN2_type_symbol))
 14648                     }
       
 14649                     
       
 14650                     if(IN2_type_symbol == NULL || search_expression_type->is_binary_type(IN2_type_symbol))
 13278                     {
 14651                     {
 13279                 
 14652                 
 13280                         function_name = (symbol_c*)(new pragma_c("__xor_"));
 14653                         function_name = (symbol_c*)(new pragma_c("__xor_"));
 13281                         
 14654                         
       
 14655                         if (nb_param < 2)
       
 14656                           nb_param = 2;
 13282                         char* nb_param_str = new char[10];
 14657                         char* nb_param_str = new char[10];
 13283                         sprintf(nb_param_str, "%d", nb_param);
 14658                         sprintf(nb_param_str, "%d", nb_param);
 13284                         ADD_PARAM_LIST((symbol_c*)(new integer_c((const char *)nb_param_str)), (symbol_c*)(new int_type_name_c()), function_param_iterator_c::direction_in)
 14659                         ADD_PARAM_LIST((symbol_c*)(new integer_c((const char *)nb_param_str)), (symbol_c*)(new int_type_name_c()), function_param_iterator_c::direction_in)
       
 14660                         
       
 14661                         if (IN1_type_symbol == NULL)
       
 14662                           IN1_type_symbol = last_type_symbol;
 13285                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
 14663                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
       
 14664                         
       
 14665                         if (IN2_type_symbol == NULL)
       
 14666                           IN2_type_symbol = last_type_symbol;
 13286                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 14667                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 13287                         
 14668                         
 13288                         int base_num = 3;
 14669                         int base_num = 3;
 13289                         symbol_c *param_value = NULL;
 14670                         symbol_c *param_value = NULL;
 13290                         do{
 14671                         do{
 13338             symbol_c *IN_param_value = &this->default_variable_name;
 14719             symbol_c *IN_param_value = &this->default_variable_name;
 13339         
 14720         
 13340             symbol_c *IN_type_symbol = param_data_type;
 14721             symbol_c *IN_type_symbol = param_data_type;
 13341             last_type_symbol = param_data_type;
 14722             last_type_symbol = param_data_type;
 13342             
 14723             
 13343             if(search_expression_type->is_binary_type(IN_type_symbol))
 14724             if(IN_type_symbol == NULL || search_expression_type->is_binary_type(IN_type_symbol))
 13344             {
 14725             {
 13345         
 14726         
 13346                 function_name = (symbol_c*)(new pragma_c("__not_"));
 14727                 function_name = (symbol_c*)(new pragma_c("__not_"));
       
 14728                 
       
 14729                 if (IN_type_symbol == NULL)
       
 14730                   IN_type_symbol = last_type_symbol;
 13347                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 14731                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 13348                 symbol_c * return_type_symbol = IN_type_symbol;
 14732                 symbol_c * return_type_symbol = IN_type_symbol;
 13349                 function_type_suffix = return_type_symbol;
 14733                 function_type_suffix = return_type_symbol;
 13350                 break;
 14734                 break;
 13351                 
 14735                 
 13370             symbol_c *G_param_value = &this->default_variable_name;
 14754             symbol_c *G_param_value = &this->default_variable_name;
 13371         
 14755         
 13372             symbol_c *G_type_symbol = param_data_type;
 14756             symbol_c *G_type_symbol = param_data_type;
 13373             last_type_symbol = param_data_type;
 14757             last_type_symbol = param_data_type;
 13374             
 14758             
 13375             if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
 14759             if(G_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
 13376             {
 14760             {
 13377         
 14761         
 13378                 {
 14762                 {
 13379                     identifier_c param_name("IN0");
 14763                     identifier_c param_name("IN0");
 13380                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 14764                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 13381                     symbol_c *IN0_param_value = function_call_param_iterator.search(&param_name);
 14765                     symbol_c *IN0_param_value = function_call_param_iterator.search(&param_name);
       
 14766                     symbol_c *IN0_type_symbol = NULL;
 13382                     
 14767                     
 13383                     /* Get the value from a foo(<param_value>) style call */
 14768                     /* Get the value from a foo(<param_value>) style call */
 13384                     if (IN0_param_value == NULL)
 14769                     if (IN0_param_value == NULL)
 13385                       IN0_param_value = function_call_param_iterator.next();
 14770                       IN0_param_value = function_call_param_iterator.next();
 13386                     symbol_c *IN0_type_symbol = search_expression_type->get_type(IN0_param_value);
 14771                     if (IN0_param_value != NULL) {
 13387                     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 ;
 14772                       IN0_type_symbol = search_expression_type->get_type(IN0_param_value);
       
 14773                       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 ;
       
 14774                     }
 13388                     
 14775                     
 13389                     
 14776                     
 13390                     {
 14777                     {
 13391                 
 14778                 
 13392                         {
 14779                         {
 13393                             identifier_c param_name("IN1");
 14780                             identifier_c param_name("IN1");
 13394                             /* Get the value from a foo(<param_name> = <param_value>) style call */
 14781                             /* Get the value from a foo(<param_name> = <param_value>) style call */
 13395                             symbol_c *IN1_param_value = function_call_param_iterator.search(&param_name);
 14782                             symbol_c *IN1_param_value = function_call_param_iterator.search(&param_name);
       
 14783                             symbol_c *IN1_type_symbol = NULL;
 13396                             
 14784                             
 13397                             /* Get the value from a foo(<param_value>) style call */
 14785                             /* Get the value from a foo(<param_value>) style call */
 13398                             if (IN1_param_value == NULL)
 14786                             if (IN1_param_value == NULL)
 13399                               IN1_param_value = function_call_param_iterator.next();
 14787                               IN1_param_value = function_call_param_iterator.next();
 13400                             symbol_c *IN1_type_symbol = search_expression_type->get_type(IN1_param_value);
 14788                             if (IN1_param_value != NULL) {
 13401                             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 ;
 14789                               IN1_type_symbol = search_expression_type->get_type(IN1_param_value);
       
 14790                               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 ;
       
 14791                             }
 13402                             
 14792                             
 13403                             
 14793                             
 13404                             {
 14794                             {
 13405                         
 14795                         
 13406                                 function_name = (symbol_c*)(new pragma_c("__sel_"));
 14796                                 function_name = (symbol_c*)(new pragma_c("__sel_"));
       
 14797                                 
       
 14798                                 if (G_type_symbol == NULL)
       
 14799                                   G_type_symbol = last_type_symbol;
 13407                                 ADD_PARAM_LIST(G_param_value, G_type_symbol, function_param_iterator_c::direction_in)
 14800                                 ADD_PARAM_LIST(G_param_value, G_type_symbol, function_param_iterator_c::direction_in)
       
 14801                                 
       
 14802                                 if (IN0_type_symbol == NULL)
       
 14803                                   IN0_type_symbol = last_type_symbol;
 13408                                 ADD_PARAM_LIST(IN0_param_value, IN0_type_symbol, function_param_iterator_c::direction_in)
 14804                                 ADD_PARAM_LIST(IN0_param_value, IN0_type_symbol, function_param_iterator_c::direction_in)
       
 14805                                 
       
 14806                                 if (IN1_type_symbol == NULL)
       
 14807                                   IN1_type_symbol = last_type_symbol;
 13409                                 ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
 14808                                 ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
 13410                                 symbol_c * return_type_symbol = last_type_symbol;
 14809                                 symbol_c * return_type_symbol = last_type_symbol;
 13411                                 function_type_suffix = IN0_type_symbol;
 14810                                 function_type_suffix = IN0_type_symbol;
 13412                                 break;
 14811                                 break;
 13413                                 
 14812                                 
 13451         
 14850         
 13452                 {
 14851                 {
 13453                     identifier_c param_name("IN2");
 14852                     identifier_c param_name("IN2");
 13454                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 14853                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 13455                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
 14854                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
       
 14855                     symbol_c *IN2_type_symbol = NULL;
 13456                     
 14856                     
 13457                     /* Get the value from a foo(<param_value>) style call */
 14857                     /* Get the value from a foo(<param_value>) style call */
 13458                     if (IN2_param_value == NULL)
 14858                     if (IN2_param_value == NULL)
 13459                       IN2_param_value = function_call_param_iterator.next();
 14859                       IN2_param_value = function_call_param_iterator.next();
 13460                     symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 14860                     if (IN2_param_value != NULL) {
 13461                     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 ;
 14861                       IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
       
 14862                       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 ;
       
 14863                     }
 13462                     
 14864                     
 13463                     
 14865                     
 13464                     {
 14866                     {
 13465                 
 14867                 
 13466                         function_name = (symbol_c*)(new pragma_c("__max_"));
 14868                         function_name = (symbol_c*)(new pragma_c("__max_"));
 13467                         
 14869                         
       
 14870                         if (nb_param < 2)
       
 14871                           nb_param = 2;
 13468                         char* nb_param_str = new char[10];
 14872                         char* nb_param_str = new char[10];
 13469                         sprintf(nb_param_str, "%d", nb_param);
 14873                         sprintf(nb_param_str, "%d", nb_param);
 13470                         ADD_PARAM_LIST((symbol_c*)(new integer_c((const char *)nb_param_str)), (symbol_c*)(new int_type_name_c()), function_param_iterator_c::direction_in)
 14874                         ADD_PARAM_LIST((symbol_c*)(new integer_c((const char *)nb_param_str)), (symbol_c*)(new int_type_name_c()), function_param_iterator_c::direction_in)
       
 14875                         
       
 14876                         if (IN1_type_symbol == NULL)
       
 14877                           IN1_type_symbol = last_type_symbol;
 13471                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
 14878                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
       
 14879                         
       
 14880                         if (IN2_type_symbol == NULL)
       
 14881                           IN2_type_symbol = last_type_symbol;
 13472                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 14882                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 13473                         
 14883                         
 13474                         int base_num = 3;
 14884                         int base_num = 3;
 13475                         symbol_c *param_value = NULL;
 14885                         symbol_c *param_value = NULL;
 13476                         do{
 14886                         do{
 13531         
 14941         
 13532                 {
 14942                 {
 13533                     identifier_c param_name("IN2");
 14943                     identifier_c param_name("IN2");
 13534                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 14944                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 13535                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
 14945                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
       
 14946                     symbol_c *IN2_type_symbol = NULL;
 13536                     
 14947                     
 13537                     /* Get the value from a foo(<param_value>) style call */
 14948                     /* Get the value from a foo(<param_value>) style call */
 13538                     if (IN2_param_value == NULL)
 14949                     if (IN2_param_value == NULL)
 13539                       IN2_param_value = function_call_param_iterator.next();
 14950                       IN2_param_value = function_call_param_iterator.next();
 13540                     symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 14951                     if (IN2_param_value != NULL) {
 13541                     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 ;
 14952                       IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
       
 14953                       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 ;
       
 14954                     }
 13542                     
 14955                     
 13543                     
 14956                     
 13544                     {
 14957                     {
 13545                 
 14958                 
 13546                         function_name = (symbol_c*)(new pragma_c("__min_"));
 14959                         function_name = (symbol_c*)(new pragma_c("__min_"));
 13547                         
 14960                         
       
 14961                         if (nb_param < 2)
       
 14962                           nb_param = 2;
 13548                         char* nb_param_str = new char[10];
 14963                         char* nb_param_str = new char[10];
 13549                         sprintf(nb_param_str, "%d", nb_param);
 14964                         sprintf(nb_param_str, "%d", nb_param);
 13550                         ADD_PARAM_LIST((symbol_c*)(new integer_c((const char *)nb_param_str)), (symbol_c*)(new int_type_name_c()), function_param_iterator_c::direction_in)
 14965                         ADD_PARAM_LIST((symbol_c*)(new integer_c((const char *)nb_param_str)), (symbol_c*)(new int_type_name_c()), function_param_iterator_c::direction_in)
       
 14966                         
       
 14967                         if (IN1_type_symbol == NULL)
       
 14968                           IN1_type_symbol = last_type_symbol;
 13551                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
 14969                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
       
 14970                         
       
 14971                         if (IN2_type_symbol == NULL)
       
 14972                           IN2_type_symbol = last_type_symbol;
 13552                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 14973                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 13553                         
 14974                         
 13554                         int base_num = 3;
 14975                         int base_num = 3;
 13555                         symbol_c *param_value = NULL;
 14976                         symbol_c *param_value = NULL;
 13556                         do{
 14977                         do{
 13611         
 15032         
 13612                 {
 15033                 {
 13613                     identifier_c param_name("IN");
 15034                     identifier_c param_name("IN");
 13614                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 15035                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 13615                     symbol_c *IN_param_value = function_call_param_iterator.search(&param_name);
 15036                     symbol_c *IN_param_value = function_call_param_iterator.search(&param_name);
       
 15037                     symbol_c *IN_type_symbol = NULL;
 13616                     
 15038                     
 13617                     /* Get the value from a foo(<param_value>) style call */
 15039                     /* Get the value from a foo(<param_value>) style call */
 13618                     if (IN_param_value == NULL)
 15040                     if (IN_param_value == NULL)
 13619                       IN_param_value = function_call_param_iterator.next();
 15041                       IN_param_value = function_call_param_iterator.next();
 13620                     symbol_c *IN_type_symbol = search_expression_type->get_type(IN_param_value);
 15042                     if (IN_param_value != NULL) {
 13621                     last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ;
 15043                       IN_type_symbol = search_expression_type->get_type(IN_param_value);
       
 15044                       last_type_symbol = last_type_symbol && IN_type_symbol && search_expression_type->is_same_type(IN_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN_type_symbol, last_type_symbol) : IN_type_symbol ;
       
 15045                     }
 13622                     
 15046                     
 13623                     
 15047                     
 13624                     {
 15048                     {
 13625                 
 15049                 
 13626                         {
 15050                         {
 13627                             identifier_c param_name("MX");
 15051                             identifier_c param_name("MX");
 13628                             /* Get the value from a foo(<param_name> = <param_value>) style call */
 15052                             /* Get the value from a foo(<param_name> = <param_value>) style call */
 13629                             symbol_c *MX_param_value = function_call_param_iterator.search(&param_name);
 15053                             symbol_c *MX_param_value = function_call_param_iterator.search(&param_name);
       
 15054                             symbol_c *MX_type_symbol = NULL;
 13630                             
 15055                             
 13631                             /* Get the value from a foo(<param_value>) style call */
 15056                             /* Get the value from a foo(<param_value>) style call */
 13632                             if (MX_param_value == NULL)
 15057                             if (MX_param_value == NULL)
 13633                               MX_param_value = function_call_param_iterator.next();
 15058                               MX_param_value = function_call_param_iterator.next();
 13634                             symbol_c *MX_type_symbol = search_expression_type->get_type(MX_param_value);
 15059                             if (MX_param_value != NULL) {
 13635                             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 ;
 15060                               MX_type_symbol = search_expression_type->get_type(MX_param_value);
       
 15061                               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 ;
       
 15062                             }
 13636                             
 15063                             
 13637                             
 15064                             
 13638                             {
 15065                             {
 13639                         
 15066                         
 13640                                 function_name = (symbol_c*)(new pragma_c("__limit_"));
 15067                                 function_name = (symbol_c*)(new pragma_c("__limit_"));
       
 15068                                 
       
 15069                                 if (MN_type_symbol == NULL)
       
 15070                                   MN_type_symbol = last_type_symbol;
 13641                                 ADD_PARAM_LIST(MN_param_value, MN_type_symbol, function_param_iterator_c::direction_in)
 15071                                 ADD_PARAM_LIST(MN_param_value, MN_type_symbol, function_param_iterator_c::direction_in)
       
 15072                                 
       
 15073                                 if (IN_type_symbol == NULL)
       
 15074                                   IN_type_symbol = last_type_symbol;
 13642                                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 15075                                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
       
 15076                                 
       
 15077                                 if (MX_type_symbol == NULL)
       
 15078                                   MX_type_symbol = last_type_symbol;
 13643                                 ADD_PARAM_LIST(MX_param_value, MX_type_symbol, function_param_iterator_c::direction_in)
 15079                                 ADD_PARAM_LIST(MX_param_value, MX_type_symbol, function_param_iterator_c::direction_in)
 13644                                 symbol_c * return_type_symbol = IN_type_symbol;
 15080                                 symbol_c * return_type_symbol = IN_type_symbol;
 13645                                 function_type_suffix = IN_type_symbol;
 15081                                 function_type_suffix = IN_type_symbol;
 13646                                 break;
 15082                                 break;
 13647                                 
 15083                                 
 13678             symbol_c *K_param_value = &this->default_variable_name;
 15114             symbol_c *K_param_value = &this->default_variable_name;
 13679         
 15115         
 13680             symbol_c *K_type_symbol = param_data_type;
 15116             symbol_c *K_type_symbol = param_data_type;
 13681             last_type_symbol = param_data_type;
 15117             last_type_symbol = param_data_type;
 13682             
 15118             
 13683             if(search_expression_type->is_integer_type(K_type_symbol))
 15119             if(K_type_symbol == NULL || search_expression_type->is_integer_type(K_type_symbol))
 13684             {
 15120             {
 13685         
 15121         
 13686                 {
 15122                 {
 13687                     identifier_c param_name("IN0");
 15123                     identifier_c param_name("IN0");
 13688                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 15124                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 13689                     symbol_c *IN0_param_value = function_call_param_iterator.search(&param_name);
 15125                     symbol_c *IN0_param_value = function_call_param_iterator.search(&param_name);
       
 15126                     symbol_c *IN0_type_symbol = NULL;
 13690                     
 15127                     
 13691                     /* Get the value from a foo(<param_value>) style call */
 15128                     /* Get the value from a foo(<param_value>) style call */
 13692                     if (IN0_param_value == NULL)
 15129                     if (IN0_param_value == NULL)
 13693                       IN0_param_value = function_call_param_iterator.next();
 15130                       IN0_param_value = function_call_param_iterator.next();
 13694                     symbol_c *IN0_type_symbol = search_expression_type->get_type(IN0_param_value);
 15131                     if (IN0_param_value != NULL) {
 13695                     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 ;
 15132                       IN0_type_symbol = search_expression_type->get_type(IN0_param_value);
       
 15133                       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 ;
       
 15134                     }
 13696                     
 15135                     
 13697                     
 15136                     
 13698                     {
 15137                     {
 13699                 
 15138                 
 13700                         {
 15139                         {
 13701                             identifier_c param_name("IN1");
 15140                             identifier_c param_name("IN1");
 13702                             /* Get the value from a foo(<param_name> = <param_value>) style call */
 15141                             /* Get the value from a foo(<param_name> = <param_value>) style call */
 13703                             symbol_c *IN1_param_value = function_call_param_iterator.search(&param_name);
 15142                             symbol_c *IN1_param_value = function_call_param_iterator.search(&param_name);
       
 15143                             symbol_c *IN1_type_symbol = NULL;
 13704                             
 15144                             
 13705                             /* Get the value from a foo(<param_value>) style call */
 15145                             /* Get the value from a foo(<param_value>) style call */
 13706                             if (IN1_param_value == NULL)
 15146                             if (IN1_param_value == NULL)
 13707                               IN1_param_value = function_call_param_iterator.next();
 15147                               IN1_param_value = function_call_param_iterator.next();
 13708                             symbol_c *IN1_type_symbol = search_expression_type->get_type(IN1_param_value);
 15148                             if (IN1_param_value != NULL) {
 13709                             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 ;
 15149                               IN1_type_symbol = search_expression_type->get_type(IN1_param_value);
       
 15150                               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 ;
       
 15151                             }
 13710                             
 15152                             
 13711                             
 15153                             
 13712                             {
 15154                             {
 13713                         
 15155                         
 13714                                 function_name = (symbol_c*)(new pragma_c("__mux_"));
 15156                                 function_name = (symbol_c*)(new pragma_c("__mux_"));
 13715                                 
 15157                                 
       
 15158                                 if (nb_param < 3)
       
 15159                                   nb_param = 3;
 13716                                 char* nb_param_str = new char[10];
 15160                                 char* nb_param_str = new char[10];
 13717                                 sprintf(nb_param_str, "%d", nb_param);
 15161                                 sprintf(nb_param_str, "%d", nb_param);
 13718                                 ADD_PARAM_LIST((symbol_c*)(new integer_c((const char *)nb_param_str)), (symbol_c*)(new int_type_name_c()), function_param_iterator_c::direction_in)
 15162                                 ADD_PARAM_LIST((symbol_c*)(new integer_c((const char *)nb_param_str)), (symbol_c*)(new int_type_name_c()), function_param_iterator_c::direction_in)
       
 15163                                 
       
 15164                                 if (K_type_symbol == NULL)
       
 15165                                   K_type_symbol = last_type_symbol;
 13719                                 ADD_PARAM_LIST(K_param_value, K_type_symbol, function_param_iterator_c::direction_in)
 15166                                 ADD_PARAM_LIST(K_param_value, K_type_symbol, function_param_iterator_c::direction_in)
       
 15167                                 
       
 15168                                 if (IN0_type_symbol == NULL)
       
 15169                                   IN0_type_symbol = last_type_symbol;
 13720                                 ADD_PARAM_LIST(IN0_param_value, IN0_type_symbol, function_param_iterator_c::direction_in)
 15170                                 ADD_PARAM_LIST(IN0_param_value, IN0_type_symbol, function_param_iterator_c::direction_in)
       
 15171                                 
       
 15172                                 if (IN1_type_symbol == NULL)
       
 15173                                   IN1_type_symbol = last_type_symbol;
 13721                                 ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
 15174                                 ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
 13722                                 
 15175                                 
 13723                                 int base_num = 2;
 15176                                 int base_num = 2;
 13724                                 symbol_c *param_value = NULL;
 15177                                 symbol_c *param_value = NULL;
 13725                                 do{
 15178                                 do{
 13786         
 15239         
 13787                 {
 15240                 {
 13788                     identifier_c param_name("IN2");
 15241                     identifier_c param_name("IN2");
 13789                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 15242                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 13790                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
 15243                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
       
 15244                     symbol_c *IN2_type_symbol = NULL;
 13791                     
 15245                     
 13792                     /* Get the value from a foo(<param_value>) style call */
 15246                     /* Get the value from a foo(<param_value>) style call */
 13793                     if (IN2_param_value == NULL)
 15247                     if (IN2_param_value == NULL)
 13794                       IN2_param_value = function_call_param_iterator.next();
 15248                       IN2_param_value = function_call_param_iterator.next();
 13795                     symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 15249                     if (IN2_param_value != NULL) {
 13796                     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 ;
 15250                       IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
       
 15251                       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 ;
       
 15252                     }
 13797                     
 15253                     
 13798                     
 15254                     
 13799                     {
 15255                     {
 13800                 
 15256                 
 13801                         function_name = (symbol_c*)(new pragma_c("__gt_"));
 15257                         function_name = (symbol_c*)(new pragma_c("__gt_"));
 13802                         
 15258                         
       
 15259                         if (nb_param < 2)
       
 15260                           nb_param = 2;
 13803                         char* nb_param_str = new char[10];
 15261                         char* nb_param_str = new char[10];
 13804                         sprintf(nb_param_str, "%d", nb_param);
 15262                         sprintf(nb_param_str, "%d", nb_param);
 13805                         ADD_PARAM_LIST((symbol_c*)(new integer_c((const char *)nb_param_str)), (symbol_c*)(new int_type_name_c()), function_param_iterator_c::direction_in)
 15263                         ADD_PARAM_LIST((symbol_c*)(new integer_c((const char *)nb_param_str)), (symbol_c*)(new int_type_name_c()), function_param_iterator_c::direction_in)
       
 15264                         
       
 15265                         if (IN1_type_symbol == NULL)
       
 15266                           IN1_type_symbol = last_type_symbol;
 13806                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
 15267                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
       
 15268                         
       
 15269                         if (IN2_type_symbol == NULL)
       
 15270                           IN2_type_symbol = last_type_symbol;
 13807                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 15271                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 13808                         
 15272                         
 13809                         int base_num = 3;
 15273                         int base_num = 3;
 13810                         symbol_c *param_value = NULL;
 15274                         symbol_c *param_value = NULL;
 13811                         do{
 15275                         do{
 13866         
 15330         
 13867                 {
 15331                 {
 13868                     identifier_c param_name("IN2");
 15332                     identifier_c param_name("IN2");
 13869                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 15333                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 13870                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
 15334                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
       
 15335                     symbol_c *IN2_type_symbol = NULL;
 13871                     
 15336                     
 13872                     /* Get the value from a foo(<param_value>) style call */
 15337                     /* Get the value from a foo(<param_value>) style call */
 13873                     if (IN2_param_value == NULL)
 15338                     if (IN2_param_value == NULL)
 13874                       IN2_param_value = function_call_param_iterator.next();
 15339                       IN2_param_value = function_call_param_iterator.next();
 13875                     symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 15340                     if (IN2_param_value != NULL) {
 13876                     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 ;
 15341                       IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
       
 15342                       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 ;
       
 15343                     }
 13877                     
 15344                     
 13878                     
 15345                     
 13879                     {
 15346                     {
 13880                 
 15347                 
 13881                         function_name = (symbol_c*)(new pragma_c("__ge_"));
 15348                         function_name = (symbol_c*)(new pragma_c("__ge_"));
 13882                         
 15349                         
       
 15350                         if (nb_param < 2)
       
 15351                           nb_param = 2;
 13883                         char* nb_param_str = new char[10];
 15352                         char* nb_param_str = new char[10];
 13884                         sprintf(nb_param_str, "%d", nb_param);
 15353                         sprintf(nb_param_str, "%d", nb_param);
 13885                         ADD_PARAM_LIST((symbol_c*)(new integer_c((const char *)nb_param_str)), (symbol_c*)(new int_type_name_c()), function_param_iterator_c::direction_in)
 15354                         ADD_PARAM_LIST((symbol_c*)(new integer_c((const char *)nb_param_str)), (symbol_c*)(new int_type_name_c()), function_param_iterator_c::direction_in)
       
 15355                         
       
 15356                         if (IN1_type_symbol == NULL)
       
 15357                           IN1_type_symbol = last_type_symbol;
 13886                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
 15358                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
       
 15359                         
       
 15360                         if (IN2_type_symbol == NULL)
       
 15361                           IN2_type_symbol = last_type_symbol;
 13887                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 15362                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 13888                         
 15363                         
 13889                         int base_num = 3;
 15364                         int base_num = 3;
 13890                         symbol_c *param_value = NULL;
 15365                         symbol_c *param_value = NULL;
 13891                         do{
 15366                         do{
 13946         
 15421         
 13947                 {
 15422                 {
 13948                     identifier_c param_name("IN2");
 15423                     identifier_c param_name("IN2");
 13949                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 15424                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 13950                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
 15425                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
       
 15426                     symbol_c *IN2_type_symbol = NULL;
 13951                     
 15427                     
 13952                     /* Get the value from a foo(<param_value>) style call */
 15428                     /* Get the value from a foo(<param_value>) style call */
 13953                     if (IN2_param_value == NULL)
 15429                     if (IN2_param_value == NULL)
 13954                       IN2_param_value = function_call_param_iterator.next();
 15430                       IN2_param_value = function_call_param_iterator.next();
 13955                     symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 15431                     if (IN2_param_value != NULL) {
 13956                     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 ;
 15432                       IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
       
 15433                       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 ;
       
 15434                     }
 13957                     
 15435                     
 13958                     
 15436                     
 13959                     {
 15437                     {
 13960                 
 15438                 
 13961                         function_name = (symbol_c*)(new pragma_c("__eq_"));
 15439                         function_name = (symbol_c*)(new pragma_c("__eq_"));
 13962                         
 15440                         
       
 15441                         if (nb_param < 2)
       
 15442                           nb_param = 2;
 13963                         char* nb_param_str = new char[10];
 15443                         char* nb_param_str = new char[10];
 13964                         sprintf(nb_param_str, "%d", nb_param);
 15444                         sprintf(nb_param_str, "%d", nb_param);
 13965                         ADD_PARAM_LIST((symbol_c*)(new integer_c((const char *)nb_param_str)), (symbol_c*)(new int_type_name_c()), function_param_iterator_c::direction_in)
 15445                         ADD_PARAM_LIST((symbol_c*)(new integer_c((const char *)nb_param_str)), (symbol_c*)(new int_type_name_c()), function_param_iterator_c::direction_in)
       
 15446                         
       
 15447                         if (IN1_type_symbol == NULL)
       
 15448                           IN1_type_symbol = last_type_symbol;
 13966                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
 15449                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
       
 15450                         
       
 15451                         if (IN2_type_symbol == NULL)
       
 15452                           IN2_type_symbol = last_type_symbol;
 13967                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 15453                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 13968                         
 15454                         
 13969                         int base_num = 3;
 15455                         int base_num = 3;
 13970                         symbol_c *param_value = NULL;
 15456                         symbol_c *param_value = NULL;
 13971                         do{
 15457                         do{
 14026         
 15512         
 14027                 {
 15513                 {
 14028                     identifier_c param_name("IN2");
 15514                     identifier_c param_name("IN2");
 14029                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 15515                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 14030                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
 15516                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
       
 15517                     symbol_c *IN2_type_symbol = NULL;
 14031                     
 15518                     
 14032                     /* Get the value from a foo(<param_value>) style call */
 15519                     /* Get the value from a foo(<param_value>) style call */
 14033                     if (IN2_param_value == NULL)
 15520                     if (IN2_param_value == NULL)
 14034                       IN2_param_value = function_call_param_iterator.next();
 15521                       IN2_param_value = function_call_param_iterator.next();
 14035                     symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 15522                     if (IN2_param_value != NULL) {
 14036                     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 ;
 15523                       IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
       
 15524                       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 ;
       
 15525                     }
 14037                     
 15526                     
 14038                     
 15527                     
 14039                     {
 15528                     {
 14040                 
 15529                 
 14041                         function_name = (symbol_c*)(new pragma_c("__lt_"));
 15530                         function_name = (symbol_c*)(new pragma_c("__lt_"));
 14042                         
 15531                         
       
 15532                         if (nb_param < 2)
       
 15533                           nb_param = 2;
 14043                         char* nb_param_str = new char[10];
 15534                         char* nb_param_str = new char[10];
 14044                         sprintf(nb_param_str, "%d", nb_param);
 15535                         sprintf(nb_param_str, "%d", nb_param);
 14045                         ADD_PARAM_LIST((symbol_c*)(new integer_c((const char *)nb_param_str)), (symbol_c*)(new int_type_name_c()), function_param_iterator_c::direction_in)
 15536                         ADD_PARAM_LIST((symbol_c*)(new integer_c((const char *)nb_param_str)), (symbol_c*)(new int_type_name_c()), function_param_iterator_c::direction_in)
       
 15537                         
       
 15538                         if (IN1_type_symbol == NULL)
       
 15539                           IN1_type_symbol = last_type_symbol;
 14046                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
 15540                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
       
 15541                         
       
 15542                         if (IN2_type_symbol == NULL)
       
 15543                           IN2_type_symbol = last_type_symbol;
 14047                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 15544                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 14048                         
 15545                         
 14049                         int base_num = 3;
 15546                         int base_num = 3;
 14050                         symbol_c *param_value = NULL;
 15547                         symbol_c *param_value = NULL;
 14051                         do{
 15548                         do{
 14106         
 15603         
 14107                 {
 15604                 {
 14108                     identifier_c param_name("IN2");
 15605                     identifier_c param_name("IN2");
 14109                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 15606                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 14110                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
 15607                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
       
 15608                     symbol_c *IN2_type_symbol = NULL;
 14111                     
 15609                     
 14112                     /* Get the value from a foo(<param_value>) style call */
 15610                     /* Get the value from a foo(<param_value>) style call */
 14113                     if (IN2_param_value == NULL)
 15611                     if (IN2_param_value == NULL)
 14114                       IN2_param_value = function_call_param_iterator.next();
 15612                       IN2_param_value = function_call_param_iterator.next();
 14115                     symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 15613                     if (IN2_param_value != NULL) {
 14116                     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 ;
 15614                       IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
       
 15615                       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 ;
       
 15616                     }
 14117                     
 15617                     
 14118                     
 15618                     
 14119                     {
 15619                     {
 14120                 
 15620                 
 14121                         function_name = (symbol_c*)(new pragma_c("__le_"));
 15621                         function_name = (symbol_c*)(new pragma_c("__le_"));
 14122                         
 15622                         
       
 15623                         if (nb_param < 2)
       
 15624                           nb_param = 2;
 14123                         char* nb_param_str = new char[10];
 15625                         char* nb_param_str = new char[10];
 14124                         sprintf(nb_param_str, "%d", nb_param);
 15626                         sprintf(nb_param_str, "%d", nb_param);
 14125                         ADD_PARAM_LIST((symbol_c*)(new integer_c((const char *)nb_param_str)), (symbol_c*)(new int_type_name_c()), function_param_iterator_c::direction_in)
 15627                         ADD_PARAM_LIST((symbol_c*)(new integer_c((const char *)nb_param_str)), (symbol_c*)(new int_type_name_c()), function_param_iterator_c::direction_in)
       
 15628                         
       
 15629                         if (IN1_type_symbol == NULL)
       
 15630                           IN1_type_symbol = last_type_symbol;
 14126                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
 15631                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
       
 15632                         
       
 15633                         if (IN2_type_symbol == NULL)
       
 15634                           IN2_type_symbol = last_type_symbol;
 14127                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 15635                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 14128                         
 15636                         
 14129                         int base_num = 3;
 15637                         int base_num = 3;
 14130                         symbol_c *param_value = NULL;
 15638                         symbol_c *param_value = NULL;
 14131                         do{
 15639                         do{
 14186         
 15694         
 14187                 {
 15695                 {
 14188                     identifier_c param_name("IN2");
 15696                     identifier_c param_name("IN2");
 14189                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 15697                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 14190                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
 15698                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
       
 15699                     symbol_c *IN2_type_symbol = NULL;
 14191                     
 15700                     
 14192                     /* Get the value from a foo(<param_value>) style call */
 15701                     /* Get the value from a foo(<param_value>) style call */
 14193                     if (IN2_param_value == NULL)
 15702                     if (IN2_param_value == NULL)
 14194                       IN2_param_value = function_call_param_iterator.next();
 15703                       IN2_param_value = function_call_param_iterator.next();
 14195                     symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 15704                     if (IN2_param_value != NULL) {
 14196                     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 ;
 15705                       IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
       
 15706                       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 ;
       
 15707                     }
 14197                     
 15708                     
 14198                     
 15709                     
 14199                     {
 15710                     {
 14200                 
 15711                 
 14201                         function_name = (symbol_c*)(new pragma_c("__ne_"));
 15712                         function_name = (symbol_c*)(new pragma_c("__ne_"));
 14202                         
 15713                         
       
 15714                         if (nb_param < 2)
       
 15715                           nb_param = 2;
 14203                         char* nb_param_str = new char[10];
 15716                         char* nb_param_str = new char[10];
 14204                         sprintf(nb_param_str, "%d", nb_param);
 15717                         sprintf(nb_param_str, "%d", nb_param);
 14205                         ADD_PARAM_LIST((symbol_c*)(new integer_c((const char *)nb_param_str)), (symbol_c*)(new int_type_name_c()), function_param_iterator_c::direction_in)
 15718                         ADD_PARAM_LIST((symbol_c*)(new integer_c((const char *)nb_param_str)), (symbol_c*)(new int_type_name_c()), function_param_iterator_c::direction_in)
       
 15719                         
       
 15720                         if (IN1_type_symbol == NULL)
       
 15721                           IN1_type_symbol = last_type_symbol;
 14206                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
 15722                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
       
 15723                         
       
 15724                         if (IN2_type_symbol == NULL)
       
 15725                           IN2_type_symbol = last_type_symbol;
 14207                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 15726                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 14208                         
 15727                         
 14209                         int base_num = 3;
 15728                         int base_num = 3;
 14210                         symbol_c *param_value = NULL;
 15729                         symbol_c *param_value = NULL;
 14211                         do{
 15730                         do{
 14259             symbol_c *IN_param_value = &this->default_variable_name;
 15778             symbol_c *IN_param_value = &this->default_variable_name;
 14260         
 15779         
 14261             symbol_c *IN_type_symbol = param_data_type;
 15780             symbol_c *IN_type_symbol = param_data_type;
 14262             last_type_symbol = param_data_type;
 15781             last_type_symbol = param_data_type;
 14263             
 15782             
 14264             if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
 15783             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
 14265             {
 15784             {
 14266         
 15785         
 14267                 function_name = (symbol_c*)(new pragma_c("__len"));
 15786                 function_name = (symbol_c*)(new pragma_c("__len"));
       
 15787                 
       
 15788                 if (IN_type_symbol == NULL)
       
 15789                   IN_type_symbol = last_type_symbol;
 14268                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 15790                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 14269                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
 15791                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
 14270                 break;
 15792                 break;
 14271                 
 15793                 
 14272             }
 15794             }
 14290             symbol_c *IN_param_value = &this->default_variable_name;
 15812             symbol_c *IN_param_value = &this->default_variable_name;
 14291         
 15813         
 14292             symbol_c *IN_type_symbol = param_data_type;
 15814             symbol_c *IN_type_symbol = param_data_type;
 14293             last_type_symbol = param_data_type;
 15815             last_type_symbol = param_data_type;
 14294             
 15816             
 14295             if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
 15817             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
 14296             {
 15818             {
 14297         
 15819         
 14298                 {
 15820                 {
 14299                     identifier_c param_name("L");
 15821                     identifier_c param_name("L");
 14300                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 15822                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 14301                     symbol_c *L_param_value = function_call_param_iterator.search(&param_name);
 15823                     symbol_c *L_param_value = function_call_param_iterator.search(&param_name);
       
 15824                     symbol_c *L_type_symbol = NULL;
 14302                     
 15825                     
 14303                     /* Get the value from a foo(<param_value>) style call */
 15826                     /* Get the value from a foo(<param_value>) style call */
 14304                     if (L_param_value == NULL)
 15827                     if (L_param_value == NULL)
 14305                       L_param_value = function_call_param_iterator.next();
 15828                       L_param_value = function_call_param_iterator.next();
 14306                     symbol_c *L_type_symbol = search_expression_type->get_type(L_param_value);
 15829                     if (L_param_value != NULL) {
 14307                     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 ;
 15830                       L_type_symbol = search_expression_type->get_type(L_param_value);
 14308                     
 15831                       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 ;
 14309                     if(search_expression_type->is_integer_type(L_type_symbol))
 15832                     }
       
 15833                     
       
 15834                     if(L_type_symbol == NULL || search_expression_type->is_integer_type(L_type_symbol))
 14310                     {
 15835                     {
 14311                 
 15836                 
 14312                         function_name = (symbol_c*)(new pragma_c("__left"));
 15837                         function_name = (symbol_c*)(new pragma_c("__left"));
       
 15838                         
       
 15839                         if (IN_type_symbol == NULL)
       
 15840                           IN_type_symbol = last_type_symbol;
 14313                         ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 15841                         ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
       
 15842                         
       
 15843                         if (L_type_symbol == NULL)
       
 15844                           L_type_symbol = last_type_symbol;
 14314                         ADD_PARAM_LIST(L_param_value, L_type_symbol, function_param_iterator_c::direction_in)
 15845                         ADD_PARAM_LIST(L_param_value, L_type_symbol, function_param_iterator_c::direction_in)
 14315                         symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
 15846                         symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
 14316                         break;
 15847                         break;
 14317                         
 15848                         
 14318                     }
 15849                     }
 14342             symbol_c *IN_param_value = &this->default_variable_name;
 15873             symbol_c *IN_param_value = &this->default_variable_name;
 14343         
 15874         
 14344             symbol_c *IN_type_symbol = param_data_type;
 15875             symbol_c *IN_type_symbol = param_data_type;
 14345             last_type_symbol = param_data_type;
 15876             last_type_symbol = param_data_type;
 14346             
 15877             
 14347             if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
 15878             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
 14348             {
 15879             {
 14349         
 15880         
 14350                 {
 15881                 {
 14351                     identifier_c param_name("L");
 15882                     identifier_c param_name("L");
 14352                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 15883                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 14353                     symbol_c *L_param_value = function_call_param_iterator.search(&param_name);
 15884                     symbol_c *L_param_value = function_call_param_iterator.search(&param_name);
       
 15885                     symbol_c *L_type_symbol = NULL;
 14354                     
 15886                     
 14355                     /* Get the value from a foo(<param_value>) style call */
 15887                     /* Get the value from a foo(<param_value>) style call */
 14356                     if (L_param_value == NULL)
 15888                     if (L_param_value == NULL)
 14357                       L_param_value = function_call_param_iterator.next();
 15889                       L_param_value = function_call_param_iterator.next();
 14358                     symbol_c *L_type_symbol = search_expression_type->get_type(L_param_value);
 15890                     if (L_param_value != NULL) {
 14359                     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 ;
 15891                       L_type_symbol = search_expression_type->get_type(L_param_value);
 14360                     
 15892                       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 ;
 14361                     if(search_expression_type->is_integer_type(L_type_symbol))
 15893                     }
       
 15894                     
       
 15895                     if(L_type_symbol == NULL || search_expression_type->is_integer_type(L_type_symbol))
 14362                     {
 15896                     {
 14363                 
 15897                 
 14364                         function_name = (symbol_c*)(new pragma_c("__right"));
 15898                         function_name = (symbol_c*)(new pragma_c("__right"));
       
 15899                         
       
 15900                         if (IN_type_symbol == NULL)
       
 15901                           IN_type_symbol = last_type_symbol;
 14365                         ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 15902                         ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
       
 15903                         
       
 15904                         if (L_type_symbol == NULL)
       
 15905                           L_type_symbol = last_type_symbol;
 14366                         ADD_PARAM_LIST(L_param_value, L_type_symbol, function_param_iterator_c::direction_in)
 15906                         ADD_PARAM_LIST(L_param_value, L_type_symbol, function_param_iterator_c::direction_in)
 14367                         symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
 15907                         symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
 14368                         break;
 15908                         break;
 14369                         
 15909                         
 14370                     }
 15910                     }
 14394             symbol_c *IN_param_value = &this->default_variable_name;
 15934             symbol_c *IN_param_value = &this->default_variable_name;
 14395         
 15935         
 14396             symbol_c *IN_type_symbol = param_data_type;
 15936             symbol_c *IN_type_symbol = param_data_type;
 14397             last_type_symbol = param_data_type;
 15937             last_type_symbol = param_data_type;
 14398             
 15938             
 14399             if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
 15939             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
 14400             {
 15940             {
 14401         
 15941         
 14402                 {
 15942                 {
 14403                     identifier_c param_name("L");
 15943                     identifier_c param_name("L");
 14404                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 15944                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 14405                     symbol_c *L_param_value = function_call_param_iterator.search(&param_name);
 15945                     symbol_c *L_param_value = function_call_param_iterator.search(&param_name);
       
 15946                     symbol_c *L_type_symbol = NULL;
 14406                     
 15947                     
 14407                     /* Get the value from a foo(<param_value>) style call */
 15948                     /* Get the value from a foo(<param_value>) style call */
 14408                     if (L_param_value == NULL)
 15949                     if (L_param_value == NULL)
 14409                       L_param_value = function_call_param_iterator.next();
 15950                       L_param_value = function_call_param_iterator.next();
 14410                     symbol_c *L_type_symbol = search_expression_type->get_type(L_param_value);
 15951                     if (L_param_value != NULL) {
 14411                     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 ;
 15952                       L_type_symbol = search_expression_type->get_type(L_param_value);
 14412                     
 15953                       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 ;
 14413                     if(search_expression_type->is_integer_type(L_type_symbol))
 15954                     }
       
 15955                     
       
 15956                     if(L_type_symbol == NULL || search_expression_type->is_integer_type(L_type_symbol))
 14414                     {
 15957                     {
 14415                 
 15958                 
 14416                         {
 15959                         {
 14417                             identifier_c param_name("P");
 15960                             identifier_c param_name("P");
 14418                             /* 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 */
 14419                             symbol_c *P_param_value = function_call_param_iterator.search(&param_name);
 15962                             symbol_c *P_param_value = function_call_param_iterator.search(&param_name);
       
 15963                             symbol_c *P_type_symbol = NULL;
 14420                             
 15964                             
 14421                             /* Get the value from a foo(<param_value>) style call */
 15965                             /* Get the value from a foo(<param_value>) style call */
 14422                             if (P_param_value == NULL)
 15966                             if (P_param_value == NULL)
 14423                               P_param_value = function_call_param_iterator.next();
 15967                               P_param_value = function_call_param_iterator.next();
 14424                             symbol_c *P_type_symbol = search_expression_type->get_type(P_param_value);
 15968                             if (P_param_value != NULL) {
 14425                             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 ;
 15969                               P_type_symbol = search_expression_type->get_type(P_param_value);
       
 15970                               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 ;
       
 15971                             }
 14426                             
 15972                             
 14427                             if(search_expression_type->is_integer_type(P_type_symbol))
 15973                             if(P_type_symbol == NULL || search_expression_type->is_integer_type(P_type_symbol))
 14428                             {
 15974                             {
 14429                         
 15975                         
 14430                                 function_name = (symbol_c*)(new pragma_c("__mid"));
 15976                                 function_name = (symbol_c*)(new pragma_c("__mid"));
       
 15977                                 
       
 15978                                 if (IN_type_symbol == NULL)
       
 15979                                   IN_type_symbol = last_type_symbol;
 14431                                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 15980                                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
       
 15981                                 
       
 15982                                 if (L_type_symbol == NULL)
       
 15983                                   L_type_symbol = last_type_symbol;
 14432                                 ADD_PARAM_LIST(L_param_value, L_type_symbol, function_param_iterator_c::direction_in)
 15984                                 ADD_PARAM_LIST(L_param_value, L_type_symbol, function_param_iterator_c::direction_in)
       
 15985                                 
       
 15986                                 if (P_type_symbol == NULL)
       
 15987                                   P_type_symbol = last_type_symbol;
 14433                                 ADD_PARAM_LIST(P_param_value, P_type_symbol, function_param_iterator_c::direction_in)
 15988                                 ADD_PARAM_LIST(P_param_value, P_type_symbol, function_param_iterator_c::direction_in)
 14434                                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
 15989                                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
 14435                                 break;
 15990                                 break;
 14436                                 
 15991                                 
 14437                             }
 15992                             }
 14467             symbol_c *IN1_param_value = &this->default_variable_name;
 16022             symbol_c *IN1_param_value = &this->default_variable_name;
 14468         
 16023         
 14469             symbol_c *IN1_type_symbol = param_data_type;
 16024             symbol_c *IN1_type_symbol = param_data_type;
 14470             last_type_symbol = param_data_type;
 16025             last_type_symbol = param_data_type;
 14471             
 16026             
 14472             if(search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol))
 16027             if(IN1_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol))
 14473             {
 16028             {
 14474         
 16029         
 14475                 {
 16030                 {
 14476                     identifier_c param_name("IN2");
 16031                     identifier_c param_name("IN2");
 14477                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 16032                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 14478                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
 16033                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
       
 16034                     symbol_c *IN2_type_symbol = NULL;
 14479                     
 16035                     
 14480                     /* Get the value from a foo(<param_value>) style call */
 16036                     /* Get the value from a foo(<param_value>) style call */
 14481                     if (IN2_param_value == NULL)
 16037                     if (IN2_param_value == NULL)
 14482                       IN2_param_value = function_call_param_iterator.next();
 16038                       IN2_param_value = function_call_param_iterator.next();
 14483                     symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 16039                     if (IN2_param_value != NULL) {
 14484                     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 ;
 16040                       IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 14485                     
 16041                       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 ;
 14486                     if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol))
 16042                     }
       
 16043                     
       
 16044                     if(IN2_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol))
 14487                     {
 16045                     {
 14488                 
 16046                 
 14489                         function_name = (symbol_c*)(new pragma_c("__time_add"));
 16047                         function_name = (symbol_c*)(new pragma_c("__time_add"));
       
 16048                         
       
 16049                         if (IN1_type_symbol == NULL)
       
 16050                           IN1_type_symbol = last_type_symbol;
 14490                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
 16051                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
       
 16052                         
       
 16053                         if (IN2_type_symbol == NULL)
       
 16054                           IN2_type_symbol = last_type_symbol;
 14491                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 16055                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 14492                         symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
 16056                         symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
 14493                         break;
 16057                         break;
 14494                         
 16058                         
 14495                     }
 16059                     }
 14498                     ERROR;
 16062                     ERROR;
 14499                 }
 16063                 }
 14500                 
 16064                 
 14501             }
 16065             }
 14502             
 16066             
 14503             if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
 16067             if(IN1_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
 14504             {
 16068             {
 14505         
 16069         
 14506                 {
 16070                 {
 14507                     identifier_c param_name("IN2");
 16071                     identifier_c param_name("IN2");
 14508                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 16072                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 14509                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
 16073                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
       
 16074                     symbol_c *IN2_type_symbol = NULL;
 14510                     
 16075                     
 14511                     /* Get the value from a foo(<param_value>) style call */
 16076                     /* Get the value from a foo(<param_value>) style call */
 14512                     if (IN2_param_value == NULL)
 16077                     if (IN2_param_value == NULL)
 14513                       IN2_param_value = function_call_param_iterator.next();
 16078                       IN2_param_value = function_call_param_iterator.next();
 14514                     symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 16079                     if (IN2_param_value != NULL) {
 14515                     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 ;
 16080                       IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 14516                     
 16081                       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 ;
 14517                     if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
 16082                     }
       
 16083                     
       
 16084                     if(IN2_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
 14518                     {
 16085                     {
 14519                 
 16086                 
 14520                         function_name = (symbol_c*)(new pragma_c("__concat"));
 16087                         function_name = (symbol_c*)(new pragma_c("__concat"));
 14521                         
 16088                         
       
 16089                         if (nb_param < 2)
       
 16090                           nb_param = 2;
 14522                         char* nb_param_str = new char[10];
 16091                         char* nb_param_str = new char[10];
 14523                         sprintf(nb_param_str, "%d", nb_param);
 16092                         sprintf(nb_param_str, "%d", nb_param);
 14524                         ADD_PARAM_LIST((symbol_c*)(new integer_c((const char *)nb_param_str)), (symbol_c*)(new int_type_name_c()), function_param_iterator_c::direction_in)
 16093                         ADD_PARAM_LIST((symbol_c*)(new integer_c((const char *)nb_param_str)), (symbol_c*)(new int_type_name_c()), function_param_iterator_c::direction_in)
       
 16094                         
       
 16095                         if (IN1_type_symbol == NULL)
       
 16096                           IN1_type_symbol = last_type_symbol;
 14525                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
 16097                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
       
 16098                         
       
 16099                         if (IN2_type_symbol == NULL)
       
 16100                           IN2_type_symbol = last_type_symbol;
 14526                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 16101                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 14527                         
 16102                         
 14528                         int base_num = 3;
 16103                         int base_num = 3;
 14529                         symbol_c *param_value = NULL;
 16104                         symbol_c *param_value = NULL;
 14530                         do{
 16105                         do{
 14577             symbol_c *IN1_param_value = &this->default_variable_name;
 16152             symbol_c *IN1_param_value = &this->default_variable_name;
 14578         
 16153         
 14579             symbol_c *IN1_type_symbol = param_data_type;
 16154             symbol_c *IN1_type_symbol = param_data_type;
 14580             last_type_symbol = param_data_type;
 16155             last_type_symbol = param_data_type;
 14581             
 16156             
 14582             if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
 16157             if(IN1_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
 14583             {
 16158             {
 14584         
 16159         
 14585                 {
 16160                 {
 14586                     identifier_c param_name("IN2");
 16161                     identifier_c param_name("IN2");
 14587                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 16162                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 14588                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
 16163                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
       
 16164                     symbol_c *IN2_type_symbol = NULL;
 14589                     
 16165                     
 14590                     /* Get the value from a foo(<param_value>) style call */
 16166                     /* Get the value from a foo(<param_value>) style call */
 14591                     if (IN2_param_value == NULL)
 16167                     if (IN2_param_value == NULL)
 14592                       IN2_param_value = function_call_param_iterator.next();
 16168                       IN2_param_value = function_call_param_iterator.next();
 14593                     symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 16169                     if (IN2_param_value != NULL) {
 14594                     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 ;
 16170                       IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 14595                     
 16171                       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 ;
 14596                     if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
 16172                     }
       
 16173                     
       
 16174                     if(IN2_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
 14597                     {
 16175                     {
 14598                 
 16176                 
 14599                         {
 16177                         {
 14600                             identifier_c param_name("P");
 16178                             identifier_c param_name("P");
 14601                             /* Get the value from a foo(<param_name> = <param_value>) style call */
 16179                             /* Get the value from a foo(<param_name> = <param_value>) style call */
 14602                             symbol_c *P_param_value = function_call_param_iterator.search(&param_name);
 16180                             symbol_c *P_param_value = function_call_param_iterator.search(&param_name);
       
 16181                             symbol_c *P_type_symbol = NULL;
 14603                             
 16182                             
 14604                             /* Get the value from a foo(<param_value>) style call */
 16183                             /* Get the value from a foo(<param_value>) style call */
 14605                             if (P_param_value == NULL)
 16184                             if (P_param_value == NULL)
 14606                               P_param_value = function_call_param_iterator.next();
 16185                               P_param_value = function_call_param_iterator.next();
 14607                             symbol_c *P_type_symbol = search_expression_type->get_type(P_param_value);
 16186                             if (P_param_value != NULL) {
 14608                             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 ;
 16187                               P_type_symbol = search_expression_type->get_type(P_param_value);
       
 16188                               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 ;
       
 16189                             }
 14609                             
 16190                             
 14610                             if(search_expression_type->is_integer_type(P_type_symbol))
 16191                             if(P_type_symbol == NULL || search_expression_type->is_integer_type(P_type_symbol))
 14611                             {
 16192                             {
 14612                         
 16193                         
 14613                                 function_name = (symbol_c*)(new pragma_c("__insert"));
 16194                                 function_name = (symbol_c*)(new pragma_c("__insert"));
       
 16195                                 
       
 16196                                 if (IN1_type_symbol == NULL)
       
 16197                                   IN1_type_symbol = last_type_symbol;
 14614                                 ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
 16198                                 ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
       
 16199                                 
       
 16200                                 if (IN2_type_symbol == NULL)
       
 16201                                   IN2_type_symbol = last_type_symbol;
 14615                                 ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 16202                                 ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
       
 16203                                 
       
 16204                                 if (P_type_symbol == NULL)
       
 16205                                   P_type_symbol = last_type_symbol;
 14616                                 ADD_PARAM_LIST(P_param_value, P_type_symbol, function_param_iterator_c::direction_in)
 16206                                 ADD_PARAM_LIST(P_param_value, P_type_symbol, function_param_iterator_c::direction_in)
 14617                                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
 16207                                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
 14618                                 break;
 16208                                 break;
 14619                                 
 16209                                 
 14620                             }
 16210                             }
 14650             symbol_c *IN_param_value = &this->default_variable_name;
 16240             symbol_c *IN_param_value = &this->default_variable_name;
 14651         
 16241         
 14652             symbol_c *IN_type_symbol = param_data_type;
 16242             symbol_c *IN_type_symbol = param_data_type;
 14653             last_type_symbol = param_data_type;
 16243             last_type_symbol = param_data_type;
 14654             
 16244             
 14655             if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
 16245             if(IN_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
 14656             {
 16246             {
 14657         
 16247         
 14658                 {
 16248                 {
 14659                     identifier_c param_name("L");
 16249                     identifier_c param_name("L");
 14660                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 16250                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 14661                     symbol_c *L_param_value = function_call_param_iterator.search(&param_name);
 16251                     symbol_c *L_param_value = function_call_param_iterator.search(&param_name);
       
 16252                     symbol_c *L_type_symbol = NULL;
 14662                     
 16253                     
 14663                     /* Get the value from a foo(<param_value>) style call */
 16254                     /* Get the value from a foo(<param_value>) style call */
 14664                     if (L_param_value == NULL)
 16255                     if (L_param_value == NULL)
 14665                       L_param_value = function_call_param_iterator.next();
 16256                       L_param_value = function_call_param_iterator.next();
 14666                     symbol_c *L_type_symbol = search_expression_type->get_type(L_param_value);
 16257                     if (L_param_value != NULL) {
 14667                     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 ;
 16258                       L_type_symbol = search_expression_type->get_type(L_param_value);
 14668                     
 16259                       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 ;
 14669                     if(search_expression_type->is_integer_type(L_type_symbol))
 16260                     }
       
 16261                     
       
 16262                     if(L_type_symbol == NULL || search_expression_type->is_integer_type(L_type_symbol))
 14670                     {
 16263                     {
 14671                 
 16264                 
 14672                         {
 16265                         {
 14673                             identifier_c param_name("P");
 16266                             identifier_c param_name("P");
 14674                             /* Get the value from a foo(<param_name> = <param_value>) style call */
 16267                             /* Get the value from a foo(<param_name> = <param_value>) style call */
 14675                             symbol_c *P_param_value = function_call_param_iterator.search(&param_name);
 16268                             symbol_c *P_param_value = function_call_param_iterator.search(&param_name);
       
 16269                             symbol_c *P_type_symbol = NULL;
 14676                             
 16270                             
 14677                             /* Get the value from a foo(<param_value>) style call */
 16271                             /* Get the value from a foo(<param_value>) style call */
 14678                             if (P_param_value == NULL)
 16272                             if (P_param_value == NULL)
 14679                               P_param_value = function_call_param_iterator.next();
 16273                               P_param_value = function_call_param_iterator.next();
 14680                             symbol_c *P_type_symbol = search_expression_type->get_type(P_param_value);
 16274                             if (P_param_value != NULL) {
 14681                             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 ;
 16275                               P_type_symbol = search_expression_type->get_type(P_param_value);
       
 16276                               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 ;
       
 16277                             }
 14682                             
 16278                             
 14683                             if(search_expression_type->is_integer_type(P_type_symbol))
 16279                             if(P_type_symbol == NULL || search_expression_type->is_integer_type(P_type_symbol))
 14684                             {
 16280                             {
 14685                         
 16281                         
 14686                                 function_name = (symbol_c*)(new pragma_c("__delete"));
 16282                                 function_name = (symbol_c*)(new pragma_c("__delete"));
       
 16283                                 
       
 16284                                 if (IN_type_symbol == NULL)
       
 16285                                   IN_type_symbol = last_type_symbol;
 14687                                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
 16286                                 ADD_PARAM_LIST(IN_param_value, IN_type_symbol, function_param_iterator_c::direction_in)
       
 16287                                 
       
 16288                                 if (L_type_symbol == NULL)
       
 16289                                   L_type_symbol = last_type_symbol;
 14688                                 ADD_PARAM_LIST(L_param_value, L_type_symbol, function_param_iterator_c::direction_in)
 16290                                 ADD_PARAM_LIST(L_param_value, L_type_symbol, function_param_iterator_c::direction_in)
       
 16291                                 
       
 16292                                 if (P_type_symbol == NULL)
       
 16293                                   P_type_symbol = last_type_symbol;
 14689                                 ADD_PARAM_LIST(P_param_value, P_type_symbol, function_param_iterator_c::direction_in)
 16294                                 ADD_PARAM_LIST(P_param_value, P_type_symbol, function_param_iterator_c::direction_in)
 14690                                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
 16295                                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
 14691                                 break;
 16296                                 break;
 14692                                 
 16297                                 
 14693                             }
 16298                             }
 14723             symbol_c *IN1_param_value = &this->default_variable_name;
 16328             symbol_c *IN1_param_value = &this->default_variable_name;
 14724         
 16329         
 14725             symbol_c *IN1_type_symbol = param_data_type;
 16330             symbol_c *IN1_type_symbol = param_data_type;
 14726             last_type_symbol = param_data_type;
 16331             last_type_symbol = param_data_type;
 14727             
 16332             
 14728             if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
 16333             if(IN1_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
 14729             {
 16334             {
 14730         
 16335         
 14731                 {
 16336                 {
 14732                     identifier_c param_name("IN2");
 16337                     identifier_c param_name("IN2");
 14733                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 16338                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 14734                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
 16339                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
       
 16340                     symbol_c *IN2_type_symbol = NULL;
 14735                     
 16341                     
 14736                     /* Get the value from a foo(<param_value>) style call */
 16342                     /* Get the value from a foo(<param_value>) style call */
 14737                     if (IN2_param_value == NULL)
 16343                     if (IN2_param_value == NULL)
 14738                       IN2_param_value = function_call_param_iterator.next();
 16344                       IN2_param_value = function_call_param_iterator.next();
 14739                     symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 16345                     if (IN2_param_value != NULL) {
 14740                     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 ;
 16346                       IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 14741                     
 16347                       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 ;
 14742                     if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
 16348                     }
       
 16349                     
       
 16350                     if(IN2_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
 14743                     {
 16351                     {
 14744                 
 16352                 
 14745                         {
 16353                         {
 14746                             identifier_c param_name("L");
 16354                             identifier_c param_name("L");
 14747                             /* Get the value from a foo(<param_name> = <param_value>) style call */
 16355                             /* Get the value from a foo(<param_name> = <param_value>) style call */
 14748                             symbol_c *L_param_value = function_call_param_iterator.search(&param_name);
 16356                             symbol_c *L_param_value = function_call_param_iterator.search(&param_name);
       
 16357                             symbol_c *L_type_symbol = NULL;
 14749                             
 16358                             
 14750                             /* Get the value from a foo(<param_value>) style call */
 16359                             /* Get the value from a foo(<param_value>) style call */
 14751                             if (L_param_value == NULL)
 16360                             if (L_param_value == NULL)
 14752                               L_param_value = function_call_param_iterator.next();
 16361                               L_param_value = function_call_param_iterator.next();
 14753                             symbol_c *L_type_symbol = search_expression_type->get_type(L_param_value);
 16362                             if (L_param_value != NULL) {
 14754                             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 ;
 16363                               L_type_symbol = search_expression_type->get_type(L_param_value);
       
 16364                               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 ;
       
 16365                             }
 14755                             
 16366                             
 14756                             if(search_expression_type->is_integer_type(L_type_symbol))
 16367                             if(L_type_symbol == NULL || search_expression_type->is_integer_type(L_type_symbol))
 14757                             {
 16368                             {
 14758                         
 16369                         
 14759                                 {
 16370                                 {
 14760                                     identifier_c param_name("P");
 16371                                     identifier_c param_name("P");
 14761                                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 16372                                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 14762                                     symbol_c *P_param_value = function_call_param_iterator.search(&param_name);
 16373                                     symbol_c *P_param_value = function_call_param_iterator.search(&param_name);
       
 16374                                     symbol_c *P_type_symbol = NULL;
 14763                                     
 16375                                     
 14764                                     /* Get the value from a foo(<param_value>) style call */
 16376                                     /* Get the value from a foo(<param_value>) style call */
 14765                                     if (P_param_value == NULL)
 16377                                     if (P_param_value == NULL)
 14766                                       P_param_value = function_call_param_iterator.next();
 16378                                       P_param_value = function_call_param_iterator.next();
 14767                                     symbol_c *P_type_symbol = search_expression_type->get_type(P_param_value);
 16379                                     if (P_param_value != NULL) {
 14768                                     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 ;
 16380                                       P_type_symbol = search_expression_type->get_type(P_param_value);
       
 16381                                       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 ;
       
 16382                                     }
 14769                                     
 16383                                     
 14770                                     if(search_expression_type->is_integer_type(P_type_symbol))
 16384                                     if(P_type_symbol == NULL || search_expression_type->is_integer_type(P_type_symbol))
 14771                                     {
 16385                                     {
 14772                                 
 16386                                 
 14773                                         function_name = (symbol_c*)(new pragma_c("__replace"));
 16387                                         function_name = (symbol_c*)(new pragma_c("__replace"));
       
 16388                                         
       
 16389                                         if (IN1_type_symbol == NULL)
       
 16390                                           IN1_type_symbol = last_type_symbol;
 14774                                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
 16391                                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
       
 16392                                         
       
 16393                                         if (IN2_type_symbol == NULL)
       
 16394                                           IN2_type_symbol = last_type_symbol;
 14775                                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 16395                                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
       
 16396                                         
       
 16397                                         if (L_type_symbol == NULL)
       
 16398                                           L_type_symbol = last_type_symbol;
 14776                                         ADD_PARAM_LIST(L_param_value, L_type_symbol, function_param_iterator_c::direction_in)
 16399                                         ADD_PARAM_LIST(L_param_value, L_type_symbol, function_param_iterator_c::direction_in)
       
 16400                                         
       
 16401                                         if (P_type_symbol == NULL)
       
 16402                                           P_type_symbol = last_type_symbol;
 14777                                         ADD_PARAM_LIST(P_param_value, P_type_symbol, function_param_iterator_c::direction_in)
 16403                                         ADD_PARAM_LIST(P_param_value, P_type_symbol, function_param_iterator_c::direction_in)
 14778                                         symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
 16404                                         symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
 14779                                         break;
 16405                                         break;
 14780                                         
 16406                                         
 14781                                     }
 16407                                     }
 14817             symbol_c *IN1_param_value = &this->default_variable_name;
 16443             symbol_c *IN1_param_value = &this->default_variable_name;
 14818         
 16444         
 14819             symbol_c *IN1_type_symbol = param_data_type;
 16445             symbol_c *IN1_type_symbol = param_data_type;
 14820             last_type_symbol = param_data_type;
 16446             last_type_symbol = param_data_type;
 14821             
 16447             
 14822             if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
 16448             if(IN1_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
 14823             {
 16449             {
 14824         
 16450         
 14825                 {
 16451                 {
 14826                     identifier_c param_name("IN2");
 16452                     identifier_c param_name("IN2");
 14827                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 16453                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 14828                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
 16454                     symbol_c *IN2_param_value = function_call_param_iterator.search(&param_name);
       
 16455                     symbol_c *IN2_type_symbol = NULL;
 14829                     
 16456                     
 14830                     /* Get the value from a foo(<param_value>) style call */
 16457                     /* Get the value from a foo(<param_value>) style call */
 14831                     if (IN2_param_value == NULL)
 16458                     if (IN2_param_value == NULL)
 14832                       IN2_param_value = function_call_param_iterator.next();
 16459                       IN2_param_value = function_call_param_iterator.next();
 14833                     symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 16460                     if (IN2_param_value != NULL) {
 14834                     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 ;
 16461                       IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 14835                     
 16462                       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 ;
 14836                     if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
 16463                     }
       
 16464                     
       
 16465                     if(IN2_type_symbol == NULL || search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
 14837                     {
 16466                     {
 14838                 
 16467                 
 14839                         function_name = (symbol_c*)(new pragma_c("__find"));
 16468                         function_name = (symbol_c*)(new pragma_c("__find"));
       
 16469                         
       
 16470                         if (IN1_type_symbol == NULL)
       
 16471                           IN1_type_symbol = last_type_symbol;
 14840                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
 16472                         ADD_PARAM_LIST(IN1_param_value, IN1_type_symbol, function_param_iterator_c::direction_in)
       
 16473                         
       
 16474                         if (IN2_type_symbol == NULL)
       
 16475                           IN2_type_symbol = last_type_symbol;
 14841                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 16476                         ADD_PARAM_LIST(IN2_param_value, IN2_type_symbol, function_param_iterator_c::direction_in)
 14842                         symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
 16477                         symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
 14843                         break;
 16478                         break;
 14844                         
 16479                         
 14845                     }
 16480                     }