stage4/generate_cc/il_code_gen.c
changeset 42 b45c7f34dec1
parent 41 8998c8b24b60
child 43 37dd4e2fd2ec
equal deleted inserted replaced
41:8998c8b24b60 42:b45c7f34dec1
    17             symbol_c *IN_param_value = &this->default_variable_name;
    17             symbol_c *IN_param_value = &this->default_variable_name;
    18         
    18         
    19             symbol_c *IN_type_symbol = param_data_type;
    19             symbol_c *IN_type_symbol = param_data_type;
    20             last_type_symbol = param_data_type;
    20             last_type_symbol = param_data_type;
    21             
    21             
    22             if (typeid(*last_type_symbol) == typeid(bool_type_name_c))
    22             if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
    23             {
    23             {
    24         
    24         
    25                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
    25                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
    26                 s4o.print("(");
    26                 s4o.print("(");
    27                 return_type_symbol->accept(*this);
    27                 return_type_symbol->accept(*this);
    49             symbol_c *IN_param_value = &this->default_variable_name;
    49             symbol_c *IN_param_value = &this->default_variable_name;
    50         
    50         
    51             symbol_c *IN_type_symbol = param_data_type;
    51             symbol_c *IN_type_symbol = param_data_type;
    52             last_type_symbol = param_data_type;
    52             last_type_symbol = param_data_type;
    53             
    53             
    54             if (typeid(*last_type_symbol) == typeid(bool_type_name_c))
    54             if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
    55             {
    55             {
    56         
    56         
    57                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
    57                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
    58                 s4o.print("(");
    58                 s4o.print("(");
    59                 return_type_symbol->accept(*this);
    59                 return_type_symbol->accept(*this);
    81             symbol_c *IN_param_value = &this->default_variable_name;
    81             symbol_c *IN_param_value = &this->default_variable_name;
    82         
    82         
    83             symbol_c *IN_type_symbol = param_data_type;
    83             symbol_c *IN_type_symbol = param_data_type;
    84             last_type_symbol = param_data_type;
    84             last_type_symbol = param_data_type;
    85             
    85             
    86             if (typeid(*last_type_symbol) == typeid(bool_type_name_c))
    86             if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
    87             {
    87             {
    88         
    88         
    89                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
    89                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
    90                 s4o.print("(");
    90                 s4o.print("(");
    91                 return_type_symbol->accept(*this);
    91                 return_type_symbol->accept(*this);
   113             symbol_c *IN_param_value = &this->default_variable_name;
   113             symbol_c *IN_param_value = &this->default_variable_name;
   114         
   114         
   115             symbol_c *IN_type_symbol = param_data_type;
   115             symbol_c *IN_type_symbol = param_data_type;
   116             last_type_symbol = param_data_type;
   116             last_type_symbol = param_data_type;
   117             
   117             
   118             if (typeid(*last_type_symbol) == typeid(bool_type_name_c))
   118             if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
   119             {
   119             {
   120         
   120         
   121                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
   121                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
   122                 s4o.print("(");
   122                 s4o.print("(");
   123                 return_type_symbol->accept(*this);
   123                 return_type_symbol->accept(*this);
   145             symbol_c *IN_param_value = &this->default_variable_name;
   145             symbol_c *IN_param_value = &this->default_variable_name;
   146         
   146         
   147             symbol_c *IN_type_symbol = param_data_type;
   147             symbol_c *IN_type_symbol = param_data_type;
   148             last_type_symbol = param_data_type;
   148             last_type_symbol = param_data_type;
   149             
   149             
   150             if (typeid(*last_type_symbol) == typeid(bool_type_name_c))
   150             if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
   151             {
   151             {
   152         
   152         
   153                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
   153                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
   154                 s4o.print("(");
   154                 s4o.print("(");
   155                 return_type_symbol->accept(*this);
   155                 return_type_symbol->accept(*this);
   177             symbol_c *IN_param_value = &this->default_variable_name;
   177             symbol_c *IN_param_value = &this->default_variable_name;
   178         
   178         
   179             symbol_c *IN_type_symbol = param_data_type;
   179             symbol_c *IN_type_symbol = param_data_type;
   180             last_type_symbol = param_data_type;
   180             last_type_symbol = param_data_type;
   181             
   181             
   182             if (typeid(*last_type_symbol) == typeid(bool_type_name_c))
   182             if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
   183             {
   183             {
   184         
   184         
   185                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
   185                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
   186                 s4o.print("(");
   186                 s4o.print("(");
   187                 return_type_symbol->accept(*this);
   187                 return_type_symbol->accept(*this);
   209             symbol_c *IN_param_value = &this->default_variable_name;
   209             symbol_c *IN_param_value = &this->default_variable_name;
   210         
   210         
   211             symbol_c *IN_type_symbol = param_data_type;
   211             symbol_c *IN_type_symbol = param_data_type;
   212             last_type_symbol = param_data_type;
   212             last_type_symbol = param_data_type;
   213             
   213             
   214             if (typeid(*last_type_symbol) == typeid(bool_type_name_c))
   214             if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
   215             {
   215             {
   216         
   216         
   217                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
   217                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
   218                 s4o.print("(");
   218                 s4o.print("(");
   219                 return_type_symbol->accept(*this);
   219                 return_type_symbol->accept(*this);
   241             symbol_c *IN_param_value = &this->default_variable_name;
   241             symbol_c *IN_param_value = &this->default_variable_name;
   242         
   242         
   243             symbol_c *IN_type_symbol = param_data_type;
   243             symbol_c *IN_type_symbol = param_data_type;
   244             last_type_symbol = param_data_type;
   244             last_type_symbol = param_data_type;
   245             
   245             
   246             if (typeid(*last_type_symbol) == typeid(bool_type_name_c))
   246             if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
   247             {
   247             {
   248         
   248         
   249                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
   249                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
   250                 s4o.print("(");
   250                 s4o.print("(");
   251                 return_type_symbol->accept(*this);
   251                 return_type_symbol->accept(*this);
   273             symbol_c *IN_param_value = &this->default_variable_name;
   273             symbol_c *IN_param_value = &this->default_variable_name;
   274         
   274         
   275             symbol_c *IN_type_symbol = param_data_type;
   275             symbol_c *IN_type_symbol = param_data_type;
   276             last_type_symbol = param_data_type;
   276             last_type_symbol = param_data_type;
   277             
   277             
   278             if (typeid(*last_type_symbol) == typeid(bool_type_name_c))
   278             if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
   279             {
   279             {
   280         
   280         
   281                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
   281                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
   282                 s4o.print("(");
   282                 s4o.print("(");
   283                 return_type_symbol->accept(*this);
   283                 return_type_symbol->accept(*this);
   305             symbol_c *IN_param_value = &this->default_variable_name;
   305             symbol_c *IN_param_value = &this->default_variable_name;
   306         
   306         
   307             symbol_c *IN_type_symbol = param_data_type;
   307             symbol_c *IN_type_symbol = param_data_type;
   308             last_type_symbol = param_data_type;
   308             last_type_symbol = param_data_type;
   309             
   309             
   310             if (typeid(*last_type_symbol) == typeid(bool_type_name_c))
   310             if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
   311             {
   311             {
   312         
   312         
   313                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
   313                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
   314                 s4o.print("(");
   314                 s4o.print("(");
   315                 return_type_symbol->accept(*this);
   315                 return_type_symbol->accept(*this);
   337             symbol_c *IN_param_value = &this->default_variable_name;
   337             symbol_c *IN_param_value = &this->default_variable_name;
   338         
   338         
   339             symbol_c *IN_type_symbol = param_data_type;
   339             symbol_c *IN_type_symbol = param_data_type;
   340             last_type_symbol = param_data_type;
   340             last_type_symbol = param_data_type;
   341             
   341             
   342             if (typeid(*last_type_symbol) == typeid(bool_type_name_c))
   342             if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
   343             {
   343             {
   344         
   344         
   345                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
   345                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
   346                 s4o.print("(");
   346                 s4o.print("(");
   347                 return_type_symbol->accept(*this);
   347                 return_type_symbol->accept(*this);
   370             symbol_c *IN_param_value = &this->default_variable_name;
   370             symbol_c *IN_param_value = &this->default_variable_name;
   371         
   371         
   372             symbol_c *IN_type_symbol = param_data_type;
   372             symbol_c *IN_type_symbol = param_data_type;
   373             last_type_symbol = param_data_type;
   373             last_type_symbol = param_data_type;
   374             
   374             
   375             if (typeid(*last_type_symbol) == typeid(bool_type_name_c))
   375             if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
   376             {
   376             {
   377         
   377         
   378                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
   378                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
   379                 s4o.print("(");
   379                 s4o.print("(");
   380                 return_type_symbol->accept(*this);
   380                 return_type_symbol->accept(*this);
   403             symbol_c *IN_param_value = &this->default_variable_name;
   403             symbol_c *IN_param_value = &this->default_variable_name;
   404         
   404         
   405             symbol_c *IN_type_symbol = param_data_type;
   405             symbol_c *IN_type_symbol = param_data_type;
   406             last_type_symbol = param_data_type;
   406             last_type_symbol = param_data_type;
   407             
   407             
   408             if (typeid(*last_type_symbol) == typeid(bool_type_name_c))
   408             if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
   409             {
   409             {
   410         
   410         
   411                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
   411                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
   412                 s4o.print("(");
   412                 s4o.print("(");
   413                 return_type_symbol->accept(*this);
   413                 return_type_symbol->accept(*this);
   436             symbol_c *IN_param_value = &this->default_variable_name;
   436             symbol_c *IN_param_value = &this->default_variable_name;
   437         
   437         
   438             symbol_c *IN_type_symbol = param_data_type;
   438             symbol_c *IN_type_symbol = param_data_type;
   439             last_type_symbol = param_data_type;
   439             last_type_symbol = param_data_type;
   440             
   440             
   441             if (typeid(*last_type_symbol) == typeid(bool_type_name_c))
   441             if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
   442             {
   442             {
   443         
   443         
   444                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
   444                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
   445                 s4o.print("(");
   445                 s4o.print("(");
   446                 return_type_symbol->accept(*this);
   446                 return_type_symbol->accept(*this);
   469             symbol_c *IN_param_value = &this->default_variable_name;
   469             symbol_c *IN_param_value = &this->default_variable_name;
   470         
   470         
   471             symbol_c *IN_type_symbol = param_data_type;
   471             symbol_c *IN_type_symbol = param_data_type;
   472             last_type_symbol = param_data_type;
   472             last_type_symbol = param_data_type;
   473             
   473             
   474             if (typeid(*last_type_symbol) == typeid(bool_type_name_c))
   474             if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
   475             {
   475             {
   476         
   476         
   477                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
   477                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
   478                 s4o.print("(");
   478                 s4o.print("(");
   479                 return_type_symbol->accept(*this);
   479                 return_type_symbol->accept(*this);
   502             symbol_c *IN_param_value = &this->default_variable_name;
   502             symbol_c *IN_param_value = &this->default_variable_name;
   503         
   503         
   504             symbol_c *IN_type_symbol = param_data_type;
   504             symbol_c *IN_type_symbol = param_data_type;
   505             last_type_symbol = param_data_type;
   505             last_type_symbol = param_data_type;
   506             
   506             
   507             if (typeid(*last_type_symbol) == typeid(bool_type_name_c))
   507             if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
   508             {
   508             {
   509         
   509         
   510                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
   510                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
   511                 s4o.print("(");
   511                 s4o.print("(");
   512                 return_type_symbol->accept(*this);
   512                 return_type_symbol->accept(*this);
   534             symbol_c *IN_param_value = &this->default_variable_name;
   534             symbol_c *IN_param_value = &this->default_variable_name;
   535         
   535         
   536             symbol_c *IN_type_symbol = param_data_type;
   536             symbol_c *IN_type_symbol = param_data_type;
   537             last_type_symbol = param_data_type;
   537             last_type_symbol = param_data_type;
   538             
   538             
   539             if (typeid(*last_type_symbol) == typeid(bool_type_name_c))
   539             if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
   540             {
   540             {
   541         
   541         
   542                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
   542                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
   543                 s4o.print("(");
   543                 s4o.print("(");
   544                 return_type_symbol->accept(*this);
   544                 return_type_symbol->accept(*this);
   566             symbol_c *IN_param_value = &this->default_variable_name;
   566             symbol_c *IN_param_value = &this->default_variable_name;
   567         
   567         
   568             symbol_c *IN_type_symbol = param_data_type;
   568             symbol_c *IN_type_symbol = param_data_type;
   569             last_type_symbol = param_data_type;
   569             last_type_symbol = param_data_type;
   570             
   570             
   571             if (typeid(*last_type_symbol) == typeid(bool_type_name_c))
   571             if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
   572             {
   572             {
   573         
   573         
   574                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
   574                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
   575                 s4o.print("(");
   575                 s4o.print("(");
   576                 return_type_symbol->accept(*this);
   576                 return_type_symbol->accept(*this);
   598             symbol_c *IN_param_value = &this->default_variable_name;
   598             symbol_c *IN_param_value = &this->default_variable_name;
   599         
   599         
   600             symbol_c *IN_type_symbol = param_data_type;
   600             symbol_c *IN_type_symbol = param_data_type;
   601             last_type_symbol = param_data_type;
   601             last_type_symbol = param_data_type;
   602             
   602             
   603             if (typeid(*last_type_symbol) == typeid(bool_type_name_c))
   603             if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
   604             {
   604             {
   605         
   605         
   606                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
   606                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
   607                 s4o.print("(");
   607                 s4o.print("(");
   608                 return_type_symbol->accept(*this);
   608                 return_type_symbol->accept(*this);
   630             symbol_c *IN_param_value = &this->default_variable_name;
   630             symbol_c *IN_param_value = &this->default_variable_name;
   631         
   631         
   632             symbol_c *IN_type_symbol = param_data_type;
   632             symbol_c *IN_type_symbol = param_data_type;
   633             last_type_symbol = param_data_type;
   633             last_type_symbol = param_data_type;
   634             
   634             
   635             if (typeid(*last_type_symbol) == typeid(sint_type_name_c))
   635             if(search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol))
   636             {
   636             {
   637         
   637         
   638                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
   638                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
   639                 s4o.print("(");
   639                 s4o.print("(");
   640                 return_type_symbol->accept(*this);
   640                 return_type_symbol->accept(*this);
   662             symbol_c *IN_param_value = &this->default_variable_name;
   662             symbol_c *IN_param_value = &this->default_variable_name;
   663         
   663         
   664             symbol_c *IN_type_symbol = param_data_type;
   664             symbol_c *IN_type_symbol = param_data_type;
   665             last_type_symbol = param_data_type;
   665             last_type_symbol = param_data_type;
   666             
   666             
   667             if (typeid(*last_type_symbol) == typeid(sint_type_name_c))
   667             if(search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol))
   668             {
   668             {
   669         
   669         
   670                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
   670                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
   671                 s4o.print("(");
   671                 s4o.print("(");
   672                 return_type_symbol->accept(*this);
   672                 return_type_symbol->accept(*this);
   694             symbol_c *IN_param_value = &this->default_variable_name;
   694             symbol_c *IN_param_value = &this->default_variable_name;
   695         
   695         
   696             symbol_c *IN_type_symbol = param_data_type;
   696             symbol_c *IN_type_symbol = param_data_type;
   697             last_type_symbol = param_data_type;
   697             last_type_symbol = param_data_type;
   698             
   698             
   699             if (typeid(*last_type_symbol) == typeid(sint_type_name_c))
   699             if(search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol))
   700             {
   700             {
   701         
   701         
   702                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
   702                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
   703                 s4o.print("(");
   703                 s4o.print("(");
   704                 return_type_symbol->accept(*this);
   704                 return_type_symbol->accept(*this);
   726             symbol_c *IN_param_value = &this->default_variable_name;
   726             symbol_c *IN_param_value = &this->default_variable_name;
   727         
   727         
   728             symbol_c *IN_type_symbol = param_data_type;
   728             symbol_c *IN_type_symbol = param_data_type;
   729             last_type_symbol = param_data_type;
   729             last_type_symbol = param_data_type;
   730             
   730             
   731             if (typeid(*last_type_symbol) == typeid(sint_type_name_c))
   731             if(search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol))
   732             {
   732             {
   733         
   733         
   734                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
   734                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
   735                 s4o.print("(");
   735                 s4o.print("(");
   736                 return_type_symbol->accept(*this);
   736                 return_type_symbol->accept(*this);
   758             symbol_c *IN_param_value = &this->default_variable_name;
   758             symbol_c *IN_param_value = &this->default_variable_name;
   759         
   759         
   760             symbol_c *IN_type_symbol = param_data_type;
   760             symbol_c *IN_type_symbol = param_data_type;
   761             last_type_symbol = param_data_type;
   761             last_type_symbol = param_data_type;
   762             
   762             
   763             if (typeid(*last_type_symbol) == typeid(sint_type_name_c))
   763             if(search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol))
   764             {
   764             {
   765         
   765         
   766                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
   766                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
   767                 s4o.print("(");
   767                 s4o.print("(");
   768                 return_type_symbol->accept(*this);
   768                 return_type_symbol->accept(*this);
   790             symbol_c *IN_param_value = &this->default_variable_name;
   790             symbol_c *IN_param_value = &this->default_variable_name;
   791         
   791         
   792             symbol_c *IN_type_symbol = param_data_type;
   792             symbol_c *IN_type_symbol = param_data_type;
   793             last_type_symbol = param_data_type;
   793             last_type_symbol = param_data_type;
   794             
   794             
   795             if (typeid(*last_type_symbol) == typeid(sint_type_name_c))
   795             if(search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol))
   796             {
   796             {
   797         
   797         
   798                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
   798                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
   799                 s4o.print("(");
   799                 s4o.print("(");
   800                 return_type_symbol->accept(*this);
   800                 return_type_symbol->accept(*this);
   822             symbol_c *IN_param_value = &this->default_variable_name;
   822             symbol_c *IN_param_value = &this->default_variable_name;
   823         
   823         
   824             symbol_c *IN_type_symbol = param_data_type;
   824             symbol_c *IN_type_symbol = param_data_type;
   825             last_type_symbol = param_data_type;
   825             last_type_symbol = param_data_type;
   826             
   826             
   827             if (typeid(*last_type_symbol) == typeid(sint_type_name_c))
   827             if(search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol))
   828             {
   828             {
   829         
   829         
   830                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
   830                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
   831                 s4o.print("(");
   831                 s4o.print("(");
   832                 return_type_symbol->accept(*this);
   832                 return_type_symbol->accept(*this);
   854             symbol_c *IN_param_value = &this->default_variable_name;
   854             symbol_c *IN_param_value = &this->default_variable_name;
   855         
   855         
   856             symbol_c *IN_type_symbol = param_data_type;
   856             symbol_c *IN_type_symbol = param_data_type;
   857             last_type_symbol = param_data_type;
   857             last_type_symbol = param_data_type;
   858             
   858             
   859             if (typeid(*last_type_symbol) == typeid(sint_type_name_c))
   859             if(search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol))
   860             {
   860             {
   861         
   861         
   862                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
   862                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
   863                 s4o.print("(");
   863                 s4o.print("(");
   864                 return_type_symbol->accept(*this);
   864                 return_type_symbol->accept(*this);
   886             symbol_c *IN_param_value = &this->default_variable_name;
   886             symbol_c *IN_param_value = &this->default_variable_name;
   887         
   887         
   888             symbol_c *IN_type_symbol = param_data_type;
   888             symbol_c *IN_type_symbol = param_data_type;
   889             last_type_symbol = param_data_type;
   889             last_type_symbol = param_data_type;
   890             
   890             
   891             if (typeid(*last_type_symbol) == typeid(sint_type_name_c))
   891             if(search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol))
   892             {
   892             {
   893         
   893         
   894                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
   894                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
   895                 s4o.print("(");
   895                 s4o.print("(");
   896                 return_type_symbol->accept(*this);
   896                 return_type_symbol->accept(*this);
   918             symbol_c *IN_param_value = &this->default_variable_name;
   918             symbol_c *IN_param_value = &this->default_variable_name;
   919         
   919         
   920             symbol_c *IN_type_symbol = param_data_type;
   920             symbol_c *IN_type_symbol = param_data_type;
   921             last_type_symbol = param_data_type;
   921             last_type_symbol = param_data_type;
   922             
   922             
   923             if (typeid(*last_type_symbol) == typeid(sint_type_name_c))
   923             if(search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol))
   924             {
   924             {
   925         
   925         
   926                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
   926                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
   927                 s4o.print("(");
   927                 s4o.print("(");
   928                 return_type_symbol->accept(*this);
   928                 return_type_symbol->accept(*this);
   950             symbol_c *IN_param_value = &this->default_variable_name;
   950             symbol_c *IN_param_value = &this->default_variable_name;
   951         
   951         
   952             symbol_c *IN_type_symbol = param_data_type;
   952             symbol_c *IN_type_symbol = param_data_type;
   953             last_type_symbol = param_data_type;
   953             last_type_symbol = param_data_type;
   954             
   954             
   955             if (typeid(*last_type_symbol) == typeid(sint_type_name_c))
   955             if(search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol))
   956             {
   956             {
   957         
   957         
   958                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
   958                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
   959                 s4o.print("(");
   959                 s4o.print("(");
   960                 return_type_symbol->accept(*this);
   960                 return_type_symbol->accept(*this);
   983             symbol_c *IN_param_value = &this->default_variable_name;
   983             symbol_c *IN_param_value = &this->default_variable_name;
   984         
   984         
   985             symbol_c *IN_type_symbol = param_data_type;
   985             symbol_c *IN_type_symbol = param_data_type;
   986             last_type_symbol = param_data_type;
   986             last_type_symbol = param_data_type;
   987             
   987             
   988             if (typeid(*last_type_symbol) == typeid(sint_type_name_c))
   988             if(search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol))
   989             {
   989             {
   990         
   990         
   991                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
   991                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
   992                 s4o.print("(");
   992                 s4o.print("(");
   993                 return_type_symbol->accept(*this);
   993                 return_type_symbol->accept(*this);
  1016             symbol_c *IN_param_value = &this->default_variable_name;
  1016             symbol_c *IN_param_value = &this->default_variable_name;
  1017         
  1017         
  1018             symbol_c *IN_type_symbol = param_data_type;
  1018             symbol_c *IN_type_symbol = param_data_type;
  1019             last_type_symbol = param_data_type;
  1019             last_type_symbol = param_data_type;
  1020             
  1020             
  1021             if (typeid(*last_type_symbol) == typeid(sint_type_name_c))
  1021             if(search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol))
  1022             {
  1022             {
  1023         
  1023         
  1024                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
  1024                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
  1025                 s4o.print("(");
  1025                 s4o.print("(");
  1026                 return_type_symbol->accept(*this);
  1026                 return_type_symbol->accept(*this);
  1049             symbol_c *IN_param_value = &this->default_variable_name;
  1049             symbol_c *IN_param_value = &this->default_variable_name;
  1050         
  1050         
  1051             symbol_c *IN_type_symbol = param_data_type;
  1051             symbol_c *IN_type_symbol = param_data_type;
  1052             last_type_symbol = param_data_type;
  1052             last_type_symbol = param_data_type;
  1053             
  1053             
  1054             if (typeid(*last_type_symbol) == typeid(sint_type_name_c))
  1054             if(search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol))
  1055             {
  1055             {
  1056         
  1056         
  1057                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
  1057                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
  1058                 s4o.print("(");
  1058                 s4o.print("(");
  1059                 return_type_symbol->accept(*this);
  1059                 return_type_symbol->accept(*this);
  1082             symbol_c *IN_param_value = &this->default_variable_name;
  1082             symbol_c *IN_param_value = &this->default_variable_name;
  1083         
  1083         
  1084             symbol_c *IN_type_symbol = param_data_type;
  1084             symbol_c *IN_type_symbol = param_data_type;
  1085             last_type_symbol = param_data_type;
  1085             last_type_symbol = param_data_type;
  1086             
  1086             
  1087             if (typeid(*last_type_symbol) == typeid(sint_type_name_c))
  1087             if(search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol))
  1088             {
  1088             {
  1089         
  1089         
  1090                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
  1090                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
  1091                 s4o.print("(");
  1091                 s4o.print("(");
  1092                 return_type_symbol->accept(*this);
  1092                 return_type_symbol->accept(*this);
  1115             symbol_c *IN_param_value = &this->default_variable_name;
  1115             symbol_c *IN_param_value = &this->default_variable_name;
  1116         
  1116         
  1117             symbol_c *IN_type_symbol = param_data_type;
  1117             symbol_c *IN_type_symbol = param_data_type;
  1118             last_type_symbol = param_data_type;
  1118             last_type_symbol = param_data_type;
  1119             
  1119             
  1120             if (typeid(*last_type_symbol) == typeid(sint_type_name_c))
  1120             if(search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol))
  1121             {
  1121             {
  1122         
  1122         
  1123                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
  1123                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
  1124                 s4o.print("(");
  1124                 s4o.print("(");
  1125                 return_type_symbol->accept(*this);
  1125                 return_type_symbol->accept(*this);
  1147             symbol_c *IN_param_value = &this->default_variable_name;
  1147             symbol_c *IN_param_value = &this->default_variable_name;
  1148         
  1148         
  1149             symbol_c *IN_type_symbol = param_data_type;
  1149             symbol_c *IN_type_symbol = param_data_type;
  1150             last_type_symbol = param_data_type;
  1150             last_type_symbol = param_data_type;
  1151             
  1151             
  1152             if (typeid(*last_type_symbol) == typeid(sint_type_name_c))
  1152             if(search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol))
  1153             {
  1153             {
  1154         
  1154         
  1155                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
  1155                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
  1156                 s4o.print("(");
  1156                 s4o.print("(");
  1157                 return_type_symbol->accept(*this);
  1157                 return_type_symbol->accept(*this);
  1179             symbol_c *IN_param_value = &this->default_variable_name;
  1179             symbol_c *IN_param_value = &this->default_variable_name;
  1180         
  1180         
  1181             symbol_c *IN_type_symbol = param_data_type;
  1181             symbol_c *IN_type_symbol = param_data_type;
  1182             last_type_symbol = param_data_type;
  1182             last_type_symbol = param_data_type;
  1183             
  1183             
  1184             if (typeid(*last_type_symbol) == typeid(sint_type_name_c))
  1184             if(search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol))
  1185             {
  1185             {
  1186         
  1186         
  1187                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
  1187                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
  1188                 s4o.print("(");
  1188                 s4o.print("(");
  1189                 return_type_symbol->accept(*this);
  1189                 return_type_symbol->accept(*this);
  1211             symbol_c *IN_param_value = &this->default_variable_name;
  1211             symbol_c *IN_param_value = &this->default_variable_name;
  1212         
  1212         
  1213             symbol_c *IN_type_symbol = param_data_type;
  1213             symbol_c *IN_type_symbol = param_data_type;
  1214             last_type_symbol = param_data_type;
  1214             last_type_symbol = param_data_type;
  1215             
  1215             
  1216             if (typeid(*last_type_symbol) == typeid(sint_type_name_c))
  1216             if(search_expression_type->is_same_type(&search_constant_type_c::sint_type_name, last_type_symbol))
  1217             {
  1217             {
  1218         
  1218         
  1219                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
  1219                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
  1220                 s4o.print("(");
  1220                 s4o.print("(");
  1221                 return_type_symbol->accept(*this);
  1221                 return_type_symbol->accept(*this);
  1243             symbol_c *IN_param_value = &this->default_variable_name;
  1243             symbol_c *IN_param_value = &this->default_variable_name;
  1244         
  1244         
  1245             symbol_c *IN_type_symbol = param_data_type;
  1245             symbol_c *IN_type_symbol = param_data_type;
  1246             last_type_symbol = param_data_type;
  1246             last_type_symbol = param_data_type;
  1247             
  1247             
  1248             if (typeid(*last_type_symbol) == typeid(int_type_name_c))
  1248             if(search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol))
  1249             {
  1249             {
  1250         
  1250         
  1251                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
  1251                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
  1252                 s4o.print("(");
  1252                 s4o.print("(");
  1253                 return_type_symbol->accept(*this);
  1253                 return_type_symbol->accept(*this);
  1275             symbol_c *IN_param_value = &this->default_variable_name;
  1275             symbol_c *IN_param_value = &this->default_variable_name;
  1276         
  1276         
  1277             symbol_c *IN_type_symbol = param_data_type;
  1277             symbol_c *IN_type_symbol = param_data_type;
  1278             last_type_symbol = param_data_type;
  1278             last_type_symbol = param_data_type;
  1279             
  1279             
  1280             if (typeid(*last_type_symbol) == typeid(int_type_name_c))
  1280             if(search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol))
  1281             {
  1281             {
  1282         
  1282         
  1283                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
  1283                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
  1284                 s4o.print("(");
  1284                 s4o.print("(");
  1285                 return_type_symbol->accept(*this);
  1285                 return_type_symbol->accept(*this);
  1307             symbol_c *IN_param_value = &this->default_variable_name;
  1307             symbol_c *IN_param_value = &this->default_variable_name;
  1308         
  1308         
  1309             symbol_c *IN_type_symbol = param_data_type;
  1309             symbol_c *IN_type_symbol = param_data_type;
  1310             last_type_symbol = param_data_type;
  1310             last_type_symbol = param_data_type;
  1311             
  1311             
  1312             if (typeid(*last_type_symbol) == typeid(int_type_name_c))
  1312             if(search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol))
  1313             {
  1313             {
  1314         
  1314         
  1315                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
  1315                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
  1316                 s4o.print("(");
  1316                 s4o.print("(");
  1317                 return_type_symbol->accept(*this);
  1317                 return_type_symbol->accept(*this);
  1339             symbol_c *IN_param_value = &this->default_variable_name;
  1339             symbol_c *IN_param_value = &this->default_variable_name;
  1340         
  1340         
  1341             symbol_c *IN_type_symbol = param_data_type;
  1341             symbol_c *IN_type_symbol = param_data_type;
  1342             last_type_symbol = param_data_type;
  1342             last_type_symbol = param_data_type;
  1343             
  1343             
  1344             if (typeid(*last_type_symbol) == typeid(int_type_name_c))
  1344             if(search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol))
  1345             {
  1345             {
  1346         
  1346         
  1347                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
  1347                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
  1348                 s4o.print("(");
  1348                 s4o.print("(");
  1349                 return_type_symbol->accept(*this);
  1349                 return_type_symbol->accept(*this);
  1371             symbol_c *IN_param_value = &this->default_variable_name;
  1371             symbol_c *IN_param_value = &this->default_variable_name;
  1372         
  1372         
  1373             symbol_c *IN_type_symbol = param_data_type;
  1373             symbol_c *IN_type_symbol = param_data_type;
  1374             last_type_symbol = param_data_type;
  1374             last_type_symbol = param_data_type;
  1375             
  1375             
  1376             if (typeid(*last_type_symbol) == typeid(int_type_name_c))
  1376             if(search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol))
  1377             {
  1377             {
  1378         
  1378         
  1379                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
  1379                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
  1380                 s4o.print("(");
  1380                 s4o.print("(");
  1381                 return_type_symbol->accept(*this);
  1381                 return_type_symbol->accept(*this);
  1403             symbol_c *IN_param_value = &this->default_variable_name;
  1403             symbol_c *IN_param_value = &this->default_variable_name;
  1404         
  1404         
  1405             symbol_c *IN_type_symbol = param_data_type;
  1405             symbol_c *IN_type_symbol = param_data_type;
  1406             last_type_symbol = param_data_type;
  1406             last_type_symbol = param_data_type;
  1407             
  1407             
  1408             if (typeid(*last_type_symbol) == typeid(int_type_name_c))
  1408             if(search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol))
  1409             {
  1409             {
  1410         
  1410         
  1411                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
  1411                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
  1412                 s4o.print("(");
  1412                 s4o.print("(");
  1413                 return_type_symbol->accept(*this);
  1413                 return_type_symbol->accept(*this);
  1435             symbol_c *IN_param_value = &this->default_variable_name;
  1435             symbol_c *IN_param_value = &this->default_variable_name;
  1436         
  1436         
  1437             symbol_c *IN_type_symbol = param_data_type;
  1437             symbol_c *IN_type_symbol = param_data_type;
  1438             last_type_symbol = param_data_type;
  1438             last_type_symbol = param_data_type;
  1439             
  1439             
  1440             if (typeid(*last_type_symbol) == typeid(int_type_name_c))
  1440             if(search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol))
  1441             {
  1441             {
  1442         
  1442         
  1443                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
  1443                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
  1444                 s4o.print("(");
  1444                 s4o.print("(");
  1445                 return_type_symbol->accept(*this);
  1445                 return_type_symbol->accept(*this);
  1467             symbol_c *IN_param_value = &this->default_variable_name;
  1467             symbol_c *IN_param_value = &this->default_variable_name;
  1468         
  1468         
  1469             symbol_c *IN_type_symbol = param_data_type;
  1469             symbol_c *IN_type_symbol = param_data_type;
  1470             last_type_symbol = param_data_type;
  1470             last_type_symbol = param_data_type;
  1471             
  1471             
  1472             if (typeid(*last_type_symbol) == typeid(int_type_name_c))
  1472             if(search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol))
  1473             {
  1473             {
  1474         
  1474         
  1475                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
  1475                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
  1476                 s4o.print("(");
  1476                 s4o.print("(");
  1477                 return_type_symbol->accept(*this);
  1477                 return_type_symbol->accept(*this);
  1499             symbol_c *IN_param_value = &this->default_variable_name;
  1499             symbol_c *IN_param_value = &this->default_variable_name;
  1500         
  1500         
  1501             symbol_c *IN_type_symbol = param_data_type;
  1501             symbol_c *IN_type_symbol = param_data_type;
  1502             last_type_symbol = param_data_type;
  1502             last_type_symbol = param_data_type;
  1503             
  1503             
  1504             if (typeid(*last_type_symbol) == typeid(int_type_name_c))
  1504             if(search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol))
  1505             {
  1505             {
  1506         
  1506         
  1507                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
  1507                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
  1508                 s4o.print("(");
  1508                 s4o.print("(");
  1509                 return_type_symbol->accept(*this);
  1509                 return_type_symbol->accept(*this);
  1531             symbol_c *IN_param_value = &this->default_variable_name;
  1531             symbol_c *IN_param_value = &this->default_variable_name;
  1532         
  1532         
  1533             symbol_c *IN_type_symbol = param_data_type;
  1533             symbol_c *IN_type_symbol = param_data_type;
  1534             last_type_symbol = param_data_type;
  1534             last_type_symbol = param_data_type;
  1535             
  1535             
  1536             if (typeid(*last_type_symbol) == typeid(int_type_name_c))
  1536             if(search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol))
  1537             {
  1537             {
  1538         
  1538         
  1539                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
  1539                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
  1540                 s4o.print("(");
  1540                 s4o.print("(");
  1541                 return_type_symbol->accept(*this);
  1541                 return_type_symbol->accept(*this);
  1563             symbol_c *IN_param_value = &this->default_variable_name;
  1563             symbol_c *IN_param_value = &this->default_variable_name;
  1564         
  1564         
  1565             symbol_c *IN_type_symbol = param_data_type;
  1565             symbol_c *IN_type_symbol = param_data_type;
  1566             last_type_symbol = param_data_type;
  1566             last_type_symbol = param_data_type;
  1567             
  1567             
  1568             if (typeid(*last_type_symbol) == typeid(int_type_name_c))
  1568             if(search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol))
  1569             {
  1569             {
  1570         
  1570         
  1571                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
  1571                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
  1572                 s4o.print("(");
  1572                 s4o.print("(");
  1573                 return_type_symbol->accept(*this);
  1573                 return_type_symbol->accept(*this);
  1596             symbol_c *IN_param_value = &this->default_variable_name;
  1596             symbol_c *IN_param_value = &this->default_variable_name;
  1597         
  1597         
  1598             symbol_c *IN_type_symbol = param_data_type;
  1598             symbol_c *IN_type_symbol = param_data_type;
  1599             last_type_symbol = param_data_type;
  1599             last_type_symbol = param_data_type;
  1600             
  1600             
  1601             if (typeid(*last_type_symbol) == typeid(int_type_name_c))
  1601             if(search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol))
  1602             {
  1602             {
  1603         
  1603         
  1604                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
  1604                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
  1605                 s4o.print("(");
  1605                 s4o.print("(");
  1606                 return_type_symbol->accept(*this);
  1606                 return_type_symbol->accept(*this);
  1629             symbol_c *IN_param_value = &this->default_variable_name;
  1629             symbol_c *IN_param_value = &this->default_variable_name;
  1630         
  1630         
  1631             symbol_c *IN_type_symbol = param_data_type;
  1631             symbol_c *IN_type_symbol = param_data_type;
  1632             last_type_symbol = param_data_type;
  1632             last_type_symbol = param_data_type;
  1633             
  1633             
  1634             if (typeid(*last_type_symbol) == typeid(int_type_name_c))
  1634             if(search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol))
  1635             {
  1635             {
  1636         
  1636         
  1637                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
  1637                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
  1638                 s4o.print("(");
  1638                 s4o.print("(");
  1639                 return_type_symbol->accept(*this);
  1639                 return_type_symbol->accept(*this);
  1662             symbol_c *IN_param_value = &this->default_variable_name;
  1662             symbol_c *IN_param_value = &this->default_variable_name;
  1663         
  1663         
  1664             symbol_c *IN_type_symbol = param_data_type;
  1664             symbol_c *IN_type_symbol = param_data_type;
  1665             last_type_symbol = param_data_type;
  1665             last_type_symbol = param_data_type;
  1666             
  1666             
  1667             if (typeid(*last_type_symbol) == typeid(int_type_name_c))
  1667             if(search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol))
  1668             {
  1668             {
  1669         
  1669         
  1670                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
  1670                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
  1671                 s4o.print("(");
  1671                 s4o.print("(");
  1672                 return_type_symbol->accept(*this);
  1672                 return_type_symbol->accept(*this);
  1695             symbol_c *IN_param_value = &this->default_variable_name;
  1695             symbol_c *IN_param_value = &this->default_variable_name;
  1696         
  1696         
  1697             symbol_c *IN_type_symbol = param_data_type;
  1697             symbol_c *IN_type_symbol = param_data_type;
  1698             last_type_symbol = param_data_type;
  1698             last_type_symbol = param_data_type;
  1699             
  1699             
  1700             if (typeid(*last_type_symbol) == typeid(int_type_name_c))
  1700             if(search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol))
  1701             {
  1701             {
  1702         
  1702         
  1703                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
  1703                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
  1704                 s4o.print("(");
  1704                 s4o.print("(");
  1705                 return_type_symbol->accept(*this);
  1705                 return_type_symbol->accept(*this);
  1728             symbol_c *IN_param_value = &this->default_variable_name;
  1728             symbol_c *IN_param_value = &this->default_variable_name;
  1729         
  1729         
  1730             symbol_c *IN_type_symbol = param_data_type;
  1730             symbol_c *IN_type_symbol = param_data_type;
  1731             last_type_symbol = param_data_type;
  1731             last_type_symbol = param_data_type;
  1732             
  1732             
  1733             if (typeid(*last_type_symbol) == typeid(int_type_name_c))
  1733             if(search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol))
  1734             {
  1734             {
  1735         
  1735         
  1736                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
  1736                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
  1737                 s4o.print("(");
  1737                 s4o.print("(");
  1738                 return_type_symbol->accept(*this);
  1738                 return_type_symbol->accept(*this);
  1760             symbol_c *IN_param_value = &this->default_variable_name;
  1760             symbol_c *IN_param_value = &this->default_variable_name;
  1761         
  1761         
  1762             symbol_c *IN_type_symbol = param_data_type;
  1762             symbol_c *IN_type_symbol = param_data_type;
  1763             last_type_symbol = param_data_type;
  1763             last_type_symbol = param_data_type;
  1764             
  1764             
  1765             if (typeid(*last_type_symbol) == typeid(int_type_name_c))
  1765             if(search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol))
  1766             {
  1766             {
  1767         
  1767         
  1768                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
  1768                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
  1769                 s4o.print("(");
  1769                 s4o.print("(");
  1770                 return_type_symbol->accept(*this);
  1770                 return_type_symbol->accept(*this);
  1792             symbol_c *IN_param_value = &this->default_variable_name;
  1792             symbol_c *IN_param_value = &this->default_variable_name;
  1793         
  1793         
  1794             symbol_c *IN_type_symbol = param_data_type;
  1794             symbol_c *IN_type_symbol = param_data_type;
  1795             last_type_symbol = param_data_type;
  1795             last_type_symbol = param_data_type;
  1796             
  1796             
  1797             if (typeid(*last_type_symbol) == typeid(int_type_name_c))
  1797             if(search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol))
  1798             {
  1798             {
  1799         
  1799         
  1800                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
  1800                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
  1801                 s4o.print("(");
  1801                 s4o.print("(");
  1802                 return_type_symbol->accept(*this);
  1802                 return_type_symbol->accept(*this);
  1824             symbol_c *IN_param_value = &this->default_variable_name;
  1824             symbol_c *IN_param_value = &this->default_variable_name;
  1825         
  1825         
  1826             symbol_c *IN_type_symbol = param_data_type;
  1826             symbol_c *IN_type_symbol = param_data_type;
  1827             last_type_symbol = param_data_type;
  1827             last_type_symbol = param_data_type;
  1828             
  1828             
  1829             if (typeid(*last_type_symbol) == typeid(int_type_name_c))
  1829             if(search_expression_type->is_same_type(&search_constant_type_c::int_type_name, last_type_symbol))
  1830             {
  1830             {
  1831         
  1831         
  1832                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
  1832                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
  1833                 s4o.print("(");
  1833                 s4o.print("(");
  1834                 return_type_symbol->accept(*this);
  1834                 return_type_symbol->accept(*this);
  1856             symbol_c *IN_param_value = &this->default_variable_name;
  1856             symbol_c *IN_param_value = &this->default_variable_name;
  1857         
  1857         
  1858             symbol_c *IN_type_symbol = param_data_type;
  1858             symbol_c *IN_type_symbol = param_data_type;
  1859             last_type_symbol = param_data_type;
  1859             last_type_symbol = param_data_type;
  1860             
  1860             
  1861             if (typeid(*last_type_symbol) == typeid(dint_type_name_c))
  1861             if(search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol))
  1862             {
  1862             {
  1863         
  1863         
  1864                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
  1864                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
  1865                 s4o.print("(");
  1865                 s4o.print("(");
  1866                 return_type_symbol->accept(*this);
  1866                 return_type_symbol->accept(*this);
  1888             symbol_c *IN_param_value = &this->default_variable_name;
  1888             symbol_c *IN_param_value = &this->default_variable_name;
  1889         
  1889         
  1890             symbol_c *IN_type_symbol = param_data_type;
  1890             symbol_c *IN_type_symbol = param_data_type;
  1891             last_type_symbol = param_data_type;
  1891             last_type_symbol = param_data_type;
  1892             
  1892             
  1893             if (typeid(*last_type_symbol) == typeid(dint_type_name_c))
  1893             if(search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol))
  1894             {
  1894             {
  1895         
  1895         
  1896                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
  1896                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
  1897                 s4o.print("(");
  1897                 s4o.print("(");
  1898                 return_type_symbol->accept(*this);
  1898                 return_type_symbol->accept(*this);
  1920             symbol_c *IN_param_value = &this->default_variable_name;
  1920             symbol_c *IN_param_value = &this->default_variable_name;
  1921         
  1921         
  1922             symbol_c *IN_type_symbol = param_data_type;
  1922             symbol_c *IN_type_symbol = param_data_type;
  1923             last_type_symbol = param_data_type;
  1923             last_type_symbol = param_data_type;
  1924             
  1924             
  1925             if (typeid(*last_type_symbol) == typeid(dint_type_name_c))
  1925             if(search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol))
  1926             {
  1926             {
  1927         
  1927         
  1928                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
  1928                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
  1929                 s4o.print("(");
  1929                 s4o.print("(");
  1930                 return_type_symbol->accept(*this);
  1930                 return_type_symbol->accept(*this);
  1952             symbol_c *IN_param_value = &this->default_variable_name;
  1952             symbol_c *IN_param_value = &this->default_variable_name;
  1953         
  1953         
  1954             symbol_c *IN_type_symbol = param_data_type;
  1954             symbol_c *IN_type_symbol = param_data_type;
  1955             last_type_symbol = param_data_type;
  1955             last_type_symbol = param_data_type;
  1956             
  1956             
  1957             if (typeid(*last_type_symbol) == typeid(dint_type_name_c))
  1957             if(search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol))
  1958             {
  1958             {
  1959         
  1959         
  1960                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
  1960                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
  1961                 s4o.print("(");
  1961                 s4o.print("(");
  1962                 return_type_symbol->accept(*this);
  1962                 return_type_symbol->accept(*this);
  1984             symbol_c *IN_param_value = &this->default_variable_name;
  1984             symbol_c *IN_param_value = &this->default_variable_name;
  1985         
  1985         
  1986             symbol_c *IN_type_symbol = param_data_type;
  1986             symbol_c *IN_type_symbol = param_data_type;
  1987             last_type_symbol = param_data_type;
  1987             last_type_symbol = param_data_type;
  1988             
  1988             
  1989             if (typeid(*last_type_symbol) == typeid(dint_type_name_c))
  1989             if(search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol))
  1990             {
  1990             {
  1991         
  1991         
  1992                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
  1992                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
  1993                 s4o.print("(");
  1993                 s4o.print("(");
  1994                 return_type_symbol->accept(*this);
  1994                 return_type_symbol->accept(*this);
  2016             symbol_c *IN_param_value = &this->default_variable_name;
  2016             symbol_c *IN_param_value = &this->default_variable_name;
  2017         
  2017         
  2018             symbol_c *IN_type_symbol = param_data_type;
  2018             symbol_c *IN_type_symbol = param_data_type;
  2019             last_type_symbol = param_data_type;
  2019             last_type_symbol = param_data_type;
  2020             
  2020             
  2021             if (typeid(*last_type_symbol) == typeid(dint_type_name_c))
  2021             if(search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol))
  2022             {
  2022             {
  2023         
  2023         
  2024                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
  2024                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
  2025                 s4o.print("(");
  2025                 s4o.print("(");
  2026                 return_type_symbol->accept(*this);
  2026                 return_type_symbol->accept(*this);
  2048             symbol_c *IN_param_value = &this->default_variable_name;
  2048             symbol_c *IN_param_value = &this->default_variable_name;
  2049         
  2049         
  2050             symbol_c *IN_type_symbol = param_data_type;
  2050             symbol_c *IN_type_symbol = param_data_type;
  2051             last_type_symbol = param_data_type;
  2051             last_type_symbol = param_data_type;
  2052             
  2052             
  2053             if (typeid(*last_type_symbol) == typeid(dint_type_name_c))
  2053             if(search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol))
  2054             {
  2054             {
  2055         
  2055         
  2056                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
  2056                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
  2057                 s4o.print("(");
  2057                 s4o.print("(");
  2058                 return_type_symbol->accept(*this);
  2058                 return_type_symbol->accept(*this);
  2080             symbol_c *IN_param_value = &this->default_variable_name;
  2080             symbol_c *IN_param_value = &this->default_variable_name;
  2081         
  2081         
  2082             symbol_c *IN_type_symbol = param_data_type;
  2082             symbol_c *IN_type_symbol = param_data_type;
  2083             last_type_symbol = param_data_type;
  2083             last_type_symbol = param_data_type;
  2084             
  2084             
  2085             if (typeid(*last_type_symbol) == typeid(dint_type_name_c))
  2085             if(search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol))
  2086             {
  2086             {
  2087         
  2087         
  2088                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
  2088                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
  2089                 s4o.print("(");
  2089                 s4o.print("(");
  2090                 return_type_symbol->accept(*this);
  2090                 return_type_symbol->accept(*this);
  2112             symbol_c *IN_param_value = &this->default_variable_name;
  2112             symbol_c *IN_param_value = &this->default_variable_name;
  2113         
  2113         
  2114             symbol_c *IN_type_symbol = param_data_type;
  2114             symbol_c *IN_type_symbol = param_data_type;
  2115             last_type_symbol = param_data_type;
  2115             last_type_symbol = param_data_type;
  2116             
  2116             
  2117             if (typeid(*last_type_symbol) == typeid(dint_type_name_c))
  2117             if(search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol))
  2118             {
  2118             {
  2119         
  2119         
  2120                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
  2120                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
  2121                 s4o.print("(");
  2121                 s4o.print("(");
  2122                 return_type_symbol->accept(*this);
  2122                 return_type_symbol->accept(*this);
  2144             symbol_c *IN_param_value = &this->default_variable_name;
  2144             symbol_c *IN_param_value = &this->default_variable_name;
  2145         
  2145         
  2146             symbol_c *IN_type_symbol = param_data_type;
  2146             symbol_c *IN_type_symbol = param_data_type;
  2147             last_type_symbol = param_data_type;
  2147             last_type_symbol = param_data_type;
  2148             
  2148             
  2149             if (typeid(*last_type_symbol) == typeid(dint_type_name_c))
  2149             if(search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol))
  2150             {
  2150             {
  2151         
  2151         
  2152                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
  2152                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
  2153                 s4o.print("(");
  2153                 s4o.print("(");
  2154                 return_type_symbol->accept(*this);
  2154                 return_type_symbol->accept(*this);
  2176             symbol_c *IN_param_value = &this->default_variable_name;
  2176             symbol_c *IN_param_value = &this->default_variable_name;
  2177         
  2177         
  2178             symbol_c *IN_type_symbol = param_data_type;
  2178             symbol_c *IN_type_symbol = param_data_type;
  2179             last_type_symbol = param_data_type;
  2179             last_type_symbol = param_data_type;
  2180             
  2180             
  2181             if (typeid(*last_type_symbol) == typeid(dint_type_name_c))
  2181             if(search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol))
  2182             {
  2182             {
  2183         
  2183         
  2184                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
  2184                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
  2185                 s4o.print("(");
  2185                 s4o.print("(");
  2186                 return_type_symbol->accept(*this);
  2186                 return_type_symbol->accept(*this);
  2209             symbol_c *IN_param_value = &this->default_variable_name;
  2209             symbol_c *IN_param_value = &this->default_variable_name;
  2210         
  2210         
  2211             symbol_c *IN_type_symbol = param_data_type;
  2211             symbol_c *IN_type_symbol = param_data_type;
  2212             last_type_symbol = param_data_type;
  2212             last_type_symbol = param_data_type;
  2213             
  2213             
  2214             if (typeid(*last_type_symbol) == typeid(dint_type_name_c))
  2214             if(search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol))
  2215             {
  2215             {
  2216         
  2216         
  2217                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
  2217                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
  2218                 s4o.print("(");
  2218                 s4o.print("(");
  2219                 return_type_symbol->accept(*this);
  2219                 return_type_symbol->accept(*this);
  2242             symbol_c *IN_param_value = &this->default_variable_name;
  2242             symbol_c *IN_param_value = &this->default_variable_name;
  2243         
  2243         
  2244             symbol_c *IN_type_symbol = param_data_type;
  2244             symbol_c *IN_type_symbol = param_data_type;
  2245             last_type_symbol = param_data_type;
  2245             last_type_symbol = param_data_type;
  2246             
  2246             
  2247             if (typeid(*last_type_symbol) == typeid(dint_type_name_c))
  2247             if(search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol))
  2248             {
  2248             {
  2249         
  2249         
  2250                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
  2250                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
  2251                 s4o.print("(");
  2251                 s4o.print("(");
  2252                 return_type_symbol->accept(*this);
  2252                 return_type_symbol->accept(*this);
  2275             symbol_c *IN_param_value = &this->default_variable_name;
  2275             symbol_c *IN_param_value = &this->default_variable_name;
  2276         
  2276         
  2277             symbol_c *IN_type_symbol = param_data_type;
  2277             symbol_c *IN_type_symbol = param_data_type;
  2278             last_type_symbol = param_data_type;
  2278             last_type_symbol = param_data_type;
  2279             
  2279             
  2280             if (typeid(*last_type_symbol) == typeid(dint_type_name_c))
  2280             if(search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol))
  2281             {
  2281             {
  2282         
  2282         
  2283                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
  2283                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
  2284                 s4o.print("(");
  2284                 s4o.print("(");
  2285                 return_type_symbol->accept(*this);
  2285                 return_type_symbol->accept(*this);
  2308             symbol_c *IN_param_value = &this->default_variable_name;
  2308             symbol_c *IN_param_value = &this->default_variable_name;
  2309         
  2309         
  2310             symbol_c *IN_type_symbol = param_data_type;
  2310             symbol_c *IN_type_symbol = param_data_type;
  2311             last_type_symbol = param_data_type;
  2311             last_type_symbol = param_data_type;
  2312             
  2312             
  2313             if (typeid(*last_type_symbol) == typeid(dint_type_name_c))
  2313             if(search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol))
  2314             {
  2314             {
  2315         
  2315         
  2316                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
  2316                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
  2317                 s4o.print("(");
  2317                 s4o.print("(");
  2318                 return_type_symbol->accept(*this);
  2318                 return_type_symbol->accept(*this);
  2341             symbol_c *IN_param_value = &this->default_variable_name;
  2341             symbol_c *IN_param_value = &this->default_variable_name;
  2342         
  2342         
  2343             symbol_c *IN_type_symbol = param_data_type;
  2343             symbol_c *IN_type_symbol = param_data_type;
  2344             last_type_symbol = param_data_type;
  2344             last_type_symbol = param_data_type;
  2345             
  2345             
  2346             if (typeid(*last_type_symbol) == typeid(dint_type_name_c))
  2346             if(search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol))
  2347             {
  2347             {
  2348         
  2348         
  2349                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
  2349                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
  2350                 s4o.print("(");
  2350                 s4o.print("(");
  2351                 return_type_symbol->accept(*this);
  2351                 return_type_symbol->accept(*this);
  2373             symbol_c *IN_param_value = &this->default_variable_name;
  2373             symbol_c *IN_param_value = &this->default_variable_name;
  2374         
  2374         
  2375             symbol_c *IN_type_symbol = param_data_type;
  2375             symbol_c *IN_type_symbol = param_data_type;
  2376             last_type_symbol = param_data_type;
  2376             last_type_symbol = param_data_type;
  2377             
  2377             
  2378             if (typeid(*last_type_symbol) == typeid(dint_type_name_c))
  2378             if(search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol))
  2379             {
  2379             {
  2380         
  2380         
  2381                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
  2381                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
  2382                 s4o.print("(");
  2382                 s4o.print("(");
  2383                 return_type_symbol->accept(*this);
  2383                 return_type_symbol->accept(*this);
  2405             symbol_c *IN_param_value = &this->default_variable_name;
  2405             symbol_c *IN_param_value = &this->default_variable_name;
  2406         
  2406         
  2407             symbol_c *IN_type_symbol = param_data_type;
  2407             symbol_c *IN_type_symbol = param_data_type;
  2408             last_type_symbol = param_data_type;
  2408             last_type_symbol = param_data_type;
  2409             
  2409             
  2410             if (typeid(*last_type_symbol) == typeid(dint_type_name_c))
  2410             if(search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol))
  2411             {
  2411             {
  2412         
  2412         
  2413                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
  2413                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
  2414                 s4o.print("(");
  2414                 s4o.print("(");
  2415                 return_type_symbol->accept(*this);
  2415                 return_type_symbol->accept(*this);
  2437             symbol_c *IN_param_value = &this->default_variable_name;
  2437             symbol_c *IN_param_value = &this->default_variable_name;
  2438         
  2438         
  2439             symbol_c *IN_type_symbol = param_data_type;
  2439             symbol_c *IN_type_symbol = param_data_type;
  2440             last_type_symbol = param_data_type;
  2440             last_type_symbol = param_data_type;
  2441             
  2441             
  2442             if (typeid(*last_type_symbol) == typeid(dint_type_name_c))
  2442             if(search_expression_type->is_same_type(&search_constant_type_c::dint_type_name, last_type_symbol))
  2443             {
  2443             {
  2444         
  2444         
  2445                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
  2445                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
  2446                 s4o.print("(");
  2446                 s4o.print("(");
  2447                 return_type_symbol->accept(*this);
  2447                 return_type_symbol->accept(*this);
  2469             symbol_c *IN_param_value = &this->default_variable_name;
  2469             symbol_c *IN_param_value = &this->default_variable_name;
  2470         
  2470         
  2471             symbol_c *IN_type_symbol = param_data_type;
  2471             symbol_c *IN_type_symbol = param_data_type;
  2472             last_type_symbol = param_data_type;
  2472             last_type_symbol = param_data_type;
  2473             
  2473             
  2474             if (typeid(*last_type_symbol) == typeid(lint_type_name_c))
  2474             if(search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol))
  2475             {
  2475             {
  2476         
  2476         
  2477                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
  2477                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
  2478                 s4o.print("(");
  2478                 s4o.print("(");
  2479                 return_type_symbol->accept(*this);
  2479                 return_type_symbol->accept(*this);
  2501             symbol_c *IN_param_value = &this->default_variable_name;
  2501             symbol_c *IN_param_value = &this->default_variable_name;
  2502         
  2502         
  2503             symbol_c *IN_type_symbol = param_data_type;
  2503             symbol_c *IN_type_symbol = param_data_type;
  2504             last_type_symbol = param_data_type;
  2504             last_type_symbol = param_data_type;
  2505             
  2505             
  2506             if (typeid(*last_type_symbol) == typeid(lint_type_name_c))
  2506             if(search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol))
  2507             {
  2507             {
  2508         
  2508         
  2509                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
  2509                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
  2510                 s4o.print("(");
  2510                 s4o.print("(");
  2511                 return_type_symbol->accept(*this);
  2511                 return_type_symbol->accept(*this);
  2533             symbol_c *IN_param_value = &this->default_variable_name;
  2533             symbol_c *IN_param_value = &this->default_variable_name;
  2534         
  2534         
  2535             symbol_c *IN_type_symbol = param_data_type;
  2535             symbol_c *IN_type_symbol = param_data_type;
  2536             last_type_symbol = param_data_type;
  2536             last_type_symbol = param_data_type;
  2537             
  2537             
  2538             if (typeid(*last_type_symbol) == typeid(lint_type_name_c))
  2538             if(search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol))
  2539             {
  2539             {
  2540         
  2540         
  2541                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
  2541                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
  2542                 s4o.print("(");
  2542                 s4o.print("(");
  2543                 return_type_symbol->accept(*this);
  2543                 return_type_symbol->accept(*this);
  2565             symbol_c *IN_param_value = &this->default_variable_name;
  2565             symbol_c *IN_param_value = &this->default_variable_name;
  2566         
  2566         
  2567             symbol_c *IN_type_symbol = param_data_type;
  2567             symbol_c *IN_type_symbol = param_data_type;
  2568             last_type_symbol = param_data_type;
  2568             last_type_symbol = param_data_type;
  2569             
  2569             
  2570             if (typeid(*last_type_symbol) == typeid(lint_type_name_c))
  2570             if(search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol))
  2571             {
  2571             {
  2572         
  2572         
  2573                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
  2573                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
  2574                 s4o.print("(");
  2574                 s4o.print("(");
  2575                 return_type_symbol->accept(*this);
  2575                 return_type_symbol->accept(*this);
  2597             symbol_c *IN_param_value = &this->default_variable_name;
  2597             symbol_c *IN_param_value = &this->default_variable_name;
  2598         
  2598         
  2599             symbol_c *IN_type_symbol = param_data_type;
  2599             symbol_c *IN_type_symbol = param_data_type;
  2600             last_type_symbol = param_data_type;
  2600             last_type_symbol = param_data_type;
  2601             
  2601             
  2602             if (typeid(*last_type_symbol) == typeid(lint_type_name_c))
  2602             if(search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol))
  2603             {
  2603             {
  2604         
  2604         
  2605                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
  2605                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
  2606                 s4o.print("(");
  2606                 s4o.print("(");
  2607                 return_type_symbol->accept(*this);
  2607                 return_type_symbol->accept(*this);
  2629             symbol_c *IN_param_value = &this->default_variable_name;
  2629             symbol_c *IN_param_value = &this->default_variable_name;
  2630         
  2630         
  2631             symbol_c *IN_type_symbol = param_data_type;
  2631             symbol_c *IN_type_symbol = param_data_type;
  2632             last_type_symbol = param_data_type;
  2632             last_type_symbol = param_data_type;
  2633             
  2633             
  2634             if (typeid(*last_type_symbol) == typeid(lint_type_name_c))
  2634             if(search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol))
  2635             {
  2635             {
  2636         
  2636         
  2637                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
  2637                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
  2638                 s4o.print("(");
  2638                 s4o.print("(");
  2639                 return_type_symbol->accept(*this);
  2639                 return_type_symbol->accept(*this);
  2661             symbol_c *IN_param_value = &this->default_variable_name;
  2661             symbol_c *IN_param_value = &this->default_variable_name;
  2662         
  2662         
  2663             symbol_c *IN_type_symbol = param_data_type;
  2663             symbol_c *IN_type_symbol = param_data_type;
  2664             last_type_symbol = param_data_type;
  2664             last_type_symbol = param_data_type;
  2665             
  2665             
  2666             if (typeid(*last_type_symbol) == typeid(lint_type_name_c))
  2666             if(search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol))
  2667             {
  2667             {
  2668         
  2668         
  2669                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
  2669                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
  2670                 s4o.print("(");
  2670                 s4o.print("(");
  2671                 return_type_symbol->accept(*this);
  2671                 return_type_symbol->accept(*this);
  2693             symbol_c *IN_param_value = &this->default_variable_name;
  2693             symbol_c *IN_param_value = &this->default_variable_name;
  2694         
  2694         
  2695             symbol_c *IN_type_symbol = param_data_type;
  2695             symbol_c *IN_type_symbol = param_data_type;
  2696             last_type_symbol = param_data_type;
  2696             last_type_symbol = param_data_type;
  2697             
  2697             
  2698             if (typeid(*last_type_symbol) == typeid(lint_type_name_c))
  2698             if(search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol))
  2699             {
  2699             {
  2700         
  2700         
  2701                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
  2701                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
  2702                 s4o.print("(");
  2702                 s4o.print("(");
  2703                 return_type_symbol->accept(*this);
  2703                 return_type_symbol->accept(*this);
  2725             symbol_c *IN_param_value = &this->default_variable_name;
  2725             symbol_c *IN_param_value = &this->default_variable_name;
  2726         
  2726         
  2727             symbol_c *IN_type_symbol = param_data_type;
  2727             symbol_c *IN_type_symbol = param_data_type;
  2728             last_type_symbol = param_data_type;
  2728             last_type_symbol = param_data_type;
  2729             
  2729             
  2730             if (typeid(*last_type_symbol) == typeid(lint_type_name_c))
  2730             if(search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol))
  2731             {
  2731             {
  2732         
  2732         
  2733                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
  2733                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
  2734                 s4o.print("(");
  2734                 s4o.print("(");
  2735                 return_type_symbol->accept(*this);
  2735                 return_type_symbol->accept(*this);
  2757             symbol_c *IN_param_value = &this->default_variable_name;
  2757             symbol_c *IN_param_value = &this->default_variable_name;
  2758         
  2758         
  2759             symbol_c *IN_type_symbol = param_data_type;
  2759             symbol_c *IN_type_symbol = param_data_type;
  2760             last_type_symbol = param_data_type;
  2760             last_type_symbol = param_data_type;
  2761             
  2761             
  2762             if (typeid(*last_type_symbol) == typeid(lint_type_name_c))
  2762             if(search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol))
  2763             {
  2763             {
  2764         
  2764         
  2765                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
  2765                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
  2766                 s4o.print("(");
  2766                 s4o.print("(");
  2767                 return_type_symbol->accept(*this);
  2767                 return_type_symbol->accept(*this);
  2789             symbol_c *IN_param_value = &this->default_variable_name;
  2789             symbol_c *IN_param_value = &this->default_variable_name;
  2790         
  2790         
  2791             symbol_c *IN_type_symbol = param_data_type;
  2791             symbol_c *IN_type_symbol = param_data_type;
  2792             last_type_symbol = param_data_type;
  2792             last_type_symbol = param_data_type;
  2793             
  2793             
  2794             if (typeid(*last_type_symbol) == typeid(lint_type_name_c))
  2794             if(search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol))
  2795             {
  2795             {
  2796         
  2796         
  2797                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
  2797                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
  2798                 s4o.print("(");
  2798                 s4o.print("(");
  2799                 return_type_symbol->accept(*this);
  2799                 return_type_symbol->accept(*this);
  2822             symbol_c *IN_param_value = &this->default_variable_name;
  2822             symbol_c *IN_param_value = &this->default_variable_name;
  2823         
  2823         
  2824             symbol_c *IN_type_symbol = param_data_type;
  2824             symbol_c *IN_type_symbol = param_data_type;
  2825             last_type_symbol = param_data_type;
  2825             last_type_symbol = param_data_type;
  2826             
  2826             
  2827             if (typeid(*last_type_symbol) == typeid(lint_type_name_c))
  2827             if(search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol))
  2828             {
  2828             {
  2829         
  2829         
  2830                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
  2830                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
  2831                 s4o.print("(");
  2831                 s4o.print("(");
  2832                 return_type_symbol->accept(*this);
  2832                 return_type_symbol->accept(*this);
  2855             symbol_c *IN_param_value = &this->default_variable_name;
  2855             symbol_c *IN_param_value = &this->default_variable_name;
  2856         
  2856         
  2857             symbol_c *IN_type_symbol = param_data_type;
  2857             symbol_c *IN_type_symbol = param_data_type;
  2858             last_type_symbol = param_data_type;
  2858             last_type_symbol = param_data_type;
  2859             
  2859             
  2860             if (typeid(*last_type_symbol) == typeid(lint_type_name_c))
  2860             if(search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol))
  2861             {
  2861             {
  2862         
  2862         
  2863                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
  2863                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
  2864                 s4o.print("(");
  2864                 s4o.print("(");
  2865                 return_type_symbol->accept(*this);
  2865                 return_type_symbol->accept(*this);
  2888             symbol_c *IN_param_value = &this->default_variable_name;
  2888             symbol_c *IN_param_value = &this->default_variable_name;
  2889         
  2889         
  2890             symbol_c *IN_type_symbol = param_data_type;
  2890             symbol_c *IN_type_symbol = param_data_type;
  2891             last_type_symbol = param_data_type;
  2891             last_type_symbol = param_data_type;
  2892             
  2892             
  2893             if (typeid(*last_type_symbol) == typeid(lint_type_name_c))
  2893             if(search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol))
  2894             {
  2894             {
  2895         
  2895         
  2896                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
  2896                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
  2897                 s4o.print("(");
  2897                 s4o.print("(");
  2898                 return_type_symbol->accept(*this);
  2898                 return_type_symbol->accept(*this);
  2921             symbol_c *IN_param_value = &this->default_variable_name;
  2921             symbol_c *IN_param_value = &this->default_variable_name;
  2922         
  2922         
  2923             symbol_c *IN_type_symbol = param_data_type;
  2923             symbol_c *IN_type_symbol = param_data_type;
  2924             last_type_symbol = param_data_type;
  2924             last_type_symbol = param_data_type;
  2925             
  2925             
  2926             if (typeid(*last_type_symbol) == typeid(lint_type_name_c))
  2926             if(search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol))
  2927             {
  2927             {
  2928         
  2928         
  2929                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
  2929                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
  2930                 s4o.print("(");
  2930                 s4o.print("(");
  2931                 return_type_symbol->accept(*this);
  2931                 return_type_symbol->accept(*this);
  2954             symbol_c *IN_param_value = &this->default_variable_name;
  2954             symbol_c *IN_param_value = &this->default_variable_name;
  2955         
  2955         
  2956             symbol_c *IN_type_symbol = param_data_type;
  2956             symbol_c *IN_type_symbol = param_data_type;
  2957             last_type_symbol = param_data_type;
  2957             last_type_symbol = param_data_type;
  2958             
  2958             
  2959             if (typeid(*last_type_symbol) == typeid(lint_type_name_c))
  2959             if(search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol))
  2960             {
  2960             {
  2961         
  2961         
  2962                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
  2962                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
  2963                 s4o.print("(");
  2963                 s4o.print("(");
  2964                 return_type_symbol->accept(*this);
  2964                 return_type_symbol->accept(*this);
  2986             symbol_c *IN_param_value = &this->default_variable_name;
  2986             symbol_c *IN_param_value = &this->default_variable_name;
  2987         
  2987         
  2988             symbol_c *IN_type_symbol = param_data_type;
  2988             symbol_c *IN_type_symbol = param_data_type;
  2989             last_type_symbol = param_data_type;
  2989             last_type_symbol = param_data_type;
  2990             
  2990             
  2991             if (typeid(*last_type_symbol) == typeid(lint_type_name_c))
  2991             if(search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol))
  2992             {
  2992             {
  2993         
  2993         
  2994                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
  2994                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
  2995                 s4o.print("(");
  2995                 s4o.print("(");
  2996                 return_type_symbol->accept(*this);
  2996                 return_type_symbol->accept(*this);
  3018             symbol_c *IN_param_value = &this->default_variable_name;
  3018             symbol_c *IN_param_value = &this->default_variable_name;
  3019         
  3019         
  3020             symbol_c *IN_type_symbol = param_data_type;
  3020             symbol_c *IN_type_symbol = param_data_type;
  3021             last_type_symbol = param_data_type;
  3021             last_type_symbol = param_data_type;
  3022             
  3022             
  3023             if (typeid(*last_type_symbol) == typeid(lint_type_name_c))
  3023             if(search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol))
  3024             {
  3024             {
  3025         
  3025         
  3026                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
  3026                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
  3027                 s4o.print("(");
  3027                 s4o.print("(");
  3028                 return_type_symbol->accept(*this);
  3028                 return_type_symbol->accept(*this);
  3050             symbol_c *IN_param_value = &this->default_variable_name;
  3050             symbol_c *IN_param_value = &this->default_variable_name;
  3051         
  3051         
  3052             symbol_c *IN_type_symbol = param_data_type;
  3052             symbol_c *IN_type_symbol = param_data_type;
  3053             last_type_symbol = param_data_type;
  3053             last_type_symbol = param_data_type;
  3054             
  3054             
  3055             if (typeid(*last_type_symbol) == typeid(lint_type_name_c))
  3055             if(search_expression_type->is_same_type(&search_constant_type_c::lint_type_name, last_type_symbol))
  3056             {
  3056             {
  3057         
  3057         
  3058                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
  3058                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
  3059                 s4o.print("(");
  3059                 s4o.print("(");
  3060                 return_type_symbol->accept(*this);
  3060                 return_type_symbol->accept(*this);
  3082             symbol_c *IN_param_value = &this->default_variable_name;
  3082             symbol_c *IN_param_value = &this->default_variable_name;
  3083         
  3083         
  3084             symbol_c *IN_type_symbol = param_data_type;
  3084             symbol_c *IN_type_symbol = param_data_type;
  3085             last_type_symbol = param_data_type;
  3085             last_type_symbol = param_data_type;
  3086             
  3086             
  3087             if (typeid(*last_type_symbol) == typeid(usint_type_name_c))
  3087             if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
  3088             {
  3088             {
  3089         
  3089         
  3090                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
  3090                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
  3091                 s4o.print("(");
  3091                 s4o.print("(");
  3092                 return_type_symbol->accept(*this);
  3092                 return_type_symbol->accept(*this);
  3114             symbol_c *IN_param_value = &this->default_variable_name;
  3114             symbol_c *IN_param_value = &this->default_variable_name;
  3115         
  3115         
  3116             symbol_c *IN_type_symbol = param_data_type;
  3116             symbol_c *IN_type_symbol = param_data_type;
  3117             last_type_symbol = param_data_type;
  3117             last_type_symbol = param_data_type;
  3118             
  3118             
  3119             if (typeid(*last_type_symbol) == typeid(usint_type_name_c))
  3119             if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
  3120             {
  3120             {
  3121         
  3121         
  3122                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
  3122                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
  3123                 s4o.print("(");
  3123                 s4o.print("(");
  3124                 return_type_symbol->accept(*this);
  3124                 return_type_symbol->accept(*this);
  3146             symbol_c *IN_param_value = &this->default_variable_name;
  3146             symbol_c *IN_param_value = &this->default_variable_name;
  3147         
  3147         
  3148             symbol_c *IN_type_symbol = param_data_type;
  3148             symbol_c *IN_type_symbol = param_data_type;
  3149             last_type_symbol = param_data_type;
  3149             last_type_symbol = param_data_type;
  3150             
  3150             
  3151             if (typeid(*last_type_symbol) == typeid(usint_type_name_c))
  3151             if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
  3152             {
  3152             {
  3153         
  3153         
  3154                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
  3154                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
  3155                 s4o.print("(");
  3155                 s4o.print("(");
  3156                 return_type_symbol->accept(*this);
  3156                 return_type_symbol->accept(*this);
  3178             symbol_c *IN_param_value = &this->default_variable_name;
  3178             symbol_c *IN_param_value = &this->default_variable_name;
  3179         
  3179         
  3180             symbol_c *IN_type_symbol = param_data_type;
  3180             symbol_c *IN_type_symbol = param_data_type;
  3181             last_type_symbol = param_data_type;
  3181             last_type_symbol = param_data_type;
  3182             
  3182             
  3183             if (typeid(*last_type_symbol) == typeid(usint_type_name_c))
  3183             if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
  3184             {
  3184             {
  3185         
  3185         
  3186                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
  3186                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
  3187                 s4o.print("(");
  3187                 s4o.print("(");
  3188                 return_type_symbol->accept(*this);
  3188                 return_type_symbol->accept(*this);
  3210             symbol_c *IN_param_value = &this->default_variable_name;
  3210             symbol_c *IN_param_value = &this->default_variable_name;
  3211         
  3211         
  3212             symbol_c *IN_type_symbol = param_data_type;
  3212             symbol_c *IN_type_symbol = param_data_type;
  3213             last_type_symbol = param_data_type;
  3213             last_type_symbol = param_data_type;
  3214             
  3214             
  3215             if (typeid(*last_type_symbol) == typeid(usint_type_name_c))
  3215             if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
  3216             {
  3216             {
  3217         
  3217         
  3218                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
  3218                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
  3219                 s4o.print("(");
  3219                 s4o.print("(");
  3220                 return_type_symbol->accept(*this);
  3220                 return_type_symbol->accept(*this);
  3242             symbol_c *IN_param_value = &this->default_variable_name;
  3242             symbol_c *IN_param_value = &this->default_variable_name;
  3243         
  3243         
  3244             symbol_c *IN_type_symbol = param_data_type;
  3244             symbol_c *IN_type_symbol = param_data_type;
  3245             last_type_symbol = param_data_type;
  3245             last_type_symbol = param_data_type;
  3246             
  3246             
  3247             if (typeid(*last_type_symbol) == typeid(usint_type_name_c))
  3247             if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
  3248             {
  3248             {
  3249         
  3249         
  3250                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
  3250                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
  3251                 s4o.print("(");
  3251                 s4o.print("(");
  3252                 return_type_symbol->accept(*this);
  3252                 return_type_symbol->accept(*this);
  3274             symbol_c *IN_param_value = &this->default_variable_name;
  3274             symbol_c *IN_param_value = &this->default_variable_name;
  3275         
  3275         
  3276             symbol_c *IN_type_symbol = param_data_type;
  3276             symbol_c *IN_type_symbol = param_data_type;
  3277             last_type_symbol = param_data_type;
  3277             last_type_symbol = param_data_type;
  3278             
  3278             
  3279             if (typeid(*last_type_symbol) == typeid(usint_type_name_c))
  3279             if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
  3280             {
  3280             {
  3281         
  3281         
  3282                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
  3282                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
  3283                 s4o.print("(");
  3283                 s4o.print("(");
  3284                 return_type_symbol->accept(*this);
  3284                 return_type_symbol->accept(*this);
  3306             symbol_c *IN_param_value = &this->default_variable_name;
  3306             symbol_c *IN_param_value = &this->default_variable_name;
  3307         
  3307         
  3308             symbol_c *IN_type_symbol = param_data_type;
  3308             symbol_c *IN_type_symbol = param_data_type;
  3309             last_type_symbol = param_data_type;
  3309             last_type_symbol = param_data_type;
  3310             
  3310             
  3311             if (typeid(*last_type_symbol) == typeid(usint_type_name_c))
  3311             if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
  3312             {
  3312             {
  3313         
  3313         
  3314                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
  3314                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
  3315                 s4o.print("(");
  3315                 s4o.print("(");
  3316                 return_type_symbol->accept(*this);
  3316                 return_type_symbol->accept(*this);
  3338             symbol_c *IN_param_value = &this->default_variable_name;
  3338             symbol_c *IN_param_value = &this->default_variable_name;
  3339         
  3339         
  3340             symbol_c *IN_type_symbol = param_data_type;
  3340             symbol_c *IN_type_symbol = param_data_type;
  3341             last_type_symbol = param_data_type;
  3341             last_type_symbol = param_data_type;
  3342             
  3342             
  3343             if (typeid(*last_type_symbol) == typeid(usint_type_name_c))
  3343             if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
  3344             {
  3344             {
  3345         
  3345         
  3346                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
  3346                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
  3347                 s4o.print("(");
  3347                 s4o.print("(");
  3348                 return_type_symbol->accept(*this);
  3348                 return_type_symbol->accept(*this);
  3370             symbol_c *IN_param_value = &this->default_variable_name;
  3370             symbol_c *IN_param_value = &this->default_variable_name;
  3371         
  3371         
  3372             symbol_c *IN_type_symbol = param_data_type;
  3372             symbol_c *IN_type_symbol = param_data_type;
  3373             last_type_symbol = param_data_type;
  3373             last_type_symbol = param_data_type;
  3374             
  3374             
  3375             if (typeid(*last_type_symbol) == typeid(usint_type_name_c))
  3375             if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
  3376             {
  3376             {
  3377         
  3377         
  3378                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
  3378                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
  3379                 s4o.print("(");
  3379                 s4o.print("(");
  3380                 return_type_symbol->accept(*this);
  3380                 return_type_symbol->accept(*this);
  3402             symbol_c *IN_param_value = &this->default_variable_name;
  3402             symbol_c *IN_param_value = &this->default_variable_name;
  3403         
  3403         
  3404             symbol_c *IN_type_symbol = param_data_type;
  3404             symbol_c *IN_type_symbol = param_data_type;
  3405             last_type_symbol = param_data_type;
  3405             last_type_symbol = param_data_type;
  3406             
  3406             
  3407             if (typeid(*last_type_symbol) == typeid(usint_type_name_c))
  3407             if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
  3408             {
  3408             {
  3409         
  3409         
  3410                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
  3410                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
  3411                 s4o.print("(");
  3411                 s4o.print("(");
  3412                 return_type_symbol->accept(*this);
  3412                 return_type_symbol->accept(*this);
  3435             symbol_c *IN_param_value = &this->default_variable_name;
  3435             symbol_c *IN_param_value = &this->default_variable_name;
  3436         
  3436         
  3437             symbol_c *IN_type_symbol = param_data_type;
  3437             symbol_c *IN_type_symbol = param_data_type;
  3438             last_type_symbol = param_data_type;
  3438             last_type_symbol = param_data_type;
  3439             
  3439             
  3440             if (typeid(*last_type_symbol) == typeid(usint_type_name_c))
  3440             if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
  3441             {
  3441             {
  3442         
  3442         
  3443                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
  3443                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
  3444                 s4o.print("(");
  3444                 s4o.print("(");
  3445                 return_type_symbol->accept(*this);
  3445                 return_type_symbol->accept(*this);
  3468             symbol_c *IN_param_value = &this->default_variable_name;
  3468             symbol_c *IN_param_value = &this->default_variable_name;
  3469         
  3469         
  3470             symbol_c *IN_type_symbol = param_data_type;
  3470             symbol_c *IN_type_symbol = param_data_type;
  3471             last_type_symbol = param_data_type;
  3471             last_type_symbol = param_data_type;
  3472             
  3472             
  3473             if (typeid(*last_type_symbol) == typeid(usint_type_name_c))
  3473             if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
  3474             {
  3474             {
  3475         
  3475         
  3476                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
  3476                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
  3477                 s4o.print("(");
  3477                 s4o.print("(");
  3478                 return_type_symbol->accept(*this);
  3478                 return_type_symbol->accept(*this);
  3501             symbol_c *IN_param_value = &this->default_variable_name;
  3501             symbol_c *IN_param_value = &this->default_variable_name;
  3502         
  3502         
  3503             symbol_c *IN_type_symbol = param_data_type;
  3503             symbol_c *IN_type_symbol = param_data_type;
  3504             last_type_symbol = param_data_type;
  3504             last_type_symbol = param_data_type;
  3505             
  3505             
  3506             if (typeid(*last_type_symbol) == typeid(usint_type_name_c))
  3506             if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
  3507             {
  3507             {
  3508         
  3508         
  3509                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
  3509                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
  3510                 s4o.print("(");
  3510                 s4o.print("(");
  3511                 return_type_symbol->accept(*this);
  3511                 return_type_symbol->accept(*this);
  3534             symbol_c *IN_param_value = &this->default_variable_name;
  3534             symbol_c *IN_param_value = &this->default_variable_name;
  3535         
  3535         
  3536             symbol_c *IN_type_symbol = param_data_type;
  3536             symbol_c *IN_type_symbol = param_data_type;
  3537             last_type_symbol = param_data_type;
  3537             last_type_symbol = param_data_type;
  3538             
  3538             
  3539             if (typeid(*last_type_symbol) == typeid(usint_type_name_c))
  3539             if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
  3540             {
  3540             {
  3541         
  3541         
  3542                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
  3542                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
  3543                 s4o.print("(");
  3543                 s4o.print("(");
  3544                 return_type_symbol->accept(*this);
  3544                 return_type_symbol->accept(*this);
  3567             symbol_c *IN_param_value = &this->default_variable_name;
  3567             symbol_c *IN_param_value = &this->default_variable_name;
  3568         
  3568         
  3569             symbol_c *IN_type_symbol = param_data_type;
  3569             symbol_c *IN_type_symbol = param_data_type;
  3570             last_type_symbol = param_data_type;
  3570             last_type_symbol = param_data_type;
  3571             
  3571             
  3572             if (typeid(*last_type_symbol) == typeid(usint_type_name_c))
  3572             if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
  3573             {
  3573             {
  3574         
  3574         
  3575                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
  3575                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
  3576                 s4o.print("(");
  3576                 s4o.print("(");
  3577                 return_type_symbol->accept(*this);
  3577                 return_type_symbol->accept(*this);
  3599             symbol_c *IN_param_value = &this->default_variable_name;
  3599             symbol_c *IN_param_value = &this->default_variable_name;
  3600         
  3600         
  3601             symbol_c *IN_type_symbol = param_data_type;
  3601             symbol_c *IN_type_symbol = param_data_type;
  3602             last_type_symbol = param_data_type;
  3602             last_type_symbol = param_data_type;
  3603             
  3603             
  3604             if (typeid(*last_type_symbol) == typeid(usint_type_name_c))
  3604             if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
  3605             {
  3605             {
  3606         
  3606         
  3607                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
  3607                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
  3608                 s4o.print("(");
  3608                 s4o.print("(");
  3609                 return_type_symbol->accept(*this);
  3609                 return_type_symbol->accept(*this);
  3631             symbol_c *IN_param_value = &this->default_variable_name;
  3631             symbol_c *IN_param_value = &this->default_variable_name;
  3632         
  3632         
  3633             symbol_c *IN_type_symbol = param_data_type;
  3633             symbol_c *IN_type_symbol = param_data_type;
  3634             last_type_symbol = param_data_type;
  3634             last_type_symbol = param_data_type;
  3635             
  3635             
  3636             if (typeid(*last_type_symbol) == typeid(usint_type_name_c))
  3636             if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
  3637             {
  3637             {
  3638         
  3638         
  3639                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
  3639                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
  3640                 s4o.print("(");
  3640                 s4o.print("(");
  3641                 return_type_symbol->accept(*this);
  3641                 return_type_symbol->accept(*this);
  3663             symbol_c *IN_param_value = &this->default_variable_name;
  3663             symbol_c *IN_param_value = &this->default_variable_name;
  3664         
  3664         
  3665             symbol_c *IN_type_symbol = param_data_type;
  3665             symbol_c *IN_type_symbol = param_data_type;
  3666             last_type_symbol = param_data_type;
  3666             last_type_symbol = param_data_type;
  3667             
  3667             
  3668             if (typeid(*last_type_symbol) == typeid(usint_type_name_c))
  3668             if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
  3669             {
  3669             {
  3670         
  3670         
  3671                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
  3671                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
  3672                 s4o.print("(");
  3672                 s4o.print("(");
  3673                 return_type_symbol->accept(*this);
  3673                 return_type_symbol->accept(*this);
  3695             symbol_c *IN_param_value = &this->default_variable_name;
  3695             symbol_c *IN_param_value = &this->default_variable_name;
  3696         
  3696         
  3697             symbol_c *IN_type_symbol = param_data_type;
  3697             symbol_c *IN_type_symbol = param_data_type;
  3698             last_type_symbol = param_data_type;
  3698             last_type_symbol = param_data_type;
  3699             
  3699             
  3700             if (typeid(*last_type_symbol) == typeid(uint_type_name_c))
  3700             if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
  3701             {
  3701             {
  3702         
  3702         
  3703                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
  3703                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
  3704                 s4o.print("(");
  3704                 s4o.print("(");
  3705                 return_type_symbol->accept(*this);
  3705                 return_type_symbol->accept(*this);
  3727             symbol_c *IN_param_value = &this->default_variable_name;
  3727             symbol_c *IN_param_value = &this->default_variable_name;
  3728         
  3728         
  3729             symbol_c *IN_type_symbol = param_data_type;
  3729             symbol_c *IN_type_symbol = param_data_type;
  3730             last_type_symbol = param_data_type;
  3730             last_type_symbol = param_data_type;
  3731             
  3731             
  3732             if (typeid(*last_type_symbol) == typeid(uint_type_name_c))
  3732             if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
  3733             {
  3733             {
  3734         
  3734         
  3735                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
  3735                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
  3736                 s4o.print("(");
  3736                 s4o.print("(");
  3737                 return_type_symbol->accept(*this);
  3737                 return_type_symbol->accept(*this);
  3759             symbol_c *IN_param_value = &this->default_variable_name;
  3759             symbol_c *IN_param_value = &this->default_variable_name;
  3760         
  3760         
  3761             symbol_c *IN_type_symbol = param_data_type;
  3761             symbol_c *IN_type_symbol = param_data_type;
  3762             last_type_symbol = param_data_type;
  3762             last_type_symbol = param_data_type;
  3763             
  3763             
  3764             if (typeid(*last_type_symbol) == typeid(uint_type_name_c))
  3764             if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
  3765             {
  3765             {
  3766         
  3766         
  3767                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
  3767                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
  3768                 s4o.print("(");
  3768                 s4o.print("(");
  3769                 return_type_symbol->accept(*this);
  3769                 return_type_symbol->accept(*this);
  3791             symbol_c *IN_param_value = &this->default_variable_name;
  3791             symbol_c *IN_param_value = &this->default_variable_name;
  3792         
  3792         
  3793             symbol_c *IN_type_symbol = param_data_type;
  3793             symbol_c *IN_type_symbol = param_data_type;
  3794             last_type_symbol = param_data_type;
  3794             last_type_symbol = param_data_type;
  3795             
  3795             
  3796             if (typeid(*last_type_symbol) == typeid(uint_type_name_c))
  3796             if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
  3797             {
  3797             {
  3798         
  3798         
  3799                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
  3799                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
  3800                 s4o.print("(");
  3800                 s4o.print("(");
  3801                 return_type_symbol->accept(*this);
  3801                 return_type_symbol->accept(*this);
  3823             symbol_c *IN_param_value = &this->default_variable_name;
  3823             symbol_c *IN_param_value = &this->default_variable_name;
  3824         
  3824         
  3825             symbol_c *IN_type_symbol = param_data_type;
  3825             symbol_c *IN_type_symbol = param_data_type;
  3826             last_type_symbol = param_data_type;
  3826             last_type_symbol = param_data_type;
  3827             
  3827             
  3828             if (typeid(*last_type_symbol) == typeid(uint_type_name_c))
  3828             if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
  3829             {
  3829             {
  3830         
  3830         
  3831                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
  3831                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
  3832                 s4o.print("(");
  3832                 s4o.print("(");
  3833                 return_type_symbol->accept(*this);
  3833                 return_type_symbol->accept(*this);
  3855             symbol_c *IN_param_value = &this->default_variable_name;
  3855             symbol_c *IN_param_value = &this->default_variable_name;
  3856         
  3856         
  3857             symbol_c *IN_type_symbol = param_data_type;
  3857             symbol_c *IN_type_symbol = param_data_type;
  3858             last_type_symbol = param_data_type;
  3858             last_type_symbol = param_data_type;
  3859             
  3859             
  3860             if (typeid(*last_type_symbol) == typeid(uint_type_name_c))
  3860             if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
  3861             {
  3861             {
  3862         
  3862         
  3863                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
  3863                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
  3864                 s4o.print("(");
  3864                 s4o.print("(");
  3865                 return_type_symbol->accept(*this);
  3865                 return_type_symbol->accept(*this);
  3887             symbol_c *IN_param_value = &this->default_variable_name;
  3887             symbol_c *IN_param_value = &this->default_variable_name;
  3888         
  3888         
  3889             symbol_c *IN_type_symbol = param_data_type;
  3889             symbol_c *IN_type_symbol = param_data_type;
  3890             last_type_symbol = param_data_type;
  3890             last_type_symbol = param_data_type;
  3891             
  3891             
  3892             if (typeid(*last_type_symbol) == typeid(uint_type_name_c))
  3892             if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
  3893             {
  3893             {
  3894         
  3894         
  3895                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
  3895                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
  3896                 s4o.print("(");
  3896                 s4o.print("(");
  3897                 return_type_symbol->accept(*this);
  3897                 return_type_symbol->accept(*this);
  3919             symbol_c *IN_param_value = &this->default_variable_name;
  3919             symbol_c *IN_param_value = &this->default_variable_name;
  3920         
  3920         
  3921             symbol_c *IN_type_symbol = param_data_type;
  3921             symbol_c *IN_type_symbol = param_data_type;
  3922             last_type_symbol = param_data_type;
  3922             last_type_symbol = param_data_type;
  3923             
  3923             
  3924             if (typeid(*last_type_symbol) == typeid(uint_type_name_c))
  3924             if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
  3925             {
  3925             {
  3926         
  3926         
  3927                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
  3927                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
  3928                 s4o.print("(");
  3928                 s4o.print("(");
  3929                 return_type_symbol->accept(*this);
  3929                 return_type_symbol->accept(*this);
  3951             symbol_c *IN_param_value = &this->default_variable_name;
  3951             symbol_c *IN_param_value = &this->default_variable_name;
  3952         
  3952         
  3953             symbol_c *IN_type_symbol = param_data_type;
  3953             symbol_c *IN_type_symbol = param_data_type;
  3954             last_type_symbol = param_data_type;
  3954             last_type_symbol = param_data_type;
  3955             
  3955             
  3956             if (typeid(*last_type_symbol) == typeid(uint_type_name_c))
  3956             if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
  3957             {
  3957             {
  3958         
  3958         
  3959                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
  3959                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
  3960                 s4o.print("(");
  3960                 s4o.print("(");
  3961                 return_type_symbol->accept(*this);
  3961                 return_type_symbol->accept(*this);
  3983             symbol_c *IN_param_value = &this->default_variable_name;
  3983             symbol_c *IN_param_value = &this->default_variable_name;
  3984         
  3984         
  3985             symbol_c *IN_type_symbol = param_data_type;
  3985             symbol_c *IN_type_symbol = param_data_type;
  3986             last_type_symbol = param_data_type;
  3986             last_type_symbol = param_data_type;
  3987             
  3987             
  3988             if (typeid(*last_type_symbol) == typeid(uint_type_name_c))
  3988             if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
  3989             {
  3989             {
  3990         
  3990         
  3991                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
  3991                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
  3992                 s4o.print("(");
  3992                 s4o.print("(");
  3993                 return_type_symbol->accept(*this);
  3993                 return_type_symbol->accept(*this);
  4015             symbol_c *IN_param_value = &this->default_variable_name;
  4015             symbol_c *IN_param_value = &this->default_variable_name;
  4016         
  4016         
  4017             symbol_c *IN_type_symbol = param_data_type;
  4017             symbol_c *IN_type_symbol = param_data_type;
  4018             last_type_symbol = param_data_type;
  4018             last_type_symbol = param_data_type;
  4019             
  4019             
  4020             if (typeid(*last_type_symbol) == typeid(uint_type_name_c))
  4020             if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
  4021             {
  4021             {
  4022         
  4022         
  4023                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
  4023                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
  4024                 s4o.print("(");
  4024                 s4o.print("(");
  4025                 return_type_symbol->accept(*this);
  4025                 return_type_symbol->accept(*this);
  4048             symbol_c *IN_param_value = &this->default_variable_name;
  4048             symbol_c *IN_param_value = &this->default_variable_name;
  4049         
  4049         
  4050             symbol_c *IN_type_symbol = param_data_type;
  4050             symbol_c *IN_type_symbol = param_data_type;
  4051             last_type_symbol = param_data_type;
  4051             last_type_symbol = param_data_type;
  4052             
  4052             
  4053             if (typeid(*last_type_symbol) == typeid(uint_type_name_c))
  4053             if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
  4054             {
  4054             {
  4055         
  4055         
  4056                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
  4056                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
  4057                 s4o.print("(");
  4057                 s4o.print("(");
  4058                 return_type_symbol->accept(*this);
  4058                 return_type_symbol->accept(*this);
  4081             symbol_c *IN_param_value = &this->default_variable_name;
  4081             symbol_c *IN_param_value = &this->default_variable_name;
  4082         
  4082         
  4083             symbol_c *IN_type_symbol = param_data_type;
  4083             symbol_c *IN_type_symbol = param_data_type;
  4084             last_type_symbol = param_data_type;
  4084             last_type_symbol = param_data_type;
  4085             
  4085             
  4086             if (typeid(*last_type_symbol) == typeid(uint_type_name_c))
  4086             if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
  4087             {
  4087             {
  4088         
  4088         
  4089                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
  4089                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
  4090                 s4o.print("(");
  4090                 s4o.print("(");
  4091                 return_type_symbol->accept(*this);
  4091                 return_type_symbol->accept(*this);
  4114             symbol_c *IN_param_value = &this->default_variable_name;
  4114             symbol_c *IN_param_value = &this->default_variable_name;
  4115         
  4115         
  4116             symbol_c *IN_type_symbol = param_data_type;
  4116             symbol_c *IN_type_symbol = param_data_type;
  4117             last_type_symbol = param_data_type;
  4117             last_type_symbol = param_data_type;
  4118             
  4118             
  4119             if (typeid(*last_type_symbol) == typeid(uint_type_name_c))
  4119             if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
  4120             {
  4120             {
  4121         
  4121         
  4122                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
  4122                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
  4123                 s4o.print("(");
  4123                 s4o.print("(");
  4124                 return_type_symbol->accept(*this);
  4124                 return_type_symbol->accept(*this);
  4147             symbol_c *IN_param_value = &this->default_variable_name;
  4147             symbol_c *IN_param_value = &this->default_variable_name;
  4148         
  4148         
  4149             symbol_c *IN_type_symbol = param_data_type;
  4149             symbol_c *IN_type_symbol = param_data_type;
  4150             last_type_symbol = param_data_type;
  4150             last_type_symbol = param_data_type;
  4151             
  4151             
  4152             if (typeid(*last_type_symbol) == typeid(uint_type_name_c))
  4152             if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
  4153             {
  4153             {
  4154         
  4154         
  4155                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
  4155                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
  4156                 s4o.print("(");
  4156                 s4o.print("(");
  4157                 return_type_symbol->accept(*this);
  4157                 return_type_symbol->accept(*this);
  4180             symbol_c *IN_param_value = &this->default_variable_name;
  4180             symbol_c *IN_param_value = &this->default_variable_name;
  4181         
  4181         
  4182             symbol_c *IN_type_symbol = param_data_type;
  4182             symbol_c *IN_type_symbol = param_data_type;
  4183             last_type_symbol = param_data_type;
  4183             last_type_symbol = param_data_type;
  4184             
  4184             
  4185             if (typeid(*last_type_symbol) == typeid(uint_type_name_c))
  4185             if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
  4186             {
  4186             {
  4187         
  4187         
  4188                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
  4188                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
  4189                 s4o.print("(");
  4189                 s4o.print("(");
  4190                 return_type_symbol->accept(*this);
  4190                 return_type_symbol->accept(*this);
  4212             symbol_c *IN_param_value = &this->default_variable_name;
  4212             symbol_c *IN_param_value = &this->default_variable_name;
  4213         
  4213         
  4214             symbol_c *IN_type_symbol = param_data_type;
  4214             symbol_c *IN_type_symbol = param_data_type;
  4215             last_type_symbol = param_data_type;
  4215             last_type_symbol = param_data_type;
  4216             
  4216             
  4217             if (typeid(*last_type_symbol) == typeid(uint_type_name_c))
  4217             if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
  4218             {
  4218             {
  4219         
  4219         
  4220                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
  4220                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
  4221                 s4o.print("(");
  4221                 s4o.print("(");
  4222                 return_type_symbol->accept(*this);
  4222                 return_type_symbol->accept(*this);
  4244             symbol_c *IN_param_value = &this->default_variable_name;
  4244             symbol_c *IN_param_value = &this->default_variable_name;
  4245         
  4245         
  4246             symbol_c *IN_type_symbol = param_data_type;
  4246             symbol_c *IN_type_symbol = param_data_type;
  4247             last_type_symbol = param_data_type;
  4247             last_type_symbol = param_data_type;
  4248             
  4248             
  4249             if (typeid(*last_type_symbol) == typeid(uint_type_name_c))
  4249             if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
  4250             {
  4250             {
  4251         
  4251         
  4252                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
  4252                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
  4253                 s4o.print("(");
  4253                 s4o.print("(");
  4254                 return_type_symbol->accept(*this);
  4254                 return_type_symbol->accept(*this);
  4276             symbol_c *IN_param_value = &this->default_variable_name;
  4276             symbol_c *IN_param_value = &this->default_variable_name;
  4277         
  4277         
  4278             symbol_c *IN_type_symbol = param_data_type;
  4278             symbol_c *IN_type_symbol = param_data_type;
  4279             last_type_symbol = param_data_type;
  4279             last_type_symbol = param_data_type;
  4280             
  4280             
  4281             if (typeid(*last_type_symbol) == typeid(uint_type_name_c))
  4281             if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
  4282             {
  4282             {
  4283         
  4283         
  4284                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
  4284                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
  4285                 s4o.print("(");
  4285                 s4o.print("(");
  4286                 return_type_symbol->accept(*this);
  4286                 return_type_symbol->accept(*this);
  4308             symbol_c *IN_param_value = &this->default_variable_name;
  4308             symbol_c *IN_param_value = &this->default_variable_name;
  4309         
  4309         
  4310             symbol_c *IN_type_symbol = param_data_type;
  4310             symbol_c *IN_type_symbol = param_data_type;
  4311             last_type_symbol = param_data_type;
  4311             last_type_symbol = param_data_type;
  4312             
  4312             
  4313             if (typeid(*last_type_symbol) == typeid(udint_type_name_c))
  4313             if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
  4314             {
  4314             {
  4315         
  4315         
  4316                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
  4316                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
  4317                 s4o.print("(");
  4317                 s4o.print("(");
  4318                 return_type_symbol->accept(*this);
  4318                 return_type_symbol->accept(*this);
  4340             symbol_c *IN_param_value = &this->default_variable_name;
  4340             symbol_c *IN_param_value = &this->default_variable_name;
  4341         
  4341         
  4342             symbol_c *IN_type_symbol = param_data_type;
  4342             symbol_c *IN_type_symbol = param_data_type;
  4343             last_type_symbol = param_data_type;
  4343             last_type_symbol = param_data_type;
  4344             
  4344             
  4345             if (typeid(*last_type_symbol) == typeid(udint_type_name_c))
  4345             if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
  4346             {
  4346             {
  4347         
  4347         
  4348                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
  4348                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
  4349                 s4o.print("(");
  4349                 s4o.print("(");
  4350                 return_type_symbol->accept(*this);
  4350                 return_type_symbol->accept(*this);
  4372             symbol_c *IN_param_value = &this->default_variable_name;
  4372             symbol_c *IN_param_value = &this->default_variable_name;
  4373         
  4373         
  4374             symbol_c *IN_type_symbol = param_data_type;
  4374             symbol_c *IN_type_symbol = param_data_type;
  4375             last_type_symbol = param_data_type;
  4375             last_type_symbol = param_data_type;
  4376             
  4376             
  4377             if (typeid(*last_type_symbol) == typeid(udint_type_name_c))
  4377             if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
  4378             {
  4378             {
  4379         
  4379         
  4380                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
  4380                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
  4381                 s4o.print("(");
  4381                 s4o.print("(");
  4382                 return_type_symbol->accept(*this);
  4382                 return_type_symbol->accept(*this);
  4404             symbol_c *IN_param_value = &this->default_variable_name;
  4404             symbol_c *IN_param_value = &this->default_variable_name;
  4405         
  4405         
  4406             symbol_c *IN_type_symbol = param_data_type;
  4406             symbol_c *IN_type_symbol = param_data_type;
  4407             last_type_symbol = param_data_type;
  4407             last_type_symbol = param_data_type;
  4408             
  4408             
  4409             if (typeid(*last_type_symbol) == typeid(udint_type_name_c))
  4409             if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
  4410             {
  4410             {
  4411         
  4411         
  4412                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
  4412                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
  4413                 s4o.print("(");
  4413                 s4o.print("(");
  4414                 return_type_symbol->accept(*this);
  4414                 return_type_symbol->accept(*this);
  4436             symbol_c *IN_param_value = &this->default_variable_name;
  4436             symbol_c *IN_param_value = &this->default_variable_name;
  4437         
  4437         
  4438             symbol_c *IN_type_symbol = param_data_type;
  4438             symbol_c *IN_type_symbol = param_data_type;
  4439             last_type_symbol = param_data_type;
  4439             last_type_symbol = param_data_type;
  4440             
  4440             
  4441             if (typeid(*last_type_symbol) == typeid(udint_type_name_c))
  4441             if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
  4442             {
  4442             {
  4443         
  4443         
  4444                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
  4444                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
  4445                 s4o.print("(");
  4445                 s4o.print("(");
  4446                 return_type_symbol->accept(*this);
  4446                 return_type_symbol->accept(*this);
  4468             symbol_c *IN_param_value = &this->default_variable_name;
  4468             symbol_c *IN_param_value = &this->default_variable_name;
  4469         
  4469         
  4470             symbol_c *IN_type_symbol = param_data_type;
  4470             symbol_c *IN_type_symbol = param_data_type;
  4471             last_type_symbol = param_data_type;
  4471             last_type_symbol = param_data_type;
  4472             
  4472             
  4473             if (typeid(*last_type_symbol) == typeid(udint_type_name_c))
  4473             if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
  4474             {
  4474             {
  4475         
  4475         
  4476                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
  4476                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
  4477                 s4o.print("(");
  4477                 s4o.print("(");
  4478                 return_type_symbol->accept(*this);
  4478                 return_type_symbol->accept(*this);
  4500             symbol_c *IN_param_value = &this->default_variable_name;
  4500             symbol_c *IN_param_value = &this->default_variable_name;
  4501         
  4501         
  4502             symbol_c *IN_type_symbol = param_data_type;
  4502             symbol_c *IN_type_symbol = param_data_type;
  4503             last_type_symbol = param_data_type;
  4503             last_type_symbol = param_data_type;
  4504             
  4504             
  4505             if (typeid(*last_type_symbol) == typeid(udint_type_name_c))
  4505             if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
  4506             {
  4506             {
  4507         
  4507         
  4508                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
  4508                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
  4509                 s4o.print("(");
  4509                 s4o.print("(");
  4510                 return_type_symbol->accept(*this);
  4510                 return_type_symbol->accept(*this);
  4532             symbol_c *IN_param_value = &this->default_variable_name;
  4532             symbol_c *IN_param_value = &this->default_variable_name;
  4533         
  4533         
  4534             symbol_c *IN_type_symbol = param_data_type;
  4534             symbol_c *IN_type_symbol = param_data_type;
  4535             last_type_symbol = param_data_type;
  4535             last_type_symbol = param_data_type;
  4536             
  4536             
  4537             if (typeid(*last_type_symbol) == typeid(udint_type_name_c))
  4537             if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
  4538             {
  4538             {
  4539         
  4539         
  4540                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
  4540                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
  4541                 s4o.print("(");
  4541                 s4o.print("(");
  4542                 return_type_symbol->accept(*this);
  4542                 return_type_symbol->accept(*this);
  4564             symbol_c *IN_param_value = &this->default_variable_name;
  4564             symbol_c *IN_param_value = &this->default_variable_name;
  4565         
  4565         
  4566             symbol_c *IN_type_symbol = param_data_type;
  4566             symbol_c *IN_type_symbol = param_data_type;
  4567             last_type_symbol = param_data_type;
  4567             last_type_symbol = param_data_type;
  4568             
  4568             
  4569             if (typeid(*last_type_symbol) == typeid(udint_type_name_c))
  4569             if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
  4570             {
  4570             {
  4571         
  4571         
  4572                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
  4572                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
  4573                 s4o.print("(");
  4573                 s4o.print("(");
  4574                 return_type_symbol->accept(*this);
  4574                 return_type_symbol->accept(*this);
  4596             symbol_c *IN_param_value = &this->default_variable_name;
  4596             symbol_c *IN_param_value = &this->default_variable_name;
  4597         
  4597         
  4598             symbol_c *IN_type_symbol = param_data_type;
  4598             symbol_c *IN_type_symbol = param_data_type;
  4599             last_type_symbol = param_data_type;
  4599             last_type_symbol = param_data_type;
  4600             
  4600             
  4601             if (typeid(*last_type_symbol) == typeid(udint_type_name_c))
  4601             if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
  4602             {
  4602             {
  4603         
  4603         
  4604                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
  4604                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
  4605                 s4o.print("(");
  4605                 s4o.print("(");
  4606                 return_type_symbol->accept(*this);
  4606                 return_type_symbol->accept(*this);
  4628             symbol_c *IN_param_value = &this->default_variable_name;
  4628             symbol_c *IN_param_value = &this->default_variable_name;
  4629         
  4629         
  4630             symbol_c *IN_type_symbol = param_data_type;
  4630             symbol_c *IN_type_symbol = param_data_type;
  4631             last_type_symbol = param_data_type;
  4631             last_type_symbol = param_data_type;
  4632             
  4632             
  4633             if (typeid(*last_type_symbol) == typeid(udint_type_name_c))
  4633             if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
  4634             {
  4634             {
  4635         
  4635         
  4636                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
  4636                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
  4637                 s4o.print("(");
  4637                 s4o.print("(");
  4638                 return_type_symbol->accept(*this);
  4638                 return_type_symbol->accept(*this);
  4661             symbol_c *IN_param_value = &this->default_variable_name;
  4661             symbol_c *IN_param_value = &this->default_variable_name;
  4662         
  4662         
  4663             symbol_c *IN_type_symbol = param_data_type;
  4663             symbol_c *IN_type_symbol = param_data_type;
  4664             last_type_symbol = param_data_type;
  4664             last_type_symbol = param_data_type;
  4665             
  4665             
  4666             if (typeid(*last_type_symbol) == typeid(udint_type_name_c))
  4666             if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
  4667             {
  4667             {
  4668         
  4668         
  4669                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
  4669                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
  4670                 s4o.print("(");
  4670                 s4o.print("(");
  4671                 return_type_symbol->accept(*this);
  4671                 return_type_symbol->accept(*this);
  4694             symbol_c *IN_param_value = &this->default_variable_name;
  4694             symbol_c *IN_param_value = &this->default_variable_name;
  4695         
  4695         
  4696             symbol_c *IN_type_symbol = param_data_type;
  4696             symbol_c *IN_type_symbol = param_data_type;
  4697             last_type_symbol = param_data_type;
  4697             last_type_symbol = param_data_type;
  4698             
  4698             
  4699             if (typeid(*last_type_symbol) == typeid(udint_type_name_c))
  4699             if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
  4700             {
  4700             {
  4701         
  4701         
  4702                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
  4702                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
  4703                 s4o.print("(");
  4703                 s4o.print("(");
  4704                 return_type_symbol->accept(*this);
  4704                 return_type_symbol->accept(*this);
  4727             symbol_c *IN_param_value = &this->default_variable_name;
  4727             symbol_c *IN_param_value = &this->default_variable_name;
  4728         
  4728         
  4729             symbol_c *IN_type_symbol = param_data_type;
  4729             symbol_c *IN_type_symbol = param_data_type;
  4730             last_type_symbol = param_data_type;
  4730             last_type_symbol = param_data_type;
  4731             
  4731             
  4732             if (typeid(*last_type_symbol) == typeid(udint_type_name_c))
  4732             if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
  4733             {
  4733             {
  4734         
  4734         
  4735                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
  4735                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
  4736                 s4o.print("(");
  4736                 s4o.print("(");
  4737                 return_type_symbol->accept(*this);
  4737                 return_type_symbol->accept(*this);
  4760             symbol_c *IN_param_value = &this->default_variable_name;
  4760             symbol_c *IN_param_value = &this->default_variable_name;
  4761         
  4761         
  4762             symbol_c *IN_type_symbol = param_data_type;
  4762             symbol_c *IN_type_symbol = param_data_type;
  4763             last_type_symbol = param_data_type;
  4763             last_type_symbol = param_data_type;
  4764             
  4764             
  4765             if (typeid(*last_type_symbol) == typeid(udint_type_name_c))
  4765             if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
  4766             {
  4766             {
  4767         
  4767         
  4768                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
  4768                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
  4769                 s4o.print("(");
  4769                 s4o.print("(");
  4770                 return_type_symbol->accept(*this);
  4770                 return_type_symbol->accept(*this);
  4793             symbol_c *IN_param_value = &this->default_variable_name;
  4793             symbol_c *IN_param_value = &this->default_variable_name;
  4794         
  4794         
  4795             symbol_c *IN_type_symbol = param_data_type;
  4795             symbol_c *IN_type_symbol = param_data_type;
  4796             last_type_symbol = param_data_type;
  4796             last_type_symbol = param_data_type;
  4797             
  4797             
  4798             if (typeid(*last_type_symbol) == typeid(udint_type_name_c))
  4798             if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
  4799             {
  4799             {
  4800         
  4800         
  4801                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
  4801                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
  4802                 s4o.print("(");
  4802                 s4o.print("(");
  4803                 return_type_symbol->accept(*this);
  4803                 return_type_symbol->accept(*this);
  4825             symbol_c *IN_param_value = &this->default_variable_name;
  4825             symbol_c *IN_param_value = &this->default_variable_name;
  4826         
  4826         
  4827             symbol_c *IN_type_symbol = param_data_type;
  4827             symbol_c *IN_type_symbol = param_data_type;
  4828             last_type_symbol = param_data_type;
  4828             last_type_symbol = param_data_type;
  4829             
  4829             
  4830             if (typeid(*last_type_symbol) == typeid(udint_type_name_c))
  4830             if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
  4831             {
  4831             {
  4832         
  4832         
  4833                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
  4833                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
  4834                 s4o.print("(");
  4834                 s4o.print("(");
  4835                 return_type_symbol->accept(*this);
  4835                 return_type_symbol->accept(*this);
  4857             symbol_c *IN_param_value = &this->default_variable_name;
  4857             symbol_c *IN_param_value = &this->default_variable_name;
  4858         
  4858         
  4859             symbol_c *IN_type_symbol = param_data_type;
  4859             symbol_c *IN_type_symbol = param_data_type;
  4860             last_type_symbol = param_data_type;
  4860             last_type_symbol = param_data_type;
  4861             
  4861             
  4862             if (typeid(*last_type_symbol) == typeid(udint_type_name_c))
  4862             if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
  4863             {
  4863             {
  4864         
  4864         
  4865                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
  4865                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
  4866                 s4o.print("(");
  4866                 s4o.print("(");
  4867                 return_type_symbol->accept(*this);
  4867                 return_type_symbol->accept(*this);
  4889             symbol_c *IN_param_value = &this->default_variable_name;
  4889             symbol_c *IN_param_value = &this->default_variable_name;
  4890         
  4890         
  4891             symbol_c *IN_type_symbol = param_data_type;
  4891             symbol_c *IN_type_symbol = param_data_type;
  4892             last_type_symbol = param_data_type;
  4892             last_type_symbol = param_data_type;
  4893             
  4893             
  4894             if (typeid(*last_type_symbol) == typeid(udint_type_name_c))
  4894             if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
  4895             {
  4895             {
  4896         
  4896         
  4897                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
  4897                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
  4898                 s4o.print("(");
  4898                 s4o.print("(");
  4899                 return_type_symbol->accept(*this);
  4899                 return_type_symbol->accept(*this);
  4921             symbol_c *IN_param_value = &this->default_variable_name;
  4921             symbol_c *IN_param_value = &this->default_variable_name;
  4922         
  4922         
  4923             symbol_c *IN_type_symbol = param_data_type;
  4923             symbol_c *IN_type_symbol = param_data_type;
  4924             last_type_symbol = param_data_type;
  4924             last_type_symbol = param_data_type;
  4925             
  4925             
  4926             if (typeid(*last_type_symbol) == typeid(ulint_type_name_c))
  4926             if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
  4927             {
  4927             {
  4928         
  4928         
  4929                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
  4929                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
  4930                 s4o.print("(");
  4930                 s4o.print("(");
  4931                 return_type_symbol->accept(*this);
  4931                 return_type_symbol->accept(*this);
  4953             symbol_c *IN_param_value = &this->default_variable_name;
  4953             symbol_c *IN_param_value = &this->default_variable_name;
  4954         
  4954         
  4955             symbol_c *IN_type_symbol = param_data_type;
  4955             symbol_c *IN_type_symbol = param_data_type;
  4956             last_type_symbol = param_data_type;
  4956             last_type_symbol = param_data_type;
  4957             
  4957             
  4958             if (typeid(*last_type_symbol) == typeid(ulint_type_name_c))
  4958             if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
  4959             {
  4959             {
  4960         
  4960         
  4961                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
  4961                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
  4962                 s4o.print("(");
  4962                 s4o.print("(");
  4963                 return_type_symbol->accept(*this);
  4963                 return_type_symbol->accept(*this);
  4985             symbol_c *IN_param_value = &this->default_variable_name;
  4985             symbol_c *IN_param_value = &this->default_variable_name;
  4986         
  4986         
  4987             symbol_c *IN_type_symbol = param_data_type;
  4987             symbol_c *IN_type_symbol = param_data_type;
  4988             last_type_symbol = param_data_type;
  4988             last_type_symbol = param_data_type;
  4989             
  4989             
  4990             if (typeid(*last_type_symbol) == typeid(ulint_type_name_c))
  4990             if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
  4991             {
  4991             {
  4992         
  4992         
  4993                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
  4993                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
  4994                 s4o.print("(");
  4994                 s4o.print("(");
  4995                 return_type_symbol->accept(*this);
  4995                 return_type_symbol->accept(*this);
  5017             symbol_c *IN_param_value = &this->default_variable_name;
  5017             symbol_c *IN_param_value = &this->default_variable_name;
  5018         
  5018         
  5019             symbol_c *IN_type_symbol = param_data_type;
  5019             symbol_c *IN_type_symbol = param_data_type;
  5020             last_type_symbol = param_data_type;
  5020             last_type_symbol = param_data_type;
  5021             
  5021             
  5022             if (typeid(*last_type_symbol) == typeid(ulint_type_name_c))
  5022             if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
  5023             {
  5023             {
  5024         
  5024         
  5025                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
  5025                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
  5026                 s4o.print("(");
  5026                 s4o.print("(");
  5027                 return_type_symbol->accept(*this);
  5027                 return_type_symbol->accept(*this);
  5049             symbol_c *IN_param_value = &this->default_variable_name;
  5049             symbol_c *IN_param_value = &this->default_variable_name;
  5050         
  5050         
  5051             symbol_c *IN_type_symbol = param_data_type;
  5051             symbol_c *IN_type_symbol = param_data_type;
  5052             last_type_symbol = param_data_type;
  5052             last_type_symbol = param_data_type;
  5053             
  5053             
  5054             if (typeid(*last_type_symbol) == typeid(ulint_type_name_c))
  5054             if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
  5055             {
  5055             {
  5056         
  5056         
  5057                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
  5057                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
  5058                 s4o.print("(");
  5058                 s4o.print("(");
  5059                 return_type_symbol->accept(*this);
  5059                 return_type_symbol->accept(*this);
  5081             symbol_c *IN_param_value = &this->default_variable_name;
  5081             symbol_c *IN_param_value = &this->default_variable_name;
  5082         
  5082         
  5083             symbol_c *IN_type_symbol = param_data_type;
  5083             symbol_c *IN_type_symbol = param_data_type;
  5084             last_type_symbol = param_data_type;
  5084             last_type_symbol = param_data_type;
  5085             
  5085             
  5086             if (typeid(*last_type_symbol) == typeid(ulint_type_name_c))
  5086             if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
  5087             {
  5087             {
  5088         
  5088         
  5089                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
  5089                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
  5090                 s4o.print("(");
  5090                 s4o.print("(");
  5091                 return_type_symbol->accept(*this);
  5091                 return_type_symbol->accept(*this);
  5113             symbol_c *IN_param_value = &this->default_variable_name;
  5113             symbol_c *IN_param_value = &this->default_variable_name;
  5114         
  5114         
  5115             symbol_c *IN_type_symbol = param_data_type;
  5115             symbol_c *IN_type_symbol = param_data_type;
  5116             last_type_symbol = param_data_type;
  5116             last_type_symbol = param_data_type;
  5117             
  5117             
  5118             if (typeid(*last_type_symbol) == typeid(ulint_type_name_c))
  5118             if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
  5119             {
  5119             {
  5120         
  5120         
  5121                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
  5121                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
  5122                 s4o.print("(");
  5122                 s4o.print("(");
  5123                 return_type_symbol->accept(*this);
  5123                 return_type_symbol->accept(*this);
  5145             symbol_c *IN_param_value = &this->default_variable_name;
  5145             symbol_c *IN_param_value = &this->default_variable_name;
  5146         
  5146         
  5147             symbol_c *IN_type_symbol = param_data_type;
  5147             symbol_c *IN_type_symbol = param_data_type;
  5148             last_type_symbol = param_data_type;
  5148             last_type_symbol = param_data_type;
  5149             
  5149             
  5150             if (typeid(*last_type_symbol) == typeid(ulint_type_name_c))
  5150             if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
  5151             {
  5151             {
  5152         
  5152         
  5153                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
  5153                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
  5154                 s4o.print("(");
  5154                 s4o.print("(");
  5155                 return_type_symbol->accept(*this);
  5155                 return_type_symbol->accept(*this);
  5177             symbol_c *IN_param_value = &this->default_variable_name;
  5177             symbol_c *IN_param_value = &this->default_variable_name;
  5178         
  5178         
  5179             symbol_c *IN_type_symbol = param_data_type;
  5179             symbol_c *IN_type_symbol = param_data_type;
  5180             last_type_symbol = param_data_type;
  5180             last_type_symbol = param_data_type;
  5181             
  5181             
  5182             if (typeid(*last_type_symbol) == typeid(ulint_type_name_c))
  5182             if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
  5183             {
  5183             {
  5184         
  5184         
  5185                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
  5185                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
  5186                 s4o.print("(");
  5186                 s4o.print("(");
  5187                 return_type_symbol->accept(*this);
  5187                 return_type_symbol->accept(*this);
  5209             symbol_c *IN_param_value = &this->default_variable_name;
  5209             symbol_c *IN_param_value = &this->default_variable_name;
  5210         
  5210         
  5211             symbol_c *IN_type_symbol = param_data_type;
  5211             symbol_c *IN_type_symbol = param_data_type;
  5212             last_type_symbol = param_data_type;
  5212             last_type_symbol = param_data_type;
  5213             
  5213             
  5214             if (typeid(*last_type_symbol) == typeid(ulint_type_name_c))
  5214             if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
  5215             {
  5215             {
  5216         
  5216         
  5217                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
  5217                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
  5218                 s4o.print("(");
  5218                 s4o.print("(");
  5219                 return_type_symbol->accept(*this);
  5219                 return_type_symbol->accept(*this);
  5241             symbol_c *IN_param_value = &this->default_variable_name;
  5241             symbol_c *IN_param_value = &this->default_variable_name;
  5242         
  5242         
  5243             symbol_c *IN_type_symbol = param_data_type;
  5243             symbol_c *IN_type_symbol = param_data_type;
  5244             last_type_symbol = param_data_type;
  5244             last_type_symbol = param_data_type;
  5245             
  5245             
  5246             if (typeid(*last_type_symbol) == typeid(ulint_type_name_c))
  5246             if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
  5247             {
  5247             {
  5248         
  5248         
  5249                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
  5249                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
  5250                 s4o.print("(");
  5250                 s4o.print("(");
  5251                 return_type_symbol->accept(*this);
  5251                 return_type_symbol->accept(*this);
  5274             symbol_c *IN_param_value = &this->default_variable_name;
  5274             symbol_c *IN_param_value = &this->default_variable_name;
  5275         
  5275         
  5276             symbol_c *IN_type_symbol = param_data_type;
  5276             symbol_c *IN_type_symbol = param_data_type;
  5277             last_type_symbol = param_data_type;
  5277             last_type_symbol = param_data_type;
  5278             
  5278             
  5279             if (typeid(*last_type_symbol) == typeid(ulint_type_name_c))
  5279             if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
  5280             {
  5280             {
  5281         
  5281         
  5282                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
  5282                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
  5283                 s4o.print("(");
  5283                 s4o.print("(");
  5284                 return_type_symbol->accept(*this);
  5284                 return_type_symbol->accept(*this);
  5307             symbol_c *IN_param_value = &this->default_variable_name;
  5307             symbol_c *IN_param_value = &this->default_variable_name;
  5308         
  5308         
  5309             symbol_c *IN_type_symbol = param_data_type;
  5309             symbol_c *IN_type_symbol = param_data_type;
  5310             last_type_symbol = param_data_type;
  5310             last_type_symbol = param_data_type;
  5311             
  5311             
  5312             if (typeid(*last_type_symbol) == typeid(ulint_type_name_c))
  5312             if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
  5313             {
  5313             {
  5314         
  5314         
  5315                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
  5315                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
  5316                 s4o.print("(");
  5316                 s4o.print("(");
  5317                 return_type_symbol->accept(*this);
  5317                 return_type_symbol->accept(*this);
  5340             symbol_c *IN_param_value = &this->default_variable_name;
  5340             symbol_c *IN_param_value = &this->default_variable_name;
  5341         
  5341         
  5342             symbol_c *IN_type_symbol = param_data_type;
  5342             symbol_c *IN_type_symbol = param_data_type;
  5343             last_type_symbol = param_data_type;
  5343             last_type_symbol = param_data_type;
  5344             
  5344             
  5345             if (typeid(*last_type_symbol) == typeid(ulint_type_name_c))
  5345             if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
  5346             {
  5346             {
  5347         
  5347         
  5348                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
  5348                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
  5349                 s4o.print("(");
  5349                 s4o.print("(");
  5350                 return_type_symbol->accept(*this);
  5350                 return_type_symbol->accept(*this);
  5373             symbol_c *IN_param_value = &this->default_variable_name;
  5373             symbol_c *IN_param_value = &this->default_variable_name;
  5374         
  5374         
  5375             symbol_c *IN_type_symbol = param_data_type;
  5375             symbol_c *IN_type_symbol = param_data_type;
  5376             last_type_symbol = param_data_type;
  5376             last_type_symbol = param_data_type;
  5377             
  5377             
  5378             if (typeid(*last_type_symbol) == typeid(ulint_type_name_c))
  5378             if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
  5379             {
  5379             {
  5380         
  5380         
  5381                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
  5381                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
  5382                 s4o.print("(");
  5382                 s4o.print("(");
  5383                 return_type_symbol->accept(*this);
  5383                 return_type_symbol->accept(*this);
  5406             symbol_c *IN_param_value = &this->default_variable_name;
  5406             symbol_c *IN_param_value = &this->default_variable_name;
  5407         
  5407         
  5408             symbol_c *IN_type_symbol = param_data_type;
  5408             symbol_c *IN_type_symbol = param_data_type;
  5409             last_type_symbol = param_data_type;
  5409             last_type_symbol = param_data_type;
  5410             
  5410             
  5411             if (typeid(*last_type_symbol) == typeid(ulint_type_name_c))
  5411             if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
  5412             {
  5412             {
  5413         
  5413         
  5414                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
  5414                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
  5415                 s4o.print("(");
  5415                 s4o.print("(");
  5416                 return_type_symbol->accept(*this);
  5416                 return_type_symbol->accept(*this);
  5438             symbol_c *IN_param_value = &this->default_variable_name;
  5438             symbol_c *IN_param_value = &this->default_variable_name;
  5439         
  5439         
  5440             symbol_c *IN_type_symbol = param_data_type;
  5440             symbol_c *IN_type_symbol = param_data_type;
  5441             last_type_symbol = param_data_type;
  5441             last_type_symbol = param_data_type;
  5442             
  5442             
  5443             if (typeid(*last_type_symbol) == typeid(ulint_type_name_c))
  5443             if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
  5444             {
  5444             {
  5445         
  5445         
  5446                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
  5446                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
  5447                 s4o.print("(");
  5447                 s4o.print("(");
  5448                 return_type_symbol->accept(*this);
  5448                 return_type_symbol->accept(*this);
  5470             symbol_c *IN_param_value = &this->default_variable_name;
  5470             symbol_c *IN_param_value = &this->default_variable_name;
  5471         
  5471         
  5472             symbol_c *IN_type_symbol = param_data_type;
  5472             symbol_c *IN_type_symbol = param_data_type;
  5473             last_type_symbol = param_data_type;
  5473             last_type_symbol = param_data_type;
  5474             
  5474             
  5475             if (typeid(*last_type_symbol) == typeid(ulint_type_name_c))
  5475             if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
  5476             {
  5476             {
  5477         
  5477         
  5478                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
  5478                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
  5479                 s4o.print("(");
  5479                 s4o.print("(");
  5480                 return_type_symbol->accept(*this);
  5480                 return_type_symbol->accept(*this);
  5502             symbol_c *IN_param_value = &this->default_variable_name;
  5502             symbol_c *IN_param_value = &this->default_variable_name;
  5503         
  5503         
  5504             symbol_c *IN_type_symbol = param_data_type;
  5504             symbol_c *IN_type_symbol = param_data_type;
  5505             last_type_symbol = param_data_type;
  5505             last_type_symbol = param_data_type;
  5506             
  5506             
  5507             if (typeid(*last_type_symbol) == typeid(ulint_type_name_c))
  5507             if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
  5508             {
  5508             {
  5509         
  5509         
  5510                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
  5510                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
  5511                 s4o.print("(");
  5511                 s4o.print("(");
  5512                 return_type_symbol->accept(*this);
  5512                 return_type_symbol->accept(*this);
  5534             symbol_c *IN_param_value = &this->default_variable_name;
  5534             symbol_c *IN_param_value = &this->default_variable_name;
  5535         
  5535         
  5536             symbol_c *IN_type_symbol = param_data_type;
  5536             symbol_c *IN_type_symbol = param_data_type;
  5537             last_type_symbol = param_data_type;
  5537             last_type_symbol = param_data_type;
  5538             
  5538             
  5539             if (typeid(*last_type_symbol) == typeid(real_type_name_c))
  5539             if(search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol))
  5540             {
  5540             {
  5541         
  5541         
  5542                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
  5542                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
  5543                 s4o.print("(");
  5543                 s4o.print("(");
  5544                 return_type_symbol->accept(*this);
  5544                 return_type_symbol->accept(*this);
  5566             symbol_c *IN_param_value = &this->default_variable_name;
  5566             symbol_c *IN_param_value = &this->default_variable_name;
  5567         
  5567         
  5568             symbol_c *IN_type_symbol = param_data_type;
  5568             symbol_c *IN_type_symbol = param_data_type;
  5569             last_type_symbol = param_data_type;
  5569             last_type_symbol = param_data_type;
  5570             
  5570             
  5571             if (typeid(*last_type_symbol) == typeid(real_type_name_c))
  5571             if(search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol))
  5572             {
  5572             {
  5573         
  5573         
  5574                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
  5574                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
  5575                 s4o.print("(");
  5575                 s4o.print("(");
  5576                 return_type_symbol->accept(*this);
  5576                 return_type_symbol->accept(*this);
  5598             symbol_c *IN_param_value = &this->default_variable_name;
  5598             symbol_c *IN_param_value = &this->default_variable_name;
  5599         
  5599         
  5600             symbol_c *IN_type_symbol = param_data_type;
  5600             symbol_c *IN_type_symbol = param_data_type;
  5601             last_type_symbol = param_data_type;
  5601             last_type_symbol = param_data_type;
  5602             
  5602             
  5603             if (typeid(*last_type_symbol) == typeid(real_type_name_c))
  5603             if(search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol))
  5604             {
  5604             {
  5605         
  5605         
  5606                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
  5606                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
  5607                 s4o.print("(");
  5607                 s4o.print("(");
  5608                 return_type_symbol->accept(*this);
  5608                 return_type_symbol->accept(*this);
  5630             symbol_c *IN_param_value = &this->default_variable_name;
  5630             symbol_c *IN_param_value = &this->default_variable_name;
  5631         
  5631         
  5632             symbol_c *IN_type_symbol = param_data_type;
  5632             symbol_c *IN_type_symbol = param_data_type;
  5633             last_type_symbol = param_data_type;
  5633             last_type_symbol = param_data_type;
  5634             
  5634             
  5635             if (typeid(*last_type_symbol) == typeid(real_type_name_c))
  5635             if(search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol))
  5636             {
  5636             {
  5637         
  5637         
  5638                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
  5638                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
  5639                 s4o.print("(");
  5639                 s4o.print("(");
  5640                 return_type_symbol->accept(*this);
  5640                 return_type_symbol->accept(*this);
  5662             symbol_c *IN_param_value = &this->default_variable_name;
  5662             symbol_c *IN_param_value = &this->default_variable_name;
  5663         
  5663         
  5664             symbol_c *IN_type_symbol = param_data_type;
  5664             symbol_c *IN_type_symbol = param_data_type;
  5665             last_type_symbol = param_data_type;
  5665             last_type_symbol = param_data_type;
  5666             
  5666             
  5667             if (typeid(*last_type_symbol) == typeid(real_type_name_c))
  5667             if(search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol))
  5668             {
  5668             {
  5669         
  5669         
  5670                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
  5670                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
  5671                 s4o.print("(");
  5671                 s4o.print("(");
  5672                 return_type_symbol->accept(*this);
  5672                 return_type_symbol->accept(*this);
  5694             symbol_c *IN_param_value = &this->default_variable_name;
  5694             symbol_c *IN_param_value = &this->default_variable_name;
  5695         
  5695         
  5696             symbol_c *IN_type_symbol = param_data_type;
  5696             symbol_c *IN_type_symbol = param_data_type;
  5697             last_type_symbol = param_data_type;
  5697             last_type_symbol = param_data_type;
  5698             
  5698             
  5699             if (typeid(*last_type_symbol) == typeid(real_type_name_c))
  5699             if(search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol))
  5700             {
  5700             {
  5701         
  5701         
  5702                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
  5702                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
  5703                 s4o.print("(");
  5703                 s4o.print("(");
  5704                 return_type_symbol->accept(*this);
  5704                 return_type_symbol->accept(*this);
  5726             symbol_c *IN_param_value = &this->default_variable_name;
  5726             symbol_c *IN_param_value = &this->default_variable_name;
  5727         
  5727         
  5728             symbol_c *IN_type_symbol = param_data_type;
  5728             symbol_c *IN_type_symbol = param_data_type;
  5729             last_type_symbol = param_data_type;
  5729             last_type_symbol = param_data_type;
  5730             
  5730             
  5731             if (typeid(*last_type_symbol) == typeid(real_type_name_c))
  5731             if(search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol))
  5732             {
  5732             {
  5733         
  5733         
  5734                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
  5734                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
  5735                 s4o.print("(");
  5735                 s4o.print("(");
  5736                 return_type_symbol->accept(*this);
  5736                 return_type_symbol->accept(*this);
  5758             symbol_c *IN_param_value = &this->default_variable_name;
  5758             symbol_c *IN_param_value = &this->default_variable_name;
  5759         
  5759         
  5760             symbol_c *IN_type_symbol = param_data_type;
  5760             symbol_c *IN_type_symbol = param_data_type;
  5761             last_type_symbol = param_data_type;
  5761             last_type_symbol = param_data_type;
  5762             
  5762             
  5763             if (typeid(*last_type_symbol) == typeid(real_type_name_c))
  5763             if(search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol))
  5764             {
  5764             {
  5765         
  5765         
  5766                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
  5766                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
  5767                 s4o.print("(");
  5767                 s4o.print("(");
  5768                 return_type_symbol->accept(*this);
  5768                 return_type_symbol->accept(*this);
  5790             symbol_c *IN_param_value = &this->default_variable_name;
  5790             symbol_c *IN_param_value = &this->default_variable_name;
  5791         
  5791         
  5792             symbol_c *IN_type_symbol = param_data_type;
  5792             symbol_c *IN_type_symbol = param_data_type;
  5793             last_type_symbol = param_data_type;
  5793             last_type_symbol = param_data_type;
  5794             
  5794             
  5795             if (typeid(*last_type_symbol) == typeid(real_type_name_c))
  5795             if(search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol))
  5796             {
  5796             {
  5797         
  5797         
  5798                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
  5798                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
  5799                 s4o.print("(");
  5799                 s4o.print("(");
  5800                 return_type_symbol->accept(*this);
  5800                 return_type_symbol->accept(*this);
  5822             symbol_c *IN_param_value = &this->default_variable_name;
  5822             symbol_c *IN_param_value = &this->default_variable_name;
  5823         
  5823         
  5824             symbol_c *IN_type_symbol = param_data_type;
  5824             symbol_c *IN_type_symbol = param_data_type;
  5825             last_type_symbol = param_data_type;
  5825             last_type_symbol = param_data_type;
  5826             
  5826             
  5827             if (typeid(*last_type_symbol) == typeid(real_type_name_c))
  5827             if(search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol))
  5828             {
  5828             {
  5829         
  5829         
  5830                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
  5830                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
  5831                 s4o.print("(");
  5831                 s4o.print("(");
  5832                 return_type_symbol->accept(*this);
  5832                 return_type_symbol->accept(*this);
  5854             symbol_c *IN_param_value = &this->default_variable_name;
  5854             symbol_c *IN_param_value = &this->default_variable_name;
  5855         
  5855         
  5856             symbol_c *IN_type_symbol = param_data_type;
  5856             symbol_c *IN_type_symbol = param_data_type;
  5857             last_type_symbol = param_data_type;
  5857             last_type_symbol = param_data_type;
  5858             
  5858             
  5859             if (typeid(*last_type_symbol) == typeid(real_type_name_c))
  5859             if(search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol))
  5860             {
  5860             {
  5861         
  5861         
  5862                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
  5862                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
  5863                 s4o.print("(");
  5863                 s4o.print("(");
  5864                 return_type_symbol->accept(*this);
  5864                 return_type_symbol->accept(*this);
  5887             symbol_c *IN_param_value = &this->default_variable_name;
  5887             symbol_c *IN_param_value = &this->default_variable_name;
  5888         
  5888         
  5889             symbol_c *IN_type_symbol = param_data_type;
  5889             symbol_c *IN_type_symbol = param_data_type;
  5890             last_type_symbol = param_data_type;
  5890             last_type_symbol = param_data_type;
  5891             
  5891             
  5892             if (typeid(*last_type_symbol) == typeid(real_type_name_c))
  5892             if(search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol))
  5893             {
  5893             {
  5894         
  5894         
  5895                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
  5895                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
  5896                 s4o.print("(");
  5896                 s4o.print("(");
  5897                 return_type_symbol->accept(*this);
  5897                 return_type_symbol->accept(*this);
  5920             symbol_c *IN_param_value = &this->default_variable_name;
  5920             symbol_c *IN_param_value = &this->default_variable_name;
  5921         
  5921         
  5922             symbol_c *IN_type_symbol = param_data_type;
  5922             symbol_c *IN_type_symbol = param_data_type;
  5923             last_type_symbol = param_data_type;
  5923             last_type_symbol = param_data_type;
  5924             
  5924             
  5925             if (typeid(*last_type_symbol) == typeid(real_type_name_c))
  5925             if(search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol))
  5926             {
  5926             {
  5927         
  5927         
  5928                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
  5928                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
  5929                 s4o.print("(");
  5929                 s4o.print("(");
  5930                 return_type_symbol->accept(*this);
  5930                 return_type_symbol->accept(*this);
  5953             symbol_c *IN_param_value = &this->default_variable_name;
  5953             symbol_c *IN_param_value = &this->default_variable_name;
  5954         
  5954         
  5955             symbol_c *IN_type_symbol = param_data_type;
  5955             symbol_c *IN_type_symbol = param_data_type;
  5956             last_type_symbol = param_data_type;
  5956             last_type_symbol = param_data_type;
  5957             
  5957             
  5958             if (typeid(*last_type_symbol) == typeid(real_type_name_c))
  5958             if(search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol))
  5959             {
  5959             {
  5960         
  5960         
  5961                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
  5961                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
  5962                 s4o.print("(");
  5962                 s4o.print("(");
  5963                 return_type_symbol->accept(*this);
  5963                 return_type_symbol->accept(*this);
  5986             symbol_c *IN_param_value = &this->default_variable_name;
  5986             symbol_c *IN_param_value = &this->default_variable_name;
  5987         
  5987         
  5988             symbol_c *IN_type_symbol = param_data_type;
  5988             symbol_c *IN_type_symbol = param_data_type;
  5989             last_type_symbol = param_data_type;
  5989             last_type_symbol = param_data_type;
  5990             
  5990             
  5991             if (typeid(*last_type_symbol) == typeid(real_type_name_c))
  5991             if(search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol))
  5992             {
  5992             {
  5993         
  5993         
  5994                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
  5994                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
  5995                 s4o.print("(");
  5995                 s4o.print("(");
  5996                 return_type_symbol->accept(*this);
  5996                 return_type_symbol->accept(*this);
  6019             symbol_c *IN_param_value = &this->default_variable_name;
  6019             symbol_c *IN_param_value = &this->default_variable_name;
  6020         
  6020         
  6021             symbol_c *IN_type_symbol = param_data_type;
  6021             symbol_c *IN_type_symbol = param_data_type;
  6022             last_type_symbol = param_data_type;
  6022             last_type_symbol = param_data_type;
  6023             
  6023             
  6024             if (typeid(*last_type_symbol) == typeid(real_type_name_c))
  6024             if(search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol))
  6025             {
  6025             {
  6026         
  6026         
  6027                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
  6027                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
  6028                 s4o.print("(");
  6028                 s4o.print("(");
  6029                 return_type_symbol->accept(*this);
  6029                 return_type_symbol->accept(*this);
  6051             symbol_c *IN_param_value = &this->default_variable_name;
  6051             symbol_c *IN_param_value = &this->default_variable_name;
  6052         
  6052         
  6053             symbol_c *IN_type_symbol = param_data_type;
  6053             symbol_c *IN_type_symbol = param_data_type;
  6054             last_type_symbol = param_data_type;
  6054             last_type_symbol = param_data_type;
  6055             
  6055             
  6056             if (typeid(*last_type_symbol) == typeid(real_type_name_c))
  6056             if(search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol))
  6057             {
  6057             {
  6058         
  6058         
  6059                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
  6059                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
  6060                 s4o.print("(");
  6060                 s4o.print("(");
  6061                 return_type_symbol->accept(*this);
  6061                 return_type_symbol->accept(*this);
  6083             symbol_c *IN_param_value = &this->default_variable_name;
  6083             symbol_c *IN_param_value = &this->default_variable_name;
  6084         
  6084         
  6085             symbol_c *IN_type_symbol = param_data_type;
  6085             symbol_c *IN_type_symbol = param_data_type;
  6086             last_type_symbol = param_data_type;
  6086             last_type_symbol = param_data_type;
  6087             
  6087             
  6088             if (typeid(*last_type_symbol) == typeid(real_type_name_c))
  6088             if(search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol))
  6089             {
  6089             {
  6090         
  6090         
  6091                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
  6091                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
  6092                 s4o.print("(");
  6092                 s4o.print("(");
  6093                 return_type_symbol->accept(*this);
  6093                 return_type_symbol->accept(*this);
  6115             symbol_c *IN_param_value = &this->default_variable_name;
  6115             symbol_c *IN_param_value = &this->default_variable_name;
  6116         
  6116         
  6117             symbol_c *IN_type_symbol = param_data_type;
  6117             symbol_c *IN_type_symbol = param_data_type;
  6118             last_type_symbol = param_data_type;
  6118             last_type_symbol = param_data_type;
  6119             
  6119             
  6120             if (typeid(*last_type_symbol) == typeid(real_type_name_c))
  6120             if(search_expression_type->is_same_type(&search_constant_type_c::real_type_name, last_type_symbol))
  6121             {
  6121             {
  6122         
  6122         
  6123                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
  6123                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
  6124                 s4o.print("(");
  6124                 s4o.print("(");
  6125                 return_type_symbol->accept(*this);
  6125                 return_type_symbol->accept(*this);
  6147             symbol_c *IN_param_value = &this->default_variable_name;
  6147             symbol_c *IN_param_value = &this->default_variable_name;
  6148         
  6148         
  6149             symbol_c *IN_type_symbol = param_data_type;
  6149             symbol_c *IN_type_symbol = param_data_type;
  6150             last_type_symbol = param_data_type;
  6150             last_type_symbol = param_data_type;
  6151             
  6151             
  6152             if (typeid(*last_type_symbol) == typeid(lreal_type_name_c))
  6152             if(search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol))
  6153             {
  6153             {
  6154         
  6154         
  6155                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
  6155                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
  6156                 s4o.print("(");
  6156                 s4o.print("(");
  6157                 return_type_symbol->accept(*this);
  6157                 return_type_symbol->accept(*this);
  6179             symbol_c *IN_param_value = &this->default_variable_name;
  6179             symbol_c *IN_param_value = &this->default_variable_name;
  6180         
  6180         
  6181             symbol_c *IN_type_symbol = param_data_type;
  6181             symbol_c *IN_type_symbol = param_data_type;
  6182             last_type_symbol = param_data_type;
  6182             last_type_symbol = param_data_type;
  6183             
  6183             
  6184             if (typeid(*last_type_symbol) == typeid(lreal_type_name_c))
  6184             if(search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol))
  6185             {
  6185             {
  6186         
  6186         
  6187                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
  6187                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
  6188                 s4o.print("(");
  6188                 s4o.print("(");
  6189                 return_type_symbol->accept(*this);
  6189                 return_type_symbol->accept(*this);
  6211             symbol_c *IN_param_value = &this->default_variable_name;
  6211             symbol_c *IN_param_value = &this->default_variable_name;
  6212         
  6212         
  6213             symbol_c *IN_type_symbol = param_data_type;
  6213             symbol_c *IN_type_symbol = param_data_type;
  6214             last_type_symbol = param_data_type;
  6214             last_type_symbol = param_data_type;
  6215             
  6215             
  6216             if (typeid(*last_type_symbol) == typeid(lreal_type_name_c))
  6216             if(search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol))
  6217             {
  6217             {
  6218         
  6218         
  6219                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
  6219                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
  6220                 s4o.print("(");
  6220                 s4o.print("(");
  6221                 return_type_symbol->accept(*this);
  6221                 return_type_symbol->accept(*this);
  6243             symbol_c *IN_param_value = &this->default_variable_name;
  6243             symbol_c *IN_param_value = &this->default_variable_name;
  6244         
  6244         
  6245             symbol_c *IN_type_symbol = param_data_type;
  6245             symbol_c *IN_type_symbol = param_data_type;
  6246             last_type_symbol = param_data_type;
  6246             last_type_symbol = param_data_type;
  6247             
  6247             
  6248             if (typeid(*last_type_symbol) == typeid(lreal_type_name_c))
  6248             if(search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol))
  6249             {
  6249             {
  6250         
  6250         
  6251                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
  6251                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
  6252                 s4o.print("(");
  6252                 s4o.print("(");
  6253                 return_type_symbol->accept(*this);
  6253                 return_type_symbol->accept(*this);
  6275             symbol_c *IN_param_value = &this->default_variable_name;
  6275             symbol_c *IN_param_value = &this->default_variable_name;
  6276         
  6276         
  6277             symbol_c *IN_type_symbol = param_data_type;
  6277             symbol_c *IN_type_symbol = param_data_type;
  6278             last_type_symbol = param_data_type;
  6278             last_type_symbol = param_data_type;
  6279             
  6279             
  6280             if (typeid(*last_type_symbol) == typeid(lreal_type_name_c))
  6280             if(search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol))
  6281             {
  6281             {
  6282         
  6282         
  6283                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
  6283                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
  6284                 s4o.print("(");
  6284                 s4o.print("(");
  6285                 return_type_symbol->accept(*this);
  6285                 return_type_symbol->accept(*this);
  6307             symbol_c *IN_param_value = &this->default_variable_name;
  6307             symbol_c *IN_param_value = &this->default_variable_name;
  6308         
  6308         
  6309             symbol_c *IN_type_symbol = param_data_type;
  6309             symbol_c *IN_type_symbol = param_data_type;
  6310             last_type_symbol = param_data_type;
  6310             last_type_symbol = param_data_type;
  6311             
  6311             
  6312             if (typeid(*last_type_symbol) == typeid(lreal_type_name_c))
  6312             if(search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol))
  6313             {
  6313             {
  6314         
  6314         
  6315                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
  6315                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
  6316                 s4o.print("(");
  6316                 s4o.print("(");
  6317                 return_type_symbol->accept(*this);
  6317                 return_type_symbol->accept(*this);
  6339             symbol_c *IN_param_value = &this->default_variable_name;
  6339             symbol_c *IN_param_value = &this->default_variable_name;
  6340         
  6340         
  6341             symbol_c *IN_type_symbol = param_data_type;
  6341             symbol_c *IN_type_symbol = param_data_type;
  6342             last_type_symbol = param_data_type;
  6342             last_type_symbol = param_data_type;
  6343             
  6343             
  6344             if (typeid(*last_type_symbol) == typeid(lreal_type_name_c))
  6344             if(search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol))
  6345             {
  6345             {
  6346         
  6346         
  6347                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
  6347                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
  6348                 s4o.print("(");
  6348                 s4o.print("(");
  6349                 return_type_symbol->accept(*this);
  6349                 return_type_symbol->accept(*this);
  6371             symbol_c *IN_param_value = &this->default_variable_name;
  6371             symbol_c *IN_param_value = &this->default_variable_name;
  6372         
  6372         
  6373             symbol_c *IN_type_symbol = param_data_type;
  6373             symbol_c *IN_type_symbol = param_data_type;
  6374             last_type_symbol = param_data_type;
  6374             last_type_symbol = param_data_type;
  6375             
  6375             
  6376             if (typeid(*last_type_symbol) == typeid(lreal_type_name_c))
  6376             if(search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol))
  6377             {
  6377             {
  6378         
  6378         
  6379                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
  6379                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
  6380                 s4o.print("(");
  6380                 s4o.print("(");
  6381                 return_type_symbol->accept(*this);
  6381                 return_type_symbol->accept(*this);
  6403             symbol_c *IN_param_value = &this->default_variable_name;
  6403             symbol_c *IN_param_value = &this->default_variable_name;
  6404         
  6404         
  6405             symbol_c *IN_type_symbol = param_data_type;
  6405             symbol_c *IN_type_symbol = param_data_type;
  6406             last_type_symbol = param_data_type;
  6406             last_type_symbol = param_data_type;
  6407             
  6407             
  6408             if (typeid(*last_type_symbol) == typeid(lreal_type_name_c))
  6408             if(search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol))
  6409             {
  6409             {
  6410         
  6410         
  6411                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
  6411                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
  6412                 s4o.print("(");
  6412                 s4o.print("(");
  6413                 return_type_symbol->accept(*this);
  6413                 return_type_symbol->accept(*this);
  6435             symbol_c *IN_param_value = &this->default_variable_name;
  6435             symbol_c *IN_param_value = &this->default_variable_name;
  6436         
  6436         
  6437             symbol_c *IN_type_symbol = param_data_type;
  6437             symbol_c *IN_type_symbol = param_data_type;
  6438             last_type_symbol = param_data_type;
  6438             last_type_symbol = param_data_type;
  6439             
  6439             
  6440             if (typeid(*last_type_symbol) == typeid(lreal_type_name_c))
  6440             if(search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol))
  6441             {
  6441             {
  6442         
  6442         
  6443                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
  6443                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
  6444                 s4o.print("(");
  6444                 s4o.print("(");
  6445                 return_type_symbol->accept(*this);
  6445                 return_type_symbol->accept(*this);
  6467             symbol_c *IN_param_value = &this->default_variable_name;
  6467             symbol_c *IN_param_value = &this->default_variable_name;
  6468         
  6468         
  6469             symbol_c *IN_type_symbol = param_data_type;
  6469             symbol_c *IN_type_symbol = param_data_type;
  6470             last_type_symbol = param_data_type;
  6470             last_type_symbol = param_data_type;
  6471             
  6471             
  6472             if (typeid(*last_type_symbol) == typeid(lreal_type_name_c))
  6472             if(search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol))
  6473             {
  6473             {
  6474         
  6474         
  6475                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
  6475                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
  6476                 s4o.print("(");
  6476                 s4o.print("(");
  6477                 return_type_symbol->accept(*this);
  6477                 return_type_symbol->accept(*this);
  6500             symbol_c *IN_param_value = &this->default_variable_name;
  6500             symbol_c *IN_param_value = &this->default_variable_name;
  6501         
  6501         
  6502             symbol_c *IN_type_symbol = param_data_type;
  6502             symbol_c *IN_type_symbol = param_data_type;
  6503             last_type_symbol = param_data_type;
  6503             last_type_symbol = param_data_type;
  6504             
  6504             
  6505             if (typeid(*last_type_symbol) == typeid(lreal_type_name_c))
  6505             if(search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol))
  6506             {
  6506             {
  6507         
  6507         
  6508                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
  6508                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
  6509                 s4o.print("(");
  6509                 s4o.print("(");
  6510                 return_type_symbol->accept(*this);
  6510                 return_type_symbol->accept(*this);
  6533             symbol_c *IN_param_value = &this->default_variable_name;
  6533             symbol_c *IN_param_value = &this->default_variable_name;
  6534         
  6534         
  6535             symbol_c *IN_type_symbol = param_data_type;
  6535             symbol_c *IN_type_symbol = param_data_type;
  6536             last_type_symbol = param_data_type;
  6536             last_type_symbol = param_data_type;
  6537             
  6537             
  6538             if (typeid(*last_type_symbol) == typeid(lreal_type_name_c))
  6538             if(search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol))
  6539             {
  6539             {
  6540         
  6540         
  6541                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
  6541                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
  6542                 s4o.print("(");
  6542                 s4o.print("(");
  6543                 return_type_symbol->accept(*this);
  6543                 return_type_symbol->accept(*this);
  6566             symbol_c *IN_param_value = &this->default_variable_name;
  6566             symbol_c *IN_param_value = &this->default_variable_name;
  6567         
  6567         
  6568             symbol_c *IN_type_symbol = param_data_type;
  6568             symbol_c *IN_type_symbol = param_data_type;
  6569             last_type_symbol = param_data_type;
  6569             last_type_symbol = param_data_type;
  6570             
  6570             
  6571             if (typeid(*last_type_symbol) == typeid(lreal_type_name_c))
  6571             if(search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol))
  6572             {
  6572             {
  6573         
  6573         
  6574                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
  6574                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
  6575                 s4o.print("(");
  6575                 s4o.print("(");
  6576                 return_type_symbol->accept(*this);
  6576                 return_type_symbol->accept(*this);
  6599             symbol_c *IN_param_value = &this->default_variable_name;
  6599             symbol_c *IN_param_value = &this->default_variable_name;
  6600         
  6600         
  6601             symbol_c *IN_type_symbol = param_data_type;
  6601             symbol_c *IN_type_symbol = param_data_type;
  6602             last_type_symbol = param_data_type;
  6602             last_type_symbol = param_data_type;
  6603             
  6603             
  6604             if (typeid(*last_type_symbol) == typeid(lreal_type_name_c))
  6604             if(search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol))
  6605             {
  6605             {
  6606         
  6606         
  6607                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
  6607                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
  6608                 s4o.print("(");
  6608                 s4o.print("(");
  6609                 return_type_symbol->accept(*this);
  6609                 return_type_symbol->accept(*this);
  6632             symbol_c *IN_param_value = &this->default_variable_name;
  6632             symbol_c *IN_param_value = &this->default_variable_name;
  6633         
  6633         
  6634             symbol_c *IN_type_symbol = param_data_type;
  6634             symbol_c *IN_type_symbol = param_data_type;
  6635             last_type_symbol = param_data_type;
  6635             last_type_symbol = param_data_type;
  6636             
  6636             
  6637             if (typeid(*last_type_symbol) == typeid(lreal_type_name_c))
  6637             if(search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol))
  6638             {
  6638             {
  6639         
  6639         
  6640                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
  6640                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
  6641                 s4o.print("(");
  6641                 s4o.print("(");
  6642                 return_type_symbol->accept(*this);
  6642                 return_type_symbol->accept(*this);
  6664             symbol_c *IN_param_value = &this->default_variable_name;
  6664             symbol_c *IN_param_value = &this->default_variable_name;
  6665         
  6665         
  6666             symbol_c *IN_type_symbol = param_data_type;
  6666             symbol_c *IN_type_symbol = param_data_type;
  6667             last_type_symbol = param_data_type;
  6667             last_type_symbol = param_data_type;
  6668             
  6668             
  6669             if (typeid(*last_type_symbol) == typeid(lreal_type_name_c))
  6669             if(search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol))
  6670             {
  6670             {
  6671         
  6671         
  6672                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
  6672                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
  6673                 s4o.print("(");
  6673                 s4o.print("(");
  6674                 return_type_symbol->accept(*this);
  6674                 return_type_symbol->accept(*this);
  6696             symbol_c *IN_param_value = &this->default_variable_name;
  6696             symbol_c *IN_param_value = &this->default_variable_name;
  6697         
  6697         
  6698             symbol_c *IN_type_symbol = param_data_type;
  6698             symbol_c *IN_type_symbol = param_data_type;
  6699             last_type_symbol = param_data_type;
  6699             last_type_symbol = param_data_type;
  6700             
  6700             
  6701             if (typeid(*last_type_symbol) == typeid(lreal_type_name_c))
  6701             if(search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol))
  6702             {
  6702             {
  6703         
  6703         
  6704                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
  6704                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
  6705                 s4o.print("(");
  6705                 s4o.print("(");
  6706                 return_type_symbol->accept(*this);
  6706                 return_type_symbol->accept(*this);
  6728             symbol_c *IN_param_value = &this->default_variable_name;
  6728             symbol_c *IN_param_value = &this->default_variable_name;
  6729         
  6729         
  6730             symbol_c *IN_type_symbol = param_data_type;
  6730             symbol_c *IN_type_symbol = param_data_type;
  6731             last_type_symbol = param_data_type;
  6731             last_type_symbol = param_data_type;
  6732             
  6732             
  6733             if (typeid(*last_type_symbol) == typeid(lreal_type_name_c))
  6733             if(search_expression_type->is_same_type(&search_constant_type_c::lreal_type_name, last_type_symbol))
  6734             {
  6734             {
  6735         
  6735         
  6736                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
  6736                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
  6737                 s4o.print("(");
  6737                 s4o.print("(");
  6738                 return_type_symbol->accept(*this);
  6738                 return_type_symbol->accept(*this);
  6747         
  6747         
  6748     }/*function_lreal_to_lword*/
  6748     }/*function_lreal_to_lword*/
  6749     break;
  6749     break;
  6750 
  6750 
  6751 /****
  6751 /****
  6752  *TIME_TO_BOOL
  6752  *TIME_TO_SINT
  6753  */
  6753  */
  6754     case function_time_to_bool :
  6754     case function_time_to_sint :
  6755     {
  6755     {
  6756         symbol_c *last_type_symbol = NULL;
  6756         symbol_c *last_type_symbol = NULL;
  6757 
  6757 
  6758         {
  6758         {
  6759             /* Get the value from a foo(<param_name> = <param_value>) style call */
  6759             /* Get the value from a foo(<param_name> = <param_value>) style call */
  6760             symbol_c *IN_param_value = &this->default_variable_name;
  6760             symbol_c *IN_param_value = &this->default_variable_name;
  6761         
  6761         
  6762             symbol_c *IN_type_symbol = param_data_type;
  6762             symbol_c *IN_type_symbol = param_data_type;
  6763             last_type_symbol = param_data_type;
  6763             last_type_symbol = param_data_type;
  6764             
  6764             
  6765             if (typeid(*last_type_symbol) == typeid(time_type_name_c))
  6765             if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
       
  6766             {
       
  6767         
       
  6768                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
       
  6769                 s4o.print("(");
       
  6770                 return_type_symbol->accept(*this);
       
  6771                 s4o.print(")__time_to_int(");
       
  6772                 IN_param_value->accept(*this);
       
  6773                 s4o.print(")");
       
  6774                 return NULL;
       
  6775                 
       
  6776             }
       
  6777             
       
  6778             ERROR;
       
  6779         }
       
  6780         
       
  6781     }/*function_time_to_sint*/
       
  6782     break;
       
  6783 
       
  6784 /****
       
  6785  *TIME_TO_INT
       
  6786  */
       
  6787     case function_time_to_int :
       
  6788     {
       
  6789         symbol_c *last_type_symbol = NULL;
       
  6790 
       
  6791         {
       
  6792             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  6793             symbol_c *IN_param_value = &this->default_variable_name;
       
  6794         
       
  6795             symbol_c *IN_type_symbol = param_data_type;
       
  6796             last_type_symbol = param_data_type;
       
  6797             
       
  6798             if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
       
  6799             {
       
  6800         
       
  6801                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
       
  6802                 s4o.print("(");
       
  6803                 return_type_symbol->accept(*this);
       
  6804                 s4o.print(")__time_to_int(");
       
  6805                 IN_param_value->accept(*this);
       
  6806                 s4o.print(")");
       
  6807                 return NULL;
       
  6808                 
       
  6809             }
       
  6810             
       
  6811             ERROR;
       
  6812         }
       
  6813         
       
  6814     }/*function_time_to_int*/
       
  6815     break;
       
  6816 
       
  6817 /****
       
  6818  *TIME_TO_DINT
       
  6819  */
       
  6820     case function_time_to_dint :
       
  6821     {
       
  6822         symbol_c *last_type_symbol = NULL;
       
  6823 
       
  6824         {
       
  6825             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  6826             symbol_c *IN_param_value = &this->default_variable_name;
       
  6827         
       
  6828             symbol_c *IN_type_symbol = param_data_type;
       
  6829             last_type_symbol = param_data_type;
       
  6830             
       
  6831             if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
       
  6832             {
       
  6833         
       
  6834                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
       
  6835                 s4o.print("(");
       
  6836                 return_type_symbol->accept(*this);
       
  6837                 s4o.print(")__time_to_int(");
       
  6838                 IN_param_value->accept(*this);
       
  6839                 s4o.print(")");
       
  6840                 return NULL;
       
  6841                 
       
  6842             }
       
  6843             
       
  6844             ERROR;
       
  6845         }
       
  6846         
       
  6847     }/*function_time_to_dint*/
       
  6848     break;
       
  6849 
       
  6850 /****
       
  6851  *TIME_TO_LINT
       
  6852  */
       
  6853     case function_time_to_lint :
       
  6854     {
       
  6855         symbol_c *last_type_symbol = NULL;
       
  6856 
       
  6857         {
       
  6858             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  6859             symbol_c *IN_param_value = &this->default_variable_name;
       
  6860         
       
  6861             symbol_c *IN_type_symbol = param_data_type;
       
  6862             last_type_symbol = param_data_type;
       
  6863             
       
  6864             if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
       
  6865             {
       
  6866         
       
  6867                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
       
  6868                 s4o.print("(");
       
  6869                 return_type_symbol->accept(*this);
       
  6870                 s4o.print(")__time_to_int(");
       
  6871                 IN_param_value->accept(*this);
       
  6872                 s4o.print(")");
       
  6873                 return NULL;
       
  6874                 
       
  6875             }
       
  6876             
       
  6877             ERROR;
       
  6878         }
       
  6879         
       
  6880     }/*function_time_to_lint*/
       
  6881     break;
       
  6882 
       
  6883 /****
       
  6884  *TIME_TO_USINT
       
  6885  */
       
  6886     case function_time_to_usint :
       
  6887     {
       
  6888         symbol_c *last_type_symbol = NULL;
       
  6889 
       
  6890         {
       
  6891             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  6892             symbol_c *IN_param_value = &this->default_variable_name;
       
  6893         
       
  6894             symbol_c *IN_type_symbol = param_data_type;
       
  6895             last_type_symbol = param_data_type;
       
  6896             
       
  6897             if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
       
  6898             {
       
  6899         
       
  6900                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
       
  6901                 s4o.print("(");
       
  6902                 return_type_symbol->accept(*this);
       
  6903                 s4o.print(")__time_to_int(");
       
  6904                 IN_param_value->accept(*this);
       
  6905                 s4o.print(")");
       
  6906                 return NULL;
       
  6907                 
       
  6908             }
       
  6909             
       
  6910             ERROR;
       
  6911         }
       
  6912         
       
  6913     }/*function_time_to_usint*/
       
  6914     break;
       
  6915 
       
  6916 /****
       
  6917  *TIME_TO_UINT
       
  6918  */
       
  6919     case function_time_to_uint :
       
  6920     {
       
  6921         symbol_c *last_type_symbol = NULL;
       
  6922 
       
  6923         {
       
  6924             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  6925             symbol_c *IN_param_value = &this->default_variable_name;
       
  6926         
       
  6927             symbol_c *IN_type_symbol = param_data_type;
       
  6928             last_type_symbol = param_data_type;
       
  6929             
       
  6930             if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
       
  6931             {
       
  6932         
       
  6933                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
       
  6934                 s4o.print("(");
       
  6935                 return_type_symbol->accept(*this);
       
  6936                 s4o.print(")__time_to_int(");
       
  6937                 IN_param_value->accept(*this);
       
  6938                 s4o.print(")");
       
  6939                 return NULL;
       
  6940                 
       
  6941             }
       
  6942             
       
  6943             ERROR;
       
  6944         }
       
  6945         
       
  6946     }/*function_time_to_uint*/
       
  6947     break;
       
  6948 
       
  6949 /****
       
  6950  *TIME_TO_UDINT
       
  6951  */
       
  6952     case function_time_to_udint :
       
  6953     {
       
  6954         symbol_c *last_type_symbol = NULL;
       
  6955 
       
  6956         {
       
  6957             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  6958             symbol_c *IN_param_value = &this->default_variable_name;
       
  6959         
       
  6960             symbol_c *IN_type_symbol = param_data_type;
       
  6961             last_type_symbol = param_data_type;
       
  6962             
       
  6963             if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
       
  6964             {
       
  6965         
       
  6966                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
       
  6967                 s4o.print("(");
       
  6968                 return_type_symbol->accept(*this);
       
  6969                 s4o.print(")__time_to_int(");
       
  6970                 IN_param_value->accept(*this);
       
  6971                 s4o.print(")");
       
  6972                 return NULL;
       
  6973                 
       
  6974             }
       
  6975             
       
  6976             ERROR;
       
  6977         }
       
  6978         
       
  6979     }/*function_time_to_udint*/
       
  6980     break;
       
  6981 
       
  6982 /****
       
  6983  *TIME_TO_ULINT
       
  6984  */
       
  6985     case function_time_to_ulint :
       
  6986     {
       
  6987         symbol_c *last_type_symbol = NULL;
       
  6988 
       
  6989         {
       
  6990             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  6991             symbol_c *IN_param_value = &this->default_variable_name;
       
  6992         
       
  6993             symbol_c *IN_type_symbol = param_data_type;
       
  6994             last_type_symbol = param_data_type;
       
  6995             
       
  6996             if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
       
  6997             {
       
  6998         
       
  6999                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
       
  7000                 s4o.print("(");
       
  7001                 return_type_symbol->accept(*this);
       
  7002                 s4o.print(")__time_to_int(");
       
  7003                 IN_param_value->accept(*this);
       
  7004                 s4o.print(")");
       
  7005                 return NULL;
       
  7006                 
       
  7007             }
       
  7008             
       
  7009             ERROR;
       
  7010         }
       
  7011         
       
  7012     }/*function_time_to_ulint*/
       
  7013     break;
       
  7014 
       
  7015 /****
       
  7016  *TIME_TO_REAL
       
  7017  */
       
  7018     case function_time_to_real :
       
  7019     {
       
  7020         symbol_c *last_type_symbol = NULL;
       
  7021 
       
  7022         {
       
  7023             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  7024             symbol_c *IN_param_value = &this->default_variable_name;
       
  7025         
       
  7026             symbol_c *IN_type_symbol = param_data_type;
       
  7027             last_type_symbol = param_data_type;
       
  7028             
       
  7029             if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
       
  7030             {
       
  7031         
       
  7032                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
       
  7033                 s4o.print("(");
       
  7034                 return_type_symbol->accept(*this);
       
  7035                 s4o.print(")__time_to_real(");
       
  7036                 IN_param_value->accept(*this);
       
  7037                 s4o.print(")");
       
  7038                 return NULL;
       
  7039                 
       
  7040             }
       
  7041             
       
  7042             ERROR;
       
  7043         }
       
  7044         
       
  7045     }/*function_time_to_real*/
       
  7046     break;
       
  7047 
       
  7048 /****
       
  7049  *TIME_TO_LREAL
       
  7050  */
       
  7051     case function_time_to_lreal :
       
  7052     {
       
  7053         symbol_c *last_type_symbol = NULL;
       
  7054 
       
  7055         {
       
  7056             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  7057             symbol_c *IN_param_value = &this->default_variable_name;
       
  7058         
       
  7059             symbol_c *IN_type_symbol = param_data_type;
       
  7060             last_type_symbol = param_data_type;
       
  7061             
       
  7062             if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
       
  7063             {
       
  7064         
       
  7065                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
       
  7066                 s4o.print("(");
       
  7067                 return_type_symbol->accept(*this);
       
  7068                 s4o.print(")__time_to_real(");
       
  7069                 IN_param_value->accept(*this);
       
  7070                 s4o.print(")");
       
  7071                 return NULL;
       
  7072                 
       
  7073             }
       
  7074             
       
  7075             ERROR;
       
  7076         }
       
  7077         
       
  7078     }/*function_time_to_lreal*/
       
  7079     break;
       
  7080 
       
  7081 /****
       
  7082  *TIME_TO_STRING
       
  7083  */
       
  7084     case function_time_to_string :
       
  7085     {
       
  7086         symbol_c *last_type_symbol = NULL;
       
  7087 
       
  7088         {
       
  7089             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  7090             symbol_c *IN_param_value = &this->default_variable_name;
       
  7091         
       
  7092             symbol_c *IN_type_symbol = param_data_type;
       
  7093             last_type_symbol = param_data_type;
       
  7094             
       
  7095             if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
       
  7096             {
       
  7097         
       
  7098                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
       
  7099                 s4o.print("(");
       
  7100                 return_type_symbol->accept(*this);
       
  7101                 s4o.print(")__time_to_string(");
       
  7102                 IN_param_value->accept(*this);
       
  7103                 s4o.print(")");
       
  7104                 return NULL;
       
  7105                 
       
  7106             }
       
  7107             
       
  7108             ERROR;
       
  7109         }
       
  7110         
       
  7111     }/*function_time_to_string*/
       
  7112     break;
       
  7113 
       
  7114 /****
       
  7115  *TIME_TO_BYTE
       
  7116  */
       
  7117     case function_time_to_byte :
       
  7118     {
       
  7119         symbol_c *last_type_symbol = NULL;
       
  7120 
       
  7121         {
       
  7122             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  7123             symbol_c *IN_param_value = &this->default_variable_name;
       
  7124         
       
  7125             symbol_c *IN_type_symbol = param_data_type;
       
  7126             last_type_symbol = param_data_type;
       
  7127             
       
  7128             if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
       
  7129             {
       
  7130         
       
  7131                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
       
  7132                 s4o.print("(");
       
  7133                 return_type_symbol->accept(*this);
       
  7134                 s4o.print(")__time_to_int(");
       
  7135                 IN_param_value->accept(*this);
       
  7136                 s4o.print(")");
       
  7137                 return NULL;
       
  7138                 
       
  7139             }
       
  7140             
       
  7141             ERROR;
       
  7142         }
       
  7143         
       
  7144     }/*function_time_to_byte*/
       
  7145     break;
       
  7146 
       
  7147 /****
       
  7148  *TIME_TO_WORD
       
  7149  */
       
  7150     case function_time_to_word :
       
  7151     {
       
  7152         symbol_c *last_type_symbol = NULL;
       
  7153 
       
  7154         {
       
  7155             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  7156             symbol_c *IN_param_value = &this->default_variable_name;
       
  7157         
       
  7158             symbol_c *IN_type_symbol = param_data_type;
       
  7159             last_type_symbol = param_data_type;
       
  7160             
       
  7161             if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
       
  7162             {
       
  7163         
       
  7164                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
       
  7165                 s4o.print("(");
       
  7166                 return_type_symbol->accept(*this);
       
  7167                 s4o.print(")__time_to_int(");
       
  7168                 IN_param_value->accept(*this);
       
  7169                 s4o.print(")");
       
  7170                 return NULL;
       
  7171                 
       
  7172             }
       
  7173             
       
  7174             ERROR;
       
  7175         }
       
  7176         
       
  7177     }/*function_time_to_word*/
       
  7178     break;
       
  7179 
       
  7180 /****
       
  7181  *TIME_TO_DWORD
       
  7182  */
       
  7183     case function_time_to_dword :
       
  7184     {
       
  7185         symbol_c *last_type_symbol = NULL;
       
  7186 
       
  7187         {
       
  7188             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  7189             symbol_c *IN_param_value = &this->default_variable_name;
       
  7190         
       
  7191             symbol_c *IN_type_symbol = param_data_type;
       
  7192             last_type_symbol = param_data_type;
       
  7193             
       
  7194             if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
       
  7195             {
       
  7196         
       
  7197                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
       
  7198                 s4o.print("(");
       
  7199                 return_type_symbol->accept(*this);
       
  7200                 s4o.print(")__time_to_int(");
       
  7201                 IN_param_value->accept(*this);
       
  7202                 s4o.print(")");
       
  7203                 return NULL;
       
  7204                 
       
  7205             }
       
  7206             
       
  7207             ERROR;
       
  7208         }
       
  7209         
       
  7210     }/*function_time_to_dword*/
       
  7211     break;
       
  7212 
       
  7213 /****
       
  7214  *TIME_TO_LWORD
       
  7215  */
       
  7216     case function_time_to_lword :
       
  7217     {
       
  7218         symbol_c *last_type_symbol = NULL;
       
  7219 
       
  7220         {
       
  7221             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  7222             symbol_c *IN_param_value = &this->default_variable_name;
       
  7223         
       
  7224             symbol_c *IN_type_symbol = param_data_type;
       
  7225             last_type_symbol = param_data_type;
       
  7226             
       
  7227             if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
       
  7228             {
       
  7229         
       
  7230                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
       
  7231                 s4o.print("(");
       
  7232                 return_type_symbol->accept(*this);
       
  7233                 s4o.print(")__time_to_int(");
       
  7234                 IN_param_value->accept(*this);
       
  7235                 s4o.print(")");
       
  7236                 return NULL;
       
  7237                 
       
  7238             }
       
  7239             
       
  7240             ERROR;
       
  7241         }
       
  7242         
       
  7243     }/*function_time_to_lword*/
       
  7244     break;
       
  7245 
       
  7246 /****
       
  7247  *DATE_TO_SINT
       
  7248  */
       
  7249     case function_date_to_sint :
       
  7250     {
       
  7251         symbol_c *last_type_symbol = NULL;
       
  7252 
       
  7253         {
       
  7254             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  7255             symbol_c *IN_param_value = &this->default_variable_name;
       
  7256         
       
  7257             symbol_c *IN_type_symbol = param_data_type;
       
  7258             last_type_symbol = param_data_type;
       
  7259             
       
  7260             if(search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol))
       
  7261             {
       
  7262         
       
  7263                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
       
  7264                 s4o.print("(");
       
  7265                 return_type_symbol->accept(*this);
       
  7266                 s4o.print(")__time_to_int(");
       
  7267                 IN_param_value->accept(*this);
       
  7268                 s4o.print(")");
       
  7269                 return NULL;
       
  7270                 
       
  7271             }
       
  7272             
       
  7273             ERROR;
       
  7274         }
       
  7275         
       
  7276     }/*function_date_to_sint*/
       
  7277     break;
       
  7278 
       
  7279 /****
       
  7280  *DATE_TO_INT
       
  7281  */
       
  7282     case function_date_to_int :
       
  7283     {
       
  7284         symbol_c *last_type_symbol = NULL;
       
  7285 
       
  7286         {
       
  7287             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  7288             symbol_c *IN_param_value = &this->default_variable_name;
       
  7289         
       
  7290             symbol_c *IN_type_symbol = param_data_type;
       
  7291             last_type_symbol = param_data_type;
       
  7292             
       
  7293             if(search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol))
       
  7294             {
       
  7295         
       
  7296                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
       
  7297                 s4o.print("(");
       
  7298                 return_type_symbol->accept(*this);
       
  7299                 s4o.print(")__time_to_int(");
       
  7300                 IN_param_value->accept(*this);
       
  7301                 s4o.print(")");
       
  7302                 return NULL;
       
  7303                 
       
  7304             }
       
  7305             
       
  7306             ERROR;
       
  7307         }
       
  7308         
       
  7309     }/*function_date_to_int*/
       
  7310     break;
       
  7311 
       
  7312 /****
       
  7313  *DATE_TO_DINT
       
  7314  */
       
  7315     case function_date_to_dint :
       
  7316     {
       
  7317         symbol_c *last_type_symbol = NULL;
       
  7318 
       
  7319         {
       
  7320             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  7321             symbol_c *IN_param_value = &this->default_variable_name;
       
  7322         
       
  7323             symbol_c *IN_type_symbol = param_data_type;
       
  7324             last_type_symbol = param_data_type;
       
  7325             
       
  7326             if(search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol))
       
  7327             {
       
  7328         
       
  7329                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
       
  7330                 s4o.print("(");
       
  7331                 return_type_symbol->accept(*this);
       
  7332                 s4o.print(")__time_to_int(");
       
  7333                 IN_param_value->accept(*this);
       
  7334                 s4o.print(")");
       
  7335                 return NULL;
       
  7336                 
       
  7337             }
       
  7338             
       
  7339             ERROR;
       
  7340         }
       
  7341         
       
  7342     }/*function_date_to_dint*/
       
  7343     break;
       
  7344 
       
  7345 /****
       
  7346  *DATE_TO_LINT
       
  7347  */
       
  7348     case function_date_to_lint :
       
  7349     {
       
  7350         symbol_c *last_type_symbol = NULL;
       
  7351 
       
  7352         {
       
  7353             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  7354             symbol_c *IN_param_value = &this->default_variable_name;
       
  7355         
       
  7356             symbol_c *IN_type_symbol = param_data_type;
       
  7357             last_type_symbol = param_data_type;
       
  7358             
       
  7359             if(search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol))
       
  7360             {
       
  7361         
       
  7362                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
       
  7363                 s4o.print("(");
       
  7364                 return_type_symbol->accept(*this);
       
  7365                 s4o.print(")__time_to_int(");
       
  7366                 IN_param_value->accept(*this);
       
  7367                 s4o.print(")");
       
  7368                 return NULL;
       
  7369                 
       
  7370             }
       
  7371             
       
  7372             ERROR;
       
  7373         }
       
  7374         
       
  7375     }/*function_date_to_lint*/
       
  7376     break;
       
  7377 
       
  7378 /****
       
  7379  *DATE_TO_USINT
       
  7380  */
       
  7381     case function_date_to_usint :
       
  7382     {
       
  7383         symbol_c *last_type_symbol = NULL;
       
  7384 
       
  7385         {
       
  7386             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  7387             symbol_c *IN_param_value = &this->default_variable_name;
       
  7388         
       
  7389             symbol_c *IN_type_symbol = param_data_type;
       
  7390             last_type_symbol = param_data_type;
       
  7391             
       
  7392             if(search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol))
       
  7393             {
       
  7394         
       
  7395                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
       
  7396                 s4o.print("(");
       
  7397                 return_type_symbol->accept(*this);
       
  7398                 s4o.print(")__time_to_int(");
       
  7399                 IN_param_value->accept(*this);
       
  7400                 s4o.print(")");
       
  7401                 return NULL;
       
  7402                 
       
  7403             }
       
  7404             
       
  7405             ERROR;
       
  7406         }
       
  7407         
       
  7408     }/*function_date_to_usint*/
       
  7409     break;
       
  7410 
       
  7411 /****
       
  7412  *DATE_TO_UINT
       
  7413  */
       
  7414     case function_date_to_uint :
       
  7415     {
       
  7416         symbol_c *last_type_symbol = NULL;
       
  7417 
       
  7418         {
       
  7419             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  7420             symbol_c *IN_param_value = &this->default_variable_name;
       
  7421         
       
  7422             symbol_c *IN_type_symbol = param_data_type;
       
  7423             last_type_symbol = param_data_type;
       
  7424             
       
  7425             if(search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol))
       
  7426             {
       
  7427         
       
  7428                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
       
  7429                 s4o.print("(");
       
  7430                 return_type_symbol->accept(*this);
       
  7431                 s4o.print(")__time_to_int(");
       
  7432                 IN_param_value->accept(*this);
       
  7433                 s4o.print(")");
       
  7434                 return NULL;
       
  7435                 
       
  7436             }
       
  7437             
       
  7438             ERROR;
       
  7439         }
       
  7440         
       
  7441     }/*function_date_to_uint*/
       
  7442     break;
       
  7443 
       
  7444 /****
       
  7445  *DATE_TO_UDINT
       
  7446  */
       
  7447     case function_date_to_udint :
       
  7448     {
       
  7449         symbol_c *last_type_symbol = NULL;
       
  7450 
       
  7451         {
       
  7452             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  7453             symbol_c *IN_param_value = &this->default_variable_name;
       
  7454         
       
  7455             symbol_c *IN_type_symbol = param_data_type;
       
  7456             last_type_symbol = param_data_type;
       
  7457             
       
  7458             if(search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol))
       
  7459             {
       
  7460         
       
  7461                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
       
  7462                 s4o.print("(");
       
  7463                 return_type_symbol->accept(*this);
       
  7464                 s4o.print(")__time_to_int(");
       
  7465                 IN_param_value->accept(*this);
       
  7466                 s4o.print(")");
       
  7467                 return NULL;
       
  7468                 
       
  7469             }
       
  7470             
       
  7471             ERROR;
       
  7472         }
       
  7473         
       
  7474     }/*function_date_to_udint*/
       
  7475     break;
       
  7476 
       
  7477 /****
       
  7478  *DATE_TO_ULINT
       
  7479  */
       
  7480     case function_date_to_ulint :
       
  7481     {
       
  7482         symbol_c *last_type_symbol = NULL;
       
  7483 
       
  7484         {
       
  7485             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  7486             symbol_c *IN_param_value = &this->default_variable_name;
       
  7487         
       
  7488             symbol_c *IN_type_symbol = param_data_type;
       
  7489             last_type_symbol = param_data_type;
       
  7490             
       
  7491             if(search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol))
       
  7492             {
       
  7493         
       
  7494                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
       
  7495                 s4o.print("(");
       
  7496                 return_type_symbol->accept(*this);
       
  7497                 s4o.print(")__time_to_int(");
       
  7498                 IN_param_value->accept(*this);
       
  7499                 s4o.print(")");
       
  7500                 return NULL;
       
  7501                 
       
  7502             }
       
  7503             
       
  7504             ERROR;
       
  7505         }
       
  7506         
       
  7507     }/*function_date_to_ulint*/
       
  7508     break;
       
  7509 
       
  7510 /****
       
  7511  *DATE_TO_REAL
       
  7512  */
       
  7513     case function_date_to_real :
       
  7514     {
       
  7515         symbol_c *last_type_symbol = NULL;
       
  7516 
       
  7517         {
       
  7518             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  7519             symbol_c *IN_param_value = &this->default_variable_name;
       
  7520         
       
  7521             symbol_c *IN_type_symbol = param_data_type;
       
  7522             last_type_symbol = param_data_type;
       
  7523             
       
  7524             if(search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol))
       
  7525             {
       
  7526         
       
  7527                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
       
  7528                 s4o.print("(");
       
  7529                 return_type_symbol->accept(*this);
       
  7530                 s4o.print(")__time_to_real(");
       
  7531                 IN_param_value->accept(*this);
       
  7532                 s4o.print(")");
       
  7533                 return NULL;
       
  7534                 
       
  7535             }
       
  7536             
       
  7537             ERROR;
       
  7538         }
       
  7539         
       
  7540     }/*function_date_to_real*/
       
  7541     break;
       
  7542 
       
  7543 /****
       
  7544  *DATE_TO_LREAL
       
  7545  */
       
  7546     case function_date_to_lreal :
       
  7547     {
       
  7548         symbol_c *last_type_symbol = NULL;
       
  7549 
       
  7550         {
       
  7551             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  7552             symbol_c *IN_param_value = &this->default_variable_name;
       
  7553         
       
  7554             symbol_c *IN_type_symbol = param_data_type;
       
  7555             last_type_symbol = param_data_type;
       
  7556             
       
  7557             if(search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol))
       
  7558             {
       
  7559         
       
  7560                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
       
  7561                 s4o.print("(");
       
  7562                 return_type_symbol->accept(*this);
       
  7563                 s4o.print(")__time_to_real(");
       
  7564                 IN_param_value->accept(*this);
       
  7565                 s4o.print(")");
       
  7566                 return NULL;
       
  7567                 
       
  7568             }
       
  7569             
       
  7570             ERROR;
       
  7571         }
       
  7572         
       
  7573     }/*function_date_to_lreal*/
       
  7574     break;
       
  7575 
       
  7576 /****
       
  7577  *DATE_TO_STRING
       
  7578  */
       
  7579     case function_date_to_string :
       
  7580     {
       
  7581         symbol_c *last_type_symbol = NULL;
       
  7582 
       
  7583         {
       
  7584             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  7585             symbol_c *IN_param_value = &this->default_variable_name;
       
  7586         
       
  7587             symbol_c *IN_type_symbol = param_data_type;
       
  7588             last_type_symbol = param_data_type;
       
  7589             
       
  7590             if(search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol))
       
  7591             {
       
  7592         
       
  7593                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
       
  7594                 s4o.print("(");
       
  7595                 return_type_symbol->accept(*this);
       
  7596                 s4o.print(")__date_to_string(");
       
  7597                 IN_param_value->accept(*this);
       
  7598                 s4o.print(")");
       
  7599                 return NULL;
       
  7600                 
       
  7601             }
       
  7602             
       
  7603             ERROR;
       
  7604         }
       
  7605         
       
  7606     }/*function_date_to_string*/
       
  7607     break;
       
  7608 
       
  7609 /****
       
  7610  *DATE_TO_BYTE
       
  7611  */
       
  7612     case function_date_to_byte :
       
  7613     {
       
  7614         symbol_c *last_type_symbol = NULL;
       
  7615 
       
  7616         {
       
  7617             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  7618             symbol_c *IN_param_value = &this->default_variable_name;
       
  7619         
       
  7620             symbol_c *IN_type_symbol = param_data_type;
       
  7621             last_type_symbol = param_data_type;
       
  7622             
       
  7623             if(search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol))
       
  7624             {
       
  7625         
       
  7626                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
       
  7627                 s4o.print("(");
       
  7628                 return_type_symbol->accept(*this);
       
  7629                 s4o.print(")__time_to_int(");
       
  7630                 IN_param_value->accept(*this);
       
  7631                 s4o.print(")");
       
  7632                 return NULL;
       
  7633                 
       
  7634             }
       
  7635             
       
  7636             ERROR;
       
  7637         }
       
  7638         
       
  7639     }/*function_date_to_byte*/
       
  7640     break;
       
  7641 
       
  7642 /****
       
  7643  *DATE_TO_WORD
       
  7644  */
       
  7645     case function_date_to_word :
       
  7646     {
       
  7647         symbol_c *last_type_symbol = NULL;
       
  7648 
       
  7649         {
       
  7650             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  7651             symbol_c *IN_param_value = &this->default_variable_name;
       
  7652         
       
  7653             symbol_c *IN_type_symbol = param_data_type;
       
  7654             last_type_symbol = param_data_type;
       
  7655             
       
  7656             if(search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol))
       
  7657             {
       
  7658         
       
  7659                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
       
  7660                 s4o.print("(");
       
  7661                 return_type_symbol->accept(*this);
       
  7662                 s4o.print(")__time_to_int(");
       
  7663                 IN_param_value->accept(*this);
       
  7664                 s4o.print(")");
       
  7665                 return NULL;
       
  7666                 
       
  7667             }
       
  7668             
       
  7669             ERROR;
       
  7670         }
       
  7671         
       
  7672     }/*function_date_to_word*/
       
  7673     break;
       
  7674 
       
  7675 /****
       
  7676  *DATE_TO_DWORD
       
  7677  */
       
  7678     case function_date_to_dword :
       
  7679     {
       
  7680         symbol_c *last_type_symbol = NULL;
       
  7681 
       
  7682         {
       
  7683             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  7684             symbol_c *IN_param_value = &this->default_variable_name;
       
  7685         
       
  7686             symbol_c *IN_type_symbol = param_data_type;
       
  7687             last_type_symbol = param_data_type;
       
  7688             
       
  7689             if(search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol))
       
  7690             {
       
  7691         
       
  7692                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
       
  7693                 s4o.print("(");
       
  7694                 return_type_symbol->accept(*this);
       
  7695                 s4o.print(")__time_to_int(");
       
  7696                 IN_param_value->accept(*this);
       
  7697                 s4o.print(")");
       
  7698                 return NULL;
       
  7699                 
       
  7700             }
       
  7701             
       
  7702             ERROR;
       
  7703         }
       
  7704         
       
  7705     }/*function_date_to_dword*/
       
  7706     break;
       
  7707 
       
  7708 /****
       
  7709  *DATE_TO_LWORD
       
  7710  */
       
  7711     case function_date_to_lword :
       
  7712     {
       
  7713         symbol_c *last_type_symbol = NULL;
       
  7714 
       
  7715         {
       
  7716             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  7717             symbol_c *IN_param_value = &this->default_variable_name;
       
  7718         
       
  7719             symbol_c *IN_type_symbol = param_data_type;
       
  7720             last_type_symbol = param_data_type;
       
  7721             
       
  7722             if(search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol))
       
  7723             {
       
  7724         
       
  7725                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
       
  7726                 s4o.print("(");
       
  7727                 return_type_symbol->accept(*this);
       
  7728                 s4o.print(")__time_to_int(");
       
  7729                 IN_param_value->accept(*this);
       
  7730                 s4o.print(")");
       
  7731                 return NULL;
       
  7732                 
       
  7733             }
       
  7734             
       
  7735             ERROR;
       
  7736         }
       
  7737         
       
  7738     }/*function_date_to_lword*/
       
  7739     break;
       
  7740 
       
  7741 /****
       
  7742  *TOD_TO_SINT
       
  7743  */
       
  7744     case function_tod_to_sint :
       
  7745     {
       
  7746         symbol_c *last_type_symbol = NULL;
       
  7747 
       
  7748         {
       
  7749             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  7750             symbol_c *IN_param_value = &this->default_variable_name;
       
  7751         
       
  7752             symbol_c *IN_type_symbol = param_data_type;
       
  7753             last_type_symbol = param_data_type;
       
  7754             
       
  7755             if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol))
       
  7756             {
       
  7757         
       
  7758                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
       
  7759                 s4o.print("(");
       
  7760                 return_type_symbol->accept(*this);
       
  7761                 s4o.print(")__time_to_int(");
       
  7762                 IN_param_value->accept(*this);
       
  7763                 s4o.print(")");
       
  7764                 return NULL;
       
  7765                 
       
  7766             }
       
  7767             
       
  7768             ERROR;
       
  7769         }
       
  7770         
       
  7771     }/*function_tod_to_sint*/
       
  7772     break;
       
  7773 
       
  7774 /****
       
  7775  *TOD_TO_INT
       
  7776  */
       
  7777     case function_tod_to_int :
       
  7778     {
       
  7779         symbol_c *last_type_symbol = NULL;
       
  7780 
       
  7781         {
       
  7782             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  7783             symbol_c *IN_param_value = &this->default_variable_name;
       
  7784         
       
  7785             symbol_c *IN_type_symbol = param_data_type;
       
  7786             last_type_symbol = param_data_type;
       
  7787             
       
  7788             if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol))
       
  7789             {
       
  7790         
       
  7791                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
       
  7792                 s4o.print("(");
       
  7793                 return_type_symbol->accept(*this);
       
  7794                 s4o.print(")__time_to_int(");
       
  7795                 IN_param_value->accept(*this);
       
  7796                 s4o.print(")");
       
  7797                 return NULL;
       
  7798                 
       
  7799             }
       
  7800             
       
  7801             ERROR;
       
  7802         }
       
  7803         
       
  7804     }/*function_tod_to_int*/
       
  7805     break;
       
  7806 
       
  7807 /****
       
  7808  *TOD_TO_DINT
       
  7809  */
       
  7810     case function_tod_to_dint :
       
  7811     {
       
  7812         symbol_c *last_type_symbol = NULL;
       
  7813 
       
  7814         {
       
  7815             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  7816             symbol_c *IN_param_value = &this->default_variable_name;
       
  7817         
       
  7818             symbol_c *IN_type_symbol = param_data_type;
       
  7819             last_type_symbol = param_data_type;
       
  7820             
       
  7821             if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol))
       
  7822             {
       
  7823         
       
  7824                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
       
  7825                 s4o.print("(");
       
  7826                 return_type_symbol->accept(*this);
       
  7827                 s4o.print(")__time_to_int(");
       
  7828                 IN_param_value->accept(*this);
       
  7829                 s4o.print(")");
       
  7830                 return NULL;
       
  7831                 
       
  7832             }
       
  7833             
       
  7834             ERROR;
       
  7835         }
       
  7836         
       
  7837     }/*function_tod_to_dint*/
       
  7838     break;
       
  7839 
       
  7840 /****
       
  7841  *TOD_TO_LINT
       
  7842  */
       
  7843     case function_tod_to_lint :
       
  7844     {
       
  7845         symbol_c *last_type_symbol = NULL;
       
  7846 
       
  7847         {
       
  7848             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  7849             symbol_c *IN_param_value = &this->default_variable_name;
       
  7850         
       
  7851             symbol_c *IN_type_symbol = param_data_type;
       
  7852             last_type_symbol = param_data_type;
       
  7853             
       
  7854             if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol))
       
  7855             {
       
  7856         
       
  7857                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
       
  7858                 s4o.print("(");
       
  7859                 return_type_symbol->accept(*this);
       
  7860                 s4o.print(")__time_to_int(");
       
  7861                 IN_param_value->accept(*this);
       
  7862                 s4o.print(")");
       
  7863                 return NULL;
       
  7864                 
       
  7865             }
       
  7866             
       
  7867             ERROR;
       
  7868         }
       
  7869         
       
  7870     }/*function_tod_to_lint*/
       
  7871     break;
       
  7872 
       
  7873 /****
       
  7874  *TOD_TO_USINT
       
  7875  */
       
  7876     case function_tod_to_usint :
       
  7877     {
       
  7878         symbol_c *last_type_symbol = NULL;
       
  7879 
       
  7880         {
       
  7881             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  7882             symbol_c *IN_param_value = &this->default_variable_name;
       
  7883         
       
  7884             symbol_c *IN_type_symbol = param_data_type;
       
  7885             last_type_symbol = param_data_type;
       
  7886             
       
  7887             if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol))
       
  7888             {
       
  7889         
       
  7890                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
       
  7891                 s4o.print("(");
       
  7892                 return_type_symbol->accept(*this);
       
  7893                 s4o.print(")__time_to_int(");
       
  7894                 IN_param_value->accept(*this);
       
  7895                 s4o.print(")");
       
  7896                 return NULL;
       
  7897                 
       
  7898             }
       
  7899             
       
  7900             ERROR;
       
  7901         }
       
  7902         
       
  7903     }/*function_tod_to_usint*/
       
  7904     break;
       
  7905 
       
  7906 /****
       
  7907  *TOD_TO_UINT
       
  7908  */
       
  7909     case function_tod_to_uint :
       
  7910     {
       
  7911         symbol_c *last_type_symbol = NULL;
       
  7912 
       
  7913         {
       
  7914             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  7915             symbol_c *IN_param_value = &this->default_variable_name;
       
  7916         
       
  7917             symbol_c *IN_type_symbol = param_data_type;
       
  7918             last_type_symbol = param_data_type;
       
  7919             
       
  7920             if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol))
       
  7921             {
       
  7922         
       
  7923                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
       
  7924                 s4o.print("(");
       
  7925                 return_type_symbol->accept(*this);
       
  7926                 s4o.print(")__time_to_int(");
       
  7927                 IN_param_value->accept(*this);
       
  7928                 s4o.print(")");
       
  7929                 return NULL;
       
  7930                 
       
  7931             }
       
  7932             
       
  7933             ERROR;
       
  7934         }
       
  7935         
       
  7936     }/*function_tod_to_uint*/
       
  7937     break;
       
  7938 
       
  7939 /****
       
  7940  *TOD_TO_UDINT
       
  7941  */
       
  7942     case function_tod_to_udint :
       
  7943     {
       
  7944         symbol_c *last_type_symbol = NULL;
       
  7945 
       
  7946         {
       
  7947             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  7948             symbol_c *IN_param_value = &this->default_variable_name;
       
  7949         
       
  7950             symbol_c *IN_type_symbol = param_data_type;
       
  7951             last_type_symbol = param_data_type;
       
  7952             
       
  7953             if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol))
       
  7954             {
       
  7955         
       
  7956                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
       
  7957                 s4o.print("(");
       
  7958                 return_type_symbol->accept(*this);
       
  7959                 s4o.print(")__time_to_int(");
       
  7960                 IN_param_value->accept(*this);
       
  7961                 s4o.print(")");
       
  7962                 return NULL;
       
  7963                 
       
  7964             }
       
  7965             
       
  7966             ERROR;
       
  7967         }
       
  7968         
       
  7969     }/*function_tod_to_udint*/
       
  7970     break;
       
  7971 
       
  7972 /****
       
  7973  *TOD_TO_ULINT
       
  7974  */
       
  7975     case function_tod_to_ulint :
       
  7976     {
       
  7977         symbol_c *last_type_symbol = NULL;
       
  7978 
       
  7979         {
       
  7980             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  7981             symbol_c *IN_param_value = &this->default_variable_name;
       
  7982         
       
  7983             symbol_c *IN_type_symbol = param_data_type;
       
  7984             last_type_symbol = param_data_type;
       
  7985             
       
  7986             if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol))
       
  7987             {
       
  7988         
       
  7989                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
       
  7990                 s4o.print("(");
       
  7991                 return_type_symbol->accept(*this);
       
  7992                 s4o.print(")__time_to_int(");
       
  7993                 IN_param_value->accept(*this);
       
  7994                 s4o.print(")");
       
  7995                 return NULL;
       
  7996                 
       
  7997             }
       
  7998             
       
  7999             ERROR;
       
  8000         }
       
  8001         
       
  8002     }/*function_tod_to_ulint*/
       
  8003     break;
       
  8004 
       
  8005 /****
       
  8006  *TOD_TO_REAL
       
  8007  */
       
  8008     case function_tod_to_real :
       
  8009     {
       
  8010         symbol_c *last_type_symbol = NULL;
       
  8011 
       
  8012         {
       
  8013             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  8014             symbol_c *IN_param_value = &this->default_variable_name;
       
  8015         
       
  8016             symbol_c *IN_type_symbol = param_data_type;
       
  8017             last_type_symbol = param_data_type;
       
  8018             
       
  8019             if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol))
       
  8020             {
       
  8021         
       
  8022                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
       
  8023                 s4o.print("(");
       
  8024                 return_type_symbol->accept(*this);
       
  8025                 s4o.print(")__time_to_real(");
       
  8026                 IN_param_value->accept(*this);
       
  8027                 s4o.print(")");
       
  8028                 return NULL;
       
  8029                 
       
  8030             }
       
  8031             
       
  8032             ERROR;
       
  8033         }
       
  8034         
       
  8035     }/*function_tod_to_real*/
       
  8036     break;
       
  8037 
       
  8038 /****
       
  8039  *TOD_TO_LREAL
       
  8040  */
       
  8041     case function_tod_to_lreal :
       
  8042     {
       
  8043         symbol_c *last_type_symbol = NULL;
       
  8044 
       
  8045         {
       
  8046             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  8047             symbol_c *IN_param_value = &this->default_variable_name;
       
  8048         
       
  8049             symbol_c *IN_type_symbol = param_data_type;
       
  8050             last_type_symbol = param_data_type;
       
  8051             
       
  8052             if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol))
       
  8053             {
       
  8054         
       
  8055                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
       
  8056                 s4o.print("(");
       
  8057                 return_type_symbol->accept(*this);
       
  8058                 s4o.print(")__time_to_real(");
       
  8059                 IN_param_value->accept(*this);
       
  8060                 s4o.print(")");
       
  8061                 return NULL;
       
  8062                 
       
  8063             }
       
  8064             
       
  8065             ERROR;
       
  8066         }
       
  8067         
       
  8068     }/*function_tod_to_lreal*/
       
  8069     break;
       
  8070 
       
  8071 /****
       
  8072  *TOD_TO_STRING
       
  8073  */
       
  8074     case function_tod_to_string :
       
  8075     {
       
  8076         symbol_c *last_type_symbol = NULL;
       
  8077 
       
  8078         {
       
  8079             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  8080             symbol_c *IN_param_value = &this->default_variable_name;
       
  8081         
       
  8082             symbol_c *IN_type_symbol = param_data_type;
       
  8083             last_type_symbol = param_data_type;
       
  8084             
       
  8085             if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol))
       
  8086             {
       
  8087         
       
  8088                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
       
  8089                 s4o.print("(");
       
  8090                 return_type_symbol->accept(*this);
       
  8091                 s4o.print(")__tod_to_string(");
       
  8092                 IN_param_value->accept(*this);
       
  8093                 s4o.print(")");
       
  8094                 return NULL;
       
  8095                 
       
  8096             }
       
  8097             
       
  8098             ERROR;
       
  8099         }
       
  8100         
       
  8101     }/*function_tod_to_string*/
       
  8102     break;
       
  8103 
       
  8104 /****
       
  8105  *TOD_TO_BYTE
       
  8106  */
       
  8107     case function_tod_to_byte :
       
  8108     {
       
  8109         symbol_c *last_type_symbol = NULL;
       
  8110 
       
  8111         {
       
  8112             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  8113             symbol_c *IN_param_value = &this->default_variable_name;
       
  8114         
       
  8115             symbol_c *IN_type_symbol = param_data_type;
       
  8116             last_type_symbol = param_data_type;
       
  8117             
       
  8118             if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol))
       
  8119             {
       
  8120         
       
  8121                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
       
  8122                 s4o.print("(");
       
  8123                 return_type_symbol->accept(*this);
       
  8124                 s4o.print(")__time_to_int(");
       
  8125                 IN_param_value->accept(*this);
       
  8126                 s4o.print(")");
       
  8127                 return NULL;
       
  8128                 
       
  8129             }
       
  8130             
       
  8131             ERROR;
       
  8132         }
       
  8133         
       
  8134     }/*function_tod_to_byte*/
       
  8135     break;
       
  8136 
       
  8137 /****
       
  8138  *TOD_TO_WORD
       
  8139  */
       
  8140     case function_tod_to_word :
       
  8141     {
       
  8142         symbol_c *last_type_symbol = NULL;
       
  8143 
       
  8144         {
       
  8145             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  8146             symbol_c *IN_param_value = &this->default_variable_name;
       
  8147         
       
  8148             symbol_c *IN_type_symbol = param_data_type;
       
  8149             last_type_symbol = param_data_type;
       
  8150             
       
  8151             if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol))
       
  8152             {
       
  8153         
       
  8154                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
       
  8155                 s4o.print("(");
       
  8156                 return_type_symbol->accept(*this);
       
  8157                 s4o.print(")__time_to_int(");
       
  8158                 IN_param_value->accept(*this);
       
  8159                 s4o.print(")");
       
  8160                 return NULL;
       
  8161                 
       
  8162             }
       
  8163             
       
  8164             ERROR;
       
  8165         }
       
  8166         
       
  8167     }/*function_tod_to_word*/
       
  8168     break;
       
  8169 
       
  8170 /****
       
  8171  *TOD_TO_DWORD
       
  8172  */
       
  8173     case function_tod_to_dword :
       
  8174     {
       
  8175         symbol_c *last_type_symbol = NULL;
       
  8176 
       
  8177         {
       
  8178             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  8179             symbol_c *IN_param_value = &this->default_variable_name;
       
  8180         
       
  8181             symbol_c *IN_type_symbol = param_data_type;
       
  8182             last_type_symbol = param_data_type;
       
  8183             
       
  8184             if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol))
       
  8185             {
       
  8186         
       
  8187                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
       
  8188                 s4o.print("(");
       
  8189                 return_type_symbol->accept(*this);
       
  8190                 s4o.print(")__time_to_int(");
       
  8191                 IN_param_value->accept(*this);
       
  8192                 s4o.print(")");
       
  8193                 return NULL;
       
  8194                 
       
  8195             }
       
  8196             
       
  8197             ERROR;
       
  8198         }
       
  8199         
       
  8200     }/*function_tod_to_dword*/
       
  8201     break;
       
  8202 
       
  8203 /****
       
  8204  *TOD_TO_LWORD
       
  8205  */
       
  8206     case function_tod_to_lword :
       
  8207     {
       
  8208         symbol_c *last_type_symbol = NULL;
       
  8209 
       
  8210         {
       
  8211             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  8212             symbol_c *IN_param_value = &this->default_variable_name;
       
  8213         
       
  8214             symbol_c *IN_type_symbol = param_data_type;
       
  8215             last_type_symbol = param_data_type;
       
  8216             
       
  8217             if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol))
       
  8218             {
       
  8219         
       
  8220                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
       
  8221                 s4o.print("(");
       
  8222                 return_type_symbol->accept(*this);
       
  8223                 s4o.print(")__time_to_int(");
       
  8224                 IN_param_value->accept(*this);
       
  8225                 s4o.print(")");
       
  8226                 return NULL;
       
  8227                 
       
  8228             }
       
  8229             
       
  8230             ERROR;
       
  8231         }
       
  8232         
       
  8233     }/*function_tod_to_lword*/
       
  8234     break;
       
  8235 
       
  8236 /****
       
  8237  *DT_TO_SINT
       
  8238  */
       
  8239     case function_dt_to_sint :
       
  8240     {
       
  8241         symbol_c *last_type_symbol = NULL;
       
  8242 
       
  8243         {
       
  8244             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  8245             symbol_c *IN_param_value = &this->default_variable_name;
       
  8246         
       
  8247             symbol_c *IN_type_symbol = param_data_type;
       
  8248             last_type_symbol = param_data_type;
       
  8249             
       
  8250             if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
       
  8251             {
       
  8252         
       
  8253                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
       
  8254                 s4o.print("(");
       
  8255                 return_type_symbol->accept(*this);
       
  8256                 s4o.print(")__time_to_int(");
       
  8257                 IN_param_value->accept(*this);
       
  8258                 s4o.print(")");
       
  8259                 return NULL;
       
  8260                 
       
  8261             }
       
  8262             
       
  8263             ERROR;
       
  8264         }
       
  8265         
       
  8266     }/*function_dt_to_sint*/
       
  8267     break;
       
  8268 
       
  8269 /****
       
  8270  *DT_TO_INT
       
  8271  */
       
  8272     case function_dt_to_int :
       
  8273     {
       
  8274         symbol_c *last_type_symbol = NULL;
       
  8275 
       
  8276         {
       
  8277             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  8278             symbol_c *IN_param_value = &this->default_variable_name;
       
  8279         
       
  8280             symbol_c *IN_type_symbol = param_data_type;
       
  8281             last_type_symbol = param_data_type;
       
  8282             
       
  8283             if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
       
  8284             {
       
  8285         
       
  8286                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
       
  8287                 s4o.print("(");
       
  8288                 return_type_symbol->accept(*this);
       
  8289                 s4o.print(")__time_to_int(");
       
  8290                 IN_param_value->accept(*this);
       
  8291                 s4o.print(")");
       
  8292                 return NULL;
       
  8293                 
       
  8294             }
       
  8295             
       
  8296             ERROR;
       
  8297         }
       
  8298         
       
  8299     }/*function_dt_to_int*/
       
  8300     break;
       
  8301 
       
  8302 /****
       
  8303  *DT_TO_DINT
       
  8304  */
       
  8305     case function_dt_to_dint :
       
  8306     {
       
  8307         symbol_c *last_type_symbol = NULL;
       
  8308 
       
  8309         {
       
  8310             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  8311             symbol_c *IN_param_value = &this->default_variable_name;
       
  8312         
       
  8313             symbol_c *IN_type_symbol = param_data_type;
       
  8314             last_type_symbol = param_data_type;
       
  8315             
       
  8316             if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
       
  8317             {
       
  8318         
       
  8319                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
       
  8320                 s4o.print("(");
       
  8321                 return_type_symbol->accept(*this);
       
  8322                 s4o.print(")__time_to_int(");
       
  8323                 IN_param_value->accept(*this);
       
  8324                 s4o.print(")");
       
  8325                 return NULL;
       
  8326                 
       
  8327             }
       
  8328             
       
  8329             ERROR;
       
  8330         }
       
  8331         
       
  8332     }/*function_dt_to_dint*/
       
  8333     break;
       
  8334 
       
  8335 /****
       
  8336  *DT_TO_LINT
       
  8337  */
       
  8338     case function_dt_to_lint :
       
  8339     {
       
  8340         symbol_c *last_type_symbol = NULL;
       
  8341 
       
  8342         {
       
  8343             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  8344             symbol_c *IN_param_value = &this->default_variable_name;
       
  8345         
       
  8346             symbol_c *IN_type_symbol = param_data_type;
       
  8347             last_type_symbol = param_data_type;
       
  8348             
       
  8349             if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
       
  8350             {
       
  8351         
       
  8352                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
       
  8353                 s4o.print("(");
       
  8354                 return_type_symbol->accept(*this);
       
  8355                 s4o.print(")__time_to_int(");
       
  8356                 IN_param_value->accept(*this);
       
  8357                 s4o.print(")");
       
  8358                 return NULL;
       
  8359                 
       
  8360             }
       
  8361             
       
  8362             ERROR;
       
  8363         }
       
  8364         
       
  8365     }/*function_dt_to_lint*/
       
  8366     break;
       
  8367 
       
  8368 /****
       
  8369  *DT_TO_USINT
       
  8370  */
       
  8371     case function_dt_to_usint :
       
  8372     {
       
  8373         symbol_c *last_type_symbol = NULL;
       
  8374 
       
  8375         {
       
  8376             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  8377             symbol_c *IN_param_value = &this->default_variable_name;
       
  8378         
       
  8379             symbol_c *IN_type_symbol = param_data_type;
       
  8380             last_type_symbol = param_data_type;
       
  8381             
       
  8382             if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
       
  8383             {
       
  8384         
       
  8385                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
       
  8386                 s4o.print("(");
       
  8387                 return_type_symbol->accept(*this);
       
  8388                 s4o.print(")__time_to_int(");
       
  8389                 IN_param_value->accept(*this);
       
  8390                 s4o.print(")");
       
  8391                 return NULL;
       
  8392                 
       
  8393             }
       
  8394             
       
  8395             ERROR;
       
  8396         }
       
  8397         
       
  8398     }/*function_dt_to_usint*/
       
  8399     break;
       
  8400 
       
  8401 /****
       
  8402  *DT_TO_UINT
       
  8403  */
       
  8404     case function_dt_to_uint :
       
  8405     {
       
  8406         symbol_c *last_type_symbol = NULL;
       
  8407 
       
  8408         {
       
  8409             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  8410             symbol_c *IN_param_value = &this->default_variable_name;
       
  8411         
       
  8412             symbol_c *IN_type_symbol = param_data_type;
       
  8413             last_type_symbol = param_data_type;
       
  8414             
       
  8415             if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
       
  8416             {
       
  8417         
       
  8418                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
       
  8419                 s4o.print("(");
       
  8420                 return_type_symbol->accept(*this);
       
  8421                 s4o.print(")__time_to_int(");
       
  8422                 IN_param_value->accept(*this);
       
  8423                 s4o.print(")");
       
  8424                 return NULL;
       
  8425                 
       
  8426             }
       
  8427             
       
  8428             ERROR;
       
  8429         }
       
  8430         
       
  8431     }/*function_dt_to_uint*/
       
  8432     break;
       
  8433 
       
  8434 /****
       
  8435  *DT_TO_UDINT
       
  8436  */
       
  8437     case function_dt_to_udint :
       
  8438     {
       
  8439         symbol_c *last_type_symbol = NULL;
       
  8440 
       
  8441         {
       
  8442             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  8443             symbol_c *IN_param_value = &this->default_variable_name;
       
  8444         
       
  8445             symbol_c *IN_type_symbol = param_data_type;
       
  8446             last_type_symbol = param_data_type;
       
  8447             
       
  8448             if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
       
  8449             {
       
  8450         
       
  8451                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
       
  8452                 s4o.print("(");
       
  8453                 return_type_symbol->accept(*this);
       
  8454                 s4o.print(")__time_to_int(");
       
  8455                 IN_param_value->accept(*this);
       
  8456                 s4o.print(")");
       
  8457                 return NULL;
       
  8458                 
       
  8459             }
       
  8460             
       
  8461             ERROR;
       
  8462         }
       
  8463         
       
  8464     }/*function_dt_to_udint*/
       
  8465     break;
       
  8466 
       
  8467 /****
       
  8468  *DT_TO_ULINT
       
  8469  */
       
  8470     case function_dt_to_ulint :
       
  8471     {
       
  8472         symbol_c *last_type_symbol = NULL;
       
  8473 
       
  8474         {
       
  8475             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  8476             symbol_c *IN_param_value = &this->default_variable_name;
       
  8477         
       
  8478             symbol_c *IN_type_symbol = param_data_type;
       
  8479             last_type_symbol = param_data_type;
       
  8480             
       
  8481             if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
       
  8482             {
       
  8483         
       
  8484                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
       
  8485                 s4o.print("(");
       
  8486                 return_type_symbol->accept(*this);
       
  8487                 s4o.print(")__time_to_int(");
       
  8488                 IN_param_value->accept(*this);
       
  8489                 s4o.print(")");
       
  8490                 return NULL;
       
  8491                 
       
  8492             }
       
  8493             
       
  8494             ERROR;
       
  8495         }
       
  8496         
       
  8497     }/*function_dt_to_ulint*/
       
  8498     break;
       
  8499 
       
  8500 /****
       
  8501  *DT_TO_REAL
       
  8502  */
       
  8503     case function_dt_to_real :
       
  8504     {
       
  8505         symbol_c *last_type_symbol = NULL;
       
  8506 
       
  8507         {
       
  8508             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  8509             symbol_c *IN_param_value = &this->default_variable_name;
       
  8510         
       
  8511             symbol_c *IN_type_symbol = param_data_type;
       
  8512             last_type_symbol = param_data_type;
       
  8513             
       
  8514             if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
       
  8515             {
       
  8516         
       
  8517                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
       
  8518                 s4o.print("(");
       
  8519                 return_type_symbol->accept(*this);
       
  8520                 s4o.print(")__time_to_real(");
       
  8521                 IN_param_value->accept(*this);
       
  8522                 s4o.print(")");
       
  8523                 return NULL;
       
  8524                 
       
  8525             }
       
  8526             
       
  8527             ERROR;
       
  8528         }
       
  8529         
       
  8530     }/*function_dt_to_real*/
       
  8531     break;
       
  8532 
       
  8533 /****
       
  8534  *DT_TO_LREAL
       
  8535  */
       
  8536     case function_dt_to_lreal :
       
  8537     {
       
  8538         symbol_c *last_type_symbol = NULL;
       
  8539 
       
  8540         {
       
  8541             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  8542             symbol_c *IN_param_value = &this->default_variable_name;
       
  8543         
       
  8544             symbol_c *IN_type_symbol = param_data_type;
       
  8545             last_type_symbol = param_data_type;
       
  8546             
       
  8547             if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
       
  8548             {
       
  8549         
       
  8550                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
       
  8551                 s4o.print("(");
       
  8552                 return_type_symbol->accept(*this);
       
  8553                 s4o.print(")__time_to_real(");
       
  8554                 IN_param_value->accept(*this);
       
  8555                 s4o.print(")");
       
  8556                 return NULL;
       
  8557                 
       
  8558             }
       
  8559             
       
  8560             ERROR;
       
  8561         }
       
  8562         
       
  8563     }/*function_dt_to_lreal*/
       
  8564     break;
       
  8565 
       
  8566 /****
       
  8567  *DT_TO_STRING
       
  8568  */
       
  8569     case function_dt_to_string :
       
  8570     {
       
  8571         symbol_c *last_type_symbol = NULL;
       
  8572 
       
  8573         {
       
  8574             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  8575             symbol_c *IN_param_value = &this->default_variable_name;
       
  8576         
       
  8577             symbol_c *IN_type_symbol = param_data_type;
       
  8578             last_type_symbol = param_data_type;
       
  8579             
       
  8580             if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
       
  8581             {
       
  8582         
       
  8583                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
       
  8584                 s4o.print("(");
       
  8585                 return_type_symbol->accept(*this);
       
  8586                 s4o.print(")__dt_to_string(");
       
  8587                 IN_param_value->accept(*this);
       
  8588                 s4o.print(")");
       
  8589                 return NULL;
       
  8590                 
       
  8591             }
       
  8592             
       
  8593             ERROR;
       
  8594         }
       
  8595         
       
  8596     }/*function_dt_to_string*/
       
  8597     break;
       
  8598 
       
  8599 /****
       
  8600  *DT_TO_BYTE
       
  8601  */
       
  8602     case function_dt_to_byte :
       
  8603     {
       
  8604         symbol_c *last_type_symbol = NULL;
       
  8605 
       
  8606         {
       
  8607             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  8608             symbol_c *IN_param_value = &this->default_variable_name;
       
  8609         
       
  8610             symbol_c *IN_type_symbol = param_data_type;
       
  8611             last_type_symbol = param_data_type;
       
  8612             
       
  8613             if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
       
  8614             {
       
  8615         
       
  8616                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
       
  8617                 s4o.print("(");
       
  8618                 return_type_symbol->accept(*this);
       
  8619                 s4o.print(")__time_to_int(");
       
  8620                 IN_param_value->accept(*this);
       
  8621                 s4o.print(")");
       
  8622                 return NULL;
       
  8623                 
       
  8624             }
       
  8625             
       
  8626             ERROR;
       
  8627         }
       
  8628         
       
  8629     }/*function_dt_to_byte*/
       
  8630     break;
       
  8631 
       
  8632 /****
       
  8633  *DT_TO_WORD
       
  8634  */
       
  8635     case function_dt_to_word :
       
  8636     {
       
  8637         symbol_c *last_type_symbol = NULL;
       
  8638 
       
  8639         {
       
  8640             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  8641             symbol_c *IN_param_value = &this->default_variable_name;
       
  8642         
       
  8643             symbol_c *IN_type_symbol = param_data_type;
       
  8644             last_type_symbol = param_data_type;
       
  8645             
       
  8646             if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
       
  8647             {
       
  8648         
       
  8649                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
       
  8650                 s4o.print("(");
       
  8651                 return_type_symbol->accept(*this);
       
  8652                 s4o.print(")__time_to_int(");
       
  8653                 IN_param_value->accept(*this);
       
  8654                 s4o.print(")");
       
  8655                 return NULL;
       
  8656                 
       
  8657             }
       
  8658             
       
  8659             ERROR;
       
  8660         }
       
  8661         
       
  8662     }/*function_dt_to_word*/
       
  8663     break;
       
  8664 
       
  8665 /****
       
  8666  *DT_TO_DWORD
       
  8667  */
       
  8668     case function_dt_to_dword :
       
  8669     {
       
  8670         symbol_c *last_type_symbol = NULL;
       
  8671 
       
  8672         {
       
  8673             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  8674             symbol_c *IN_param_value = &this->default_variable_name;
       
  8675         
       
  8676             symbol_c *IN_type_symbol = param_data_type;
       
  8677             last_type_symbol = param_data_type;
       
  8678             
       
  8679             if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
       
  8680             {
       
  8681         
       
  8682                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
       
  8683                 s4o.print("(");
       
  8684                 return_type_symbol->accept(*this);
       
  8685                 s4o.print(")__time_to_int(");
       
  8686                 IN_param_value->accept(*this);
       
  8687                 s4o.print(")");
       
  8688                 return NULL;
       
  8689                 
       
  8690             }
       
  8691             
       
  8692             ERROR;
       
  8693         }
       
  8694         
       
  8695     }/*function_dt_to_dword*/
       
  8696     break;
       
  8697 
       
  8698 /****
       
  8699  *DT_TO_LWORD
       
  8700  */
       
  8701     case function_dt_to_lword :
       
  8702     {
       
  8703         symbol_c *last_type_symbol = NULL;
       
  8704 
       
  8705         {
       
  8706             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  8707             symbol_c *IN_param_value = &this->default_variable_name;
       
  8708         
       
  8709             symbol_c *IN_type_symbol = param_data_type;
       
  8710             last_type_symbol = param_data_type;
       
  8711             
       
  8712             if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
       
  8713             {
       
  8714         
       
  8715                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
       
  8716                 s4o.print("(");
       
  8717                 return_type_symbol->accept(*this);
       
  8718                 s4o.print(")__time_to_int(");
       
  8719                 IN_param_value->accept(*this);
       
  8720                 s4o.print(")");
       
  8721                 return NULL;
       
  8722                 
       
  8723             }
       
  8724             
       
  8725             ERROR;
       
  8726         }
       
  8727         
       
  8728     }/*function_dt_to_lword*/
       
  8729     break;
       
  8730 
       
  8731 /****
       
  8732  *STRING_TO_BOOL
       
  8733  */
       
  8734     case function_string_to_bool :
       
  8735     {
       
  8736         symbol_c *last_type_symbol = NULL;
       
  8737 
       
  8738         {
       
  8739             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  8740             symbol_c *IN_param_value = &this->default_variable_name;
       
  8741         
       
  8742             symbol_c *IN_type_symbol = param_data_type;
       
  8743             last_type_symbol = param_data_type;
       
  8744             
       
  8745             if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
  6766             {
  8746             {
  6767         
  8747         
  6768                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
  8748                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
  6769                 s4o.print("(");
  8749                 s4o.print("(");
  6770                 return_type_symbol->accept(*this);
  8750                 return_type_symbol->accept(*this);
  6771                 s4o.print(")__time_to_int(");
  8751                 s4o.print(")__string_to_bool(");
  6772                 IN_param_value->accept(*this);
  8752                 IN_param_value->accept(*this);
  6773                 s4o.print(")");
  8753                 s4o.print(")");
  6774                 return NULL;
  8754                 return NULL;
  6775                 
  8755                 
  6776             }
  8756             }
  6777             
  8757             
  6778             ERROR;
  8758             ERROR;
  6779         }
  8759         }
  6780         
  8760         
  6781     }/*function_time_to_bool*/
  8761     }/*function_string_to_bool*/
  6782     break;
  8762     break;
  6783 
  8763 
  6784 /****
  8764 /****
  6785  *TIME_TO_SINT
  8765  *STRING_TO_SINT
  6786  */
  8766  */
  6787     case function_time_to_sint :
  8767     case function_string_to_sint :
  6788     {
  8768     {
  6789         symbol_c *last_type_symbol = NULL;
  8769         symbol_c *last_type_symbol = NULL;
  6790 
  8770 
  6791         {
  8771         {
  6792             /* Get the value from a foo(<param_name> = <param_value>) style call */
  8772             /* Get the value from a foo(<param_name> = <param_value>) style call */
  6793             symbol_c *IN_param_value = &this->default_variable_name;
  8773             symbol_c *IN_param_value = &this->default_variable_name;
  6794         
  8774         
  6795             symbol_c *IN_type_symbol = param_data_type;
  8775             symbol_c *IN_type_symbol = param_data_type;
  6796             last_type_symbol = param_data_type;
  8776             last_type_symbol = param_data_type;
  6797             
  8777             
  6798             if (typeid(*last_type_symbol) == typeid(time_type_name_c))
  8778             if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
  6799             {
  8779             {
  6800         
  8780         
  6801                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
  8781                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
  6802                 s4o.print("(");
  8782                 s4o.print("(");
  6803                 return_type_symbol->accept(*this);
  8783                 return_type_symbol->accept(*this);
  6804                 s4o.print(")__time_to_int(");
  8784                 s4o.print(")__string_to_sint(");
  6805                 IN_param_value->accept(*this);
  8785                 IN_param_value->accept(*this);
  6806                 s4o.print(")");
  8786                 s4o.print(")");
  6807                 return NULL;
  8787                 return NULL;
  6808                 
  8788                 
  6809             }
  8789             }
  6810             
  8790             
  6811             ERROR;
  8791             ERROR;
  6812         }
  8792         }
  6813         
  8793         
  6814     }/*function_time_to_sint*/
  8794     }/*function_string_to_sint*/
  6815     break;
  8795     break;
  6816 
  8796 
  6817 /****
  8797 /****
  6818  *TIME_TO_INT
  8798  *STRING_TO_INT
  6819  */
  8799  */
  6820     case function_time_to_int :
  8800     case function_string_to_int :
  6821     {
  8801     {
  6822         symbol_c *last_type_symbol = NULL;
  8802         symbol_c *last_type_symbol = NULL;
  6823 
  8803 
  6824         {
  8804         {
  6825             /* Get the value from a foo(<param_name> = <param_value>) style call */
  8805             /* Get the value from a foo(<param_name> = <param_value>) style call */
  6826             symbol_c *IN_param_value = &this->default_variable_name;
  8806             symbol_c *IN_param_value = &this->default_variable_name;
  6827         
  8807         
  6828             symbol_c *IN_type_symbol = param_data_type;
  8808             symbol_c *IN_type_symbol = param_data_type;
  6829             last_type_symbol = param_data_type;
  8809             last_type_symbol = param_data_type;
  6830             
  8810             
  6831             if (typeid(*last_type_symbol) == typeid(time_type_name_c))
  8811             if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
  6832             {
  8812             {
  6833         
  8813         
  6834                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
  8814                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
  6835                 s4o.print("(");
  8815                 s4o.print("(");
  6836                 return_type_symbol->accept(*this);
  8816                 return_type_symbol->accept(*this);
  6837                 s4o.print(")__time_to_int(");
  8817                 s4o.print(")__string_to_sint(");
  6838                 IN_param_value->accept(*this);
  8818                 IN_param_value->accept(*this);
  6839                 s4o.print(")");
  8819                 s4o.print(")");
  6840                 return NULL;
  8820                 return NULL;
  6841                 
  8821                 
  6842             }
  8822             }
  6843             
  8823             
  6844             ERROR;
  8824             ERROR;
  6845         }
  8825         }
  6846         
  8826         
  6847     }/*function_time_to_int*/
  8827     }/*function_string_to_int*/
  6848     break;
  8828     break;
  6849 
  8829 
  6850 /****
  8830 /****
  6851  *TIME_TO_DINT
  8831  *STRING_TO_DINT
  6852  */
  8832  */
  6853     case function_time_to_dint :
  8833     case function_string_to_dint :
  6854     {
  8834     {
  6855         symbol_c *last_type_symbol = NULL;
  8835         symbol_c *last_type_symbol = NULL;
  6856 
  8836 
  6857         {
  8837         {
  6858             /* Get the value from a foo(<param_name> = <param_value>) style call */
  8838             /* Get the value from a foo(<param_name> = <param_value>) style call */
  6859             symbol_c *IN_param_value = &this->default_variable_name;
  8839             symbol_c *IN_param_value = &this->default_variable_name;
  6860         
  8840         
  6861             symbol_c *IN_type_symbol = param_data_type;
  8841             symbol_c *IN_type_symbol = param_data_type;
  6862             last_type_symbol = param_data_type;
  8842             last_type_symbol = param_data_type;
  6863             
  8843             
  6864             if (typeid(*last_type_symbol) == typeid(time_type_name_c))
  8844             if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
  6865             {
  8845             {
  6866         
  8846         
  6867                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
  8847                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
  6868                 s4o.print("(");
  8848                 s4o.print("(");
  6869                 return_type_symbol->accept(*this);
  8849                 return_type_symbol->accept(*this);
  6870                 s4o.print(")__time_to_int(");
  8850                 s4o.print(")__string_to_sint(");
  6871                 IN_param_value->accept(*this);
  8851                 IN_param_value->accept(*this);
  6872                 s4o.print(")");
  8852                 s4o.print(")");
  6873                 return NULL;
  8853                 return NULL;
  6874                 
  8854                 
  6875             }
  8855             }
  6876             
  8856             
  6877             ERROR;
  8857             ERROR;
  6878         }
  8858         }
  6879         
  8859         
  6880     }/*function_time_to_dint*/
  8860     }/*function_string_to_dint*/
  6881     break;
  8861     break;
  6882 
  8862 
  6883 /****
  8863 /****
  6884  *TIME_TO_LINT
  8864  *STRING_TO_LINT
  6885  */
  8865  */
  6886     case function_time_to_lint :
  8866     case function_string_to_lint :
  6887     {
  8867     {
  6888         symbol_c *last_type_symbol = NULL;
  8868         symbol_c *last_type_symbol = NULL;
  6889 
  8869 
  6890         {
  8870         {
  6891             /* Get the value from a foo(<param_name> = <param_value>) style call */
  8871             /* Get the value from a foo(<param_name> = <param_value>) style call */
  6892             symbol_c *IN_param_value = &this->default_variable_name;
  8872             symbol_c *IN_param_value = &this->default_variable_name;
  6893         
  8873         
  6894             symbol_c *IN_type_symbol = param_data_type;
  8874             symbol_c *IN_type_symbol = param_data_type;
  6895             last_type_symbol = param_data_type;
  8875             last_type_symbol = param_data_type;
  6896             
  8876             
  6897             if (typeid(*last_type_symbol) == typeid(time_type_name_c))
  8877             if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
  6898             {
  8878             {
  6899         
  8879         
  6900                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
  8880                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
  6901                 s4o.print("(");
  8881                 s4o.print("(");
  6902                 return_type_symbol->accept(*this);
  8882                 return_type_symbol->accept(*this);
  6903                 s4o.print(")__time_to_int(");
  8883                 s4o.print(")__string_to_sint(");
  6904                 IN_param_value->accept(*this);
  8884                 IN_param_value->accept(*this);
  6905                 s4o.print(")");
  8885                 s4o.print(")");
  6906                 return NULL;
  8886                 return NULL;
  6907                 
  8887                 
  6908             }
  8888             }
  6909             
  8889             
  6910             ERROR;
  8890             ERROR;
  6911         }
  8891         }
  6912         
  8892         
  6913     }/*function_time_to_lint*/
  8893     }/*function_string_to_lint*/
  6914     break;
  8894     break;
  6915 
  8895 
  6916 /****
  8896 /****
  6917  *TIME_TO_USINT
  8897  *STRING_TO_USINT
  6918  */
  8898  */
  6919     case function_time_to_usint :
  8899     case function_string_to_usint :
  6920     {
  8900     {
  6921         symbol_c *last_type_symbol = NULL;
  8901         symbol_c *last_type_symbol = NULL;
  6922 
  8902 
  6923         {
  8903         {
  6924             /* Get the value from a foo(<param_name> = <param_value>) style call */
  8904             /* Get the value from a foo(<param_name> = <param_value>) style call */
  6925             symbol_c *IN_param_value = &this->default_variable_name;
  8905             symbol_c *IN_param_value = &this->default_variable_name;
  6926         
  8906         
  6927             symbol_c *IN_type_symbol = param_data_type;
  8907             symbol_c *IN_type_symbol = param_data_type;
  6928             last_type_symbol = param_data_type;
  8908             last_type_symbol = param_data_type;
  6929             
  8909             
  6930             if (typeid(*last_type_symbol) == typeid(time_type_name_c))
  8910             if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
  6931             {
  8911             {
  6932         
  8912         
  6933                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
  8913                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
  6934                 s4o.print("(");
  8914                 s4o.print("(");
  6935                 return_type_symbol->accept(*this);
  8915                 return_type_symbol->accept(*this);
  6936                 s4o.print(")__time_to_int(");
  8916                 s4o.print(")__string_to_uint(");
  6937                 IN_param_value->accept(*this);
  8917                 IN_param_value->accept(*this);
  6938                 s4o.print(")");
  8918                 s4o.print(")");
  6939                 return NULL;
  8919                 return NULL;
  6940                 
  8920                 
  6941             }
  8921             }
  6942             
  8922             
  6943             ERROR;
  8923             ERROR;
  6944         }
  8924         }
  6945         
  8925         
  6946     }/*function_time_to_usint*/
  8926     }/*function_string_to_usint*/
  6947     break;
  8927     break;
  6948 
  8928 
  6949 /****
  8929 /****
  6950  *TIME_TO_UINT
  8930  *STRING_TO_UINT
  6951  */
  8931  */
  6952     case function_time_to_uint :
  8932     case function_string_to_uint :
  6953     {
  8933     {
  6954         symbol_c *last_type_symbol = NULL;
  8934         symbol_c *last_type_symbol = NULL;
  6955 
  8935 
  6956         {
  8936         {
  6957             /* Get the value from a foo(<param_name> = <param_value>) style call */
  8937             /* Get the value from a foo(<param_name> = <param_value>) style call */
  6958             symbol_c *IN_param_value = &this->default_variable_name;
  8938             symbol_c *IN_param_value = &this->default_variable_name;
  6959         
  8939         
  6960             symbol_c *IN_type_symbol = param_data_type;
  8940             symbol_c *IN_type_symbol = param_data_type;
  6961             last_type_symbol = param_data_type;
  8941             last_type_symbol = param_data_type;
  6962             
  8942             
  6963             if (typeid(*last_type_symbol) == typeid(time_type_name_c))
  8943             if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
  6964             {
  8944             {
  6965         
  8945         
  6966                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
  8946                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
  6967                 s4o.print("(");
  8947                 s4o.print("(");
  6968                 return_type_symbol->accept(*this);
  8948                 return_type_symbol->accept(*this);
  6969                 s4o.print(")__time_to_int(");
  8949                 s4o.print(")__string_to_uint(");
  6970                 IN_param_value->accept(*this);
  8950                 IN_param_value->accept(*this);
  6971                 s4o.print(")");
  8951                 s4o.print(")");
  6972                 return NULL;
  8952                 return NULL;
  6973                 
  8953                 
  6974             }
  8954             }
  6975             
  8955             
  6976             ERROR;
  8956             ERROR;
  6977         }
  8957         }
  6978         
  8958         
  6979     }/*function_time_to_uint*/
  8959     }/*function_string_to_uint*/
  6980     break;
  8960     break;
  6981 
  8961 
  6982 /****
  8962 /****
  6983  *TIME_TO_UDINT
  8963  *STRING_TO_UDINT
  6984  */
  8964  */
  6985     case function_time_to_udint :
  8965     case function_string_to_udint :
  6986     {
  8966     {
  6987         symbol_c *last_type_symbol = NULL;
  8967         symbol_c *last_type_symbol = NULL;
  6988 
  8968 
  6989         {
  8969         {
  6990             /* Get the value from a foo(<param_name> = <param_value>) style call */
  8970             /* Get the value from a foo(<param_name> = <param_value>) style call */
  6991             symbol_c *IN_param_value = &this->default_variable_name;
  8971             symbol_c *IN_param_value = &this->default_variable_name;
  6992         
  8972         
  6993             symbol_c *IN_type_symbol = param_data_type;
  8973             symbol_c *IN_type_symbol = param_data_type;
  6994             last_type_symbol = param_data_type;
  8974             last_type_symbol = param_data_type;
  6995             
  8975             
  6996             if (typeid(*last_type_symbol) == typeid(time_type_name_c))
  8976             if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
  6997             {
  8977             {
  6998         
  8978         
  6999                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
  8979                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
  7000                 s4o.print("(");
  8980                 s4o.print("(");
  7001                 return_type_symbol->accept(*this);
  8981                 return_type_symbol->accept(*this);
  7002                 s4o.print(")__time_to_int(");
  8982                 s4o.print(")__string_to_uint(");
  7003                 IN_param_value->accept(*this);
  8983                 IN_param_value->accept(*this);
  7004                 s4o.print(")");
  8984                 s4o.print(")");
  7005                 return NULL;
  8985                 return NULL;
  7006                 
  8986                 
  7007             }
  8987             }
  7008             
  8988             
  7009             ERROR;
  8989             ERROR;
  7010         }
  8990         }
  7011         
  8991         
  7012     }/*function_time_to_udint*/
  8992     }/*function_string_to_udint*/
  7013     break;
  8993     break;
  7014 
  8994 
  7015 /****
  8995 /****
  7016  *TIME_TO_ULINT
  8996  *STRING_TO_ULINT
  7017  */
  8997  */
  7018     case function_time_to_ulint :
  8998     case function_string_to_ulint :
  7019     {
  8999     {
  7020         symbol_c *last_type_symbol = NULL;
  9000         symbol_c *last_type_symbol = NULL;
  7021 
  9001 
  7022         {
  9002         {
  7023             /* Get the value from a foo(<param_name> = <param_value>) style call */
  9003             /* Get the value from a foo(<param_name> = <param_value>) style call */
  7024             symbol_c *IN_param_value = &this->default_variable_name;
  9004             symbol_c *IN_param_value = &this->default_variable_name;
  7025         
  9005         
  7026             symbol_c *IN_type_symbol = param_data_type;
  9006             symbol_c *IN_type_symbol = param_data_type;
  7027             last_type_symbol = param_data_type;
  9007             last_type_symbol = param_data_type;
  7028             
  9008             
  7029             if (typeid(*last_type_symbol) == typeid(time_type_name_c))
  9009             if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
  7030             {
  9010             {
  7031         
  9011         
  7032                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
  9012                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
  7033                 s4o.print("(");
  9013                 s4o.print("(");
  7034                 return_type_symbol->accept(*this);
  9014                 return_type_symbol->accept(*this);
  7035                 s4o.print(")__time_to_int(");
  9015                 s4o.print(")__string_to_uint(");
  7036                 IN_param_value->accept(*this);
  9016                 IN_param_value->accept(*this);
  7037                 s4o.print(")");
  9017                 s4o.print(")");
  7038                 return NULL;
  9018                 return NULL;
  7039                 
  9019                 
  7040             }
  9020             }
  7041             
  9021             
  7042             ERROR;
  9022             ERROR;
  7043         }
  9023         }
  7044         
  9024         
  7045     }/*function_time_to_ulint*/
  9025     }/*function_string_to_ulint*/
  7046     break;
  9026     break;
  7047 
  9027 
  7048 /****
  9028 /****
  7049  *TIME_TO_REAL
  9029  *STRING_TO_REAL
  7050  */
  9030  */
  7051     case function_time_to_real :
  9031     case function_string_to_real :
  7052     {
  9032     {
  7053         symbol_c *last_type_symbol = NULL;
  9033         symbol_c *last_type_symbol = NULL;
  7054 
  9034 
  7055         {
  9035         {
  7056             /* Get the value from a foo(<param_name> = <param_value>) style call */
  9036             /* Get the value from a foo(<param_name> = <param_value>) style call */
  7057             symbol_c *IN_param_value = &this->default_variable_name;
  9037             symbol_c *IN_param_value = &this->default_variable_name;
  7058         
  9038         
  7059             symbol_c *IN_type_symbol = param_data_type;
  9039             symbol_c *IN_type_symbol = param_data_type;
  7060             last_type_symbol = param_data_type;
  9040             last_type_symbol = param_data_type;
  7061             
  9041             
  7062             if (typeid(*last_type_symbol) == typeid(time_type_name_c))
  9042             if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
  7063             {
  9043             {
  7064         
  9044         
  7065                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
  9045                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
  7066                 s4o.print("(");
  9046                 s4o.print("(");
  7067                 return_type_symbol->accept(*this);
  9047                 return_type_symbol->accept(*this);
  7068                 s4o.print(")__time_to_real(");
  9048                 s4o.print(")__string_to_real(");
  7069                 IN_param_value->accept(*this);
  9049                 IN_param_value->accept(*this);
  7070                 s4o.print(")");
  9050                 s4o.print(")");
  7071                 return NULL;
  9051                 return NULL;
  7072                 
  9052                 
  7073             }
  9053             }
  7074             
  9054             
  7075             ERROR;
  9055             ERROR;
  7076         }
  9056         }
  7077         
  9057         
  7078     }/*function_time_to_real*/
  9058     }/*function_string_to_real*/
  7079     break;
  9059     break;
  7080 
  9060 
  7081 /****
  9061 /****
  7082  *TIME_TO_LREAL
  9062  *STRING_TO_LREAL
  7083  */
  9063  */
  7084     case function_time_to_lreal :
  9064     case function_string_to_lreal :
  7085     {
  9065     {
  7086         symbol_c *last_type_symbol = NULL;
  9066         symbol_c *last_type_symbol = NULL;
  7087 
  9067 
  7088         {
  9068         {
  7089             /* Get the value from a foo(<param_name> = <param_value>) style call */
  9069             /* Get the value from a foo(<param_name> = <param_value>) style call */
  7090             symbol_c *IN_param_value = &this->default_variable_name;
  9070             symbol_c *IN_param_value = &this->default_variable_name;
  7091         
  9071         
  7092             symbol_c *IN_type_symbol = param_data_type;
  9072             symbol_c *IN_type_symbol = param_data_type;
  7093             last_type_symbol = param_data_type;
  9073             last_type_symbol = param_data_type;
  7094             
  9074             
  7095             if (typeid(*last_type_symbol) == typeid(time_type_name_c))
  9075             if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
  7096             {
  9076             {
  7097         
  9077         
  7098                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
  9078                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
  7099                 s4o.print("(");
  9079                 s4o.print("(");
  7100                 return_type_symbol->accept(*this);
  9080                 return_type_symbol->accept(*this);
  7101                 s4o.print(")__time_to_real(");
  9081                 s4o.print(")__string_to_real(");
  7102                 IN_param_value->accept(*this);
  9082                 IN_param_value->accept(*this);
  7103                 s4o.print(")");
  9083                 s4o.print(")");
  7104                 return NULL;
  9084                 return NULL;
  7105                 
  9085                 
  7106             }
  9086             }
  7107             
  9087             
  7108             ERROR;
  9088             ERROR;
  7109         }
  9089         }
  7110         
  9090         
  7111     }/*function_time_to_lreal*/
  9091     }/*function_string_to_lreal*/
  7112     break;
  9092     break;
  7113 
  9093 
  7114 /****
  9094 /****
  7115  *TIME_TO_STRING
  9095  *STRING_TO_TIME
  7116  */
  9096  */
  7117     case function_time_to_string :
  9097     case function_string_to_time :
  7118     {
  9098     {
  7119         symbol_c *last_type_symbol = NULL;
  9099         symbol_c *last_type_symbol = NULL;
  7120 
  9100 
  7121         {
  9101         {
  7122             /* Get the value from a foo(<param_name> = <param_value>) style call */
  9102             /* Get the value from a foo(<param_name> = <param_value>) style call */
  7123             symbol_c *IN_param_value = &this->default_variable_name;
  9103             symbol_c *IN_param_value = &this->default_variable_name;
  7124         
  9104         
  7125             symbol_c *IN_type_symbol = param_data_type;
  9105             symbol_c *IN_type_symbol = param_data_type;
  7126             last_type_symbol = param_data_type;
  9106             last_type_symbol = param_data_type;
  7127             
  9107             
  7128             if (typeid(*last_type_symbol) == typeid(time_type_name_c))
  9108             if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
       
  9109             {
       
  9110         
       
  9111                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
       
  9112                 s4o.print("(");
       
  9113                 return_type_symbol->accept(*this);
       
  9114                 s4o.print(")__string_to_time(");
       
  9115                 IN_param_value->accept(*this);
       
  9116                 s4o.print(")");
       
  9117                 return NULL;
       
  9118                 
       
  9119             }
       
  9120             
       
  9121             ERROR;
       
  9122         }
       
  9123         
       
  9124     }/*function_string_to_time*/
       
  9125     break;
       
  9126 
       
  9127 /****
       
  9128  *STRING_TO_DATE
       
  9129  */
       
  9130     case function_string_to_date :
       
  9131     {
       
  9132         symbol_c *last_type_symbol = NULL;
       
  9133 
       
  9134         {
       
  9135             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  9136             symbol_c *IN_param_value = &this->default_variable_name;
       
  9137         
       
  9138             symbol_c *IN_type_symbol = param_data_type;
       
  9139             last_type_symbol = param_data_type;
       
  9140             
       
  9141             if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
       
  9142             {
       
  9143         
       
  9144                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
       
  9145                 s4o.print("(");
       
  9146                 return_type_symbol->accept(*this);
       
  9147                 s4o.print(")__string_to_time(");
       
  9148                 IN_param_value->accept(*this);
       
  9149                 s4o.print(")");
       
  9150                 return NULL;
       
  9151                 
       
  9152             }
       
  9153             
       
  9154             ERROR;
       
  9155         }
       
  9156         
       
  9157     }/*function_string_to_date*/
       
  9158     break;
       
  9159 
       
  9160 /****
       
  9161  *STRING_TO_TOD
       
  9162  */
       
  9163     case function_string_to_tod :
       
  9164     {
       
  9165         symbol_c *last_type_symbol = NULL;
       
  9166 
       
  9167         {
       
  9168             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  9169             symbol_c *IN_param_value = &this->default_variable_name;
       
  9170         
       
  9171             symbol_c *IN_type_symbol = param_data_type;
       
  9172             last_type_symbol = param_data_type;
       
  9173             
       
  9174             if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
       
  9175             {
       
  9176         
       
  9177                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
       
  9178                 s4o.print("(");
       
  9179                 return_type_symbol->accept(*this);
       
  9180                 s4o.print(")__string_to_time(");
       
  9181                 IN_param_value->accept(*this);
       
  9182                 s4o.print(")");
       
  9183                 return NULL;
       
  9184                 
       
  9185             }
       
  9186             
       
  9187             ERROR;
       
  9188         }
       
  9189         
       
  9190     }/*function_string_to_tod*/
       
  9191     break;
       
  9192 
       
  9193 /****
       
  9194  *STRING_TO_DT
       
  9195  */
       
  9196     case function_string_to_dt :
       
  9197     {
       
  9198         symbol_c *last_type_symbol = NULL;
       
  9199 
       
  9200         {
       
  9201             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  9202             symbol_c *IN_param_value = &this->default_variable_name;
       
  9203         
       
  9204             symbol_c *IN_type_symbol = param_data_type;
       
  9205             last_type_symbol = param_data_type;
       
  9206             
       
  9207             if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
       
  9208             {
       
  9209         
       
  9210                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
       
  9211                 s4o.print("(");
       
  9212                 return_type_symbol->accept(*this);
       
  9213                 s4o.print(")__string_to_time(");
       
  9214                 IN_param_value->accept(*this);
       
  9215                 s4o.print(")");
       
  9216                 return NULL;
       
  9217                 
       
  9218             }
       
  9219             
       
  9220             ERROR;
       
  9221         }
       
  9222         
       
  9223     }/*function_string_to_dt*/
       
  9224     break;
       
  9225 
       
  9226 /****
       
  9227  *STRING_TO_BYTE
       
  9228  */
       
  9229     case function_string_to_byte :
       
  9230     {
       
  9231         symbol_c *last_type_symbol = NULL;
       
  9232 
       
  9233         {
       
  9234             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  9235             symbol_c *IN_param_value = &this->default_variable_name;
       
  9236         
       
  9237             symbol_c *IN_type_symbol = param_data_type;
       
  9238             last_type_symbol = param_data_type;
       
  9239             
       
  9240             if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
       
  9241             {
       
  9242         
       
  9243                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
       
  9244                 s4o.print("(");
       
  9245                 return_type_symbol->accept(*this);
       
  9246                 s4o.print(")__string_to_bit(");
       
  9247                 IN_param_value->accept(*this);
       
  9248                 s4o.print(")");
       
  9249                 return NULL;
       
  9250                 
       
  9251             }
       
  9252             
       
  9253             ERROR;
       
  9254         }
       
  9255         
       
  9256     }/*function_string_to_byte*/
       
  9257     break;
       
  9258 
       
  9259 /****
       
  9260  *STRING_TO_WORD
       
  9261  */
       
  9262     case function_string_to_word :
       
  9263     {
       
  9264         symbol_c *last_type_symbol = NULL;
       
  9265 
       
  9266         {
       
  9267             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  9268             symbol_c *IN_param_value = &this->default_variable_name;
       
  9269         
       
  9270             symbol_c *IN_type_symbol = param_data_type;
       
  9271             last_type_symbol = param_data_type;
       
  9272             
       
  9273             if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
       
  9274             {
       
  9275         
       
  9276                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
       
  9277                 s4o.print("(");
       
  9278                 return_type_symbol->accept(*this);
       
  9279                 s4o.print(")__string_to_bit(");
       
  9280                 IN_param_value->accept(*this);
       
  9281                 s4o.print(")");
       
  9282                 return NULL;
       
  9283                 
       
  9284             }
       
  9285             
       
  9286             ERROR;
       
  9287         }
       
  9288         
       
  9289     }/*function_string_to_word*/
       
  9290     break;
       
  9291 
       
  9292 /****
       
  9293  *STRING_TO_DWORD
       
  9294  */
       
  9295     case function_string_to_dword :
       
  9296     {
       
  9297         symbol_c *last_type_symbol = NULL;
       
  9298 
       
  9299         {
       
  9300             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  9301             symbol_c *IN_param_value = &this->default_variable_name;
       
  9302         
       
  9303             symbol_c *IN_type_symbol = param_data_type;
       
  9304             last_type_symbol = param_data_type;
       
  9305             
       
  9306             if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
       
  9307             {
       
  9308         
       
  9309                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
       
  9310                 s4o.print("(");
       
  9311                 return_type_symbol->accept(*this);
       
  9312                 s4o.print(")__string_to_bit(");
       
  9313                 IN_param_value->accept(*this);
       
  9314                 s4o.print(")");
       
  9315                 return NULL;
       
  9316                 
       
  9317             }
       
  9318             
       
  9319             ERROR;
       
  9320         }
       
  9321         
       
  9322     }/*function_string_to_dword*/
       
  9323     break;
       
  9324 
       
  9325 /****
       
  9326  *STRING_TO_LWORD
       
  9327  */
       
  9328     case function_string_to_lword :
       
  9329     {
       
  9330         symbol_c *last_type_symbol = NULL;
       
  9331 
       
  9332         {
       
  9333             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  9334             symbol_c *IN_param_value = &this->default_variable_name;
       
  9335         
       
  9336             symbol_c *IN_type_symbol = param_data_type;
       
  9337             last_type_symbol = param_data_type;
       
  9338             
       
  9339             if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
       
  9340             {
       
  9341         
       
  9342                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
       
  9343                 s4o.print("(");
       
  9344                 return_type_symbol->accept(*this);
       
  9345                 s4o.print(")__string_to_bit(");
       
  9346                 IN_param_value->accept(*this);
       
  9347                 s4o.print(")");
       
  9348                 return NULL;
       
  9349                 
       
  9350             }
       
  9351             
       
  9352             ERROR;
       
  9353         }
       
  9354         
       
  9355     }/*function_string_to_lword*/
       
  9356     break;
       
  9357 
       
  9358 /****
       
  9359  *BYTE_TO_BOOL
       
  9360  */
       
  9361     case function_byte_to_bool :
       
  9362     {
       
  9363         symbol_c *last_type_symbol = NULL;
       
  9364 
       
  9365         {
       
  9366             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  9367             symbol_c *IN_param_value = &this->default_variable_name;
       
  9368         
       
  9369             symbol_c *IN_type_symbol = param_data_type;
       
  9370             last_type_symbol = param_data_type;
       
  9371             
       
  9372             if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
       
  9373             {
       
  9374         
       
  9375                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
       
  9376                 s4o.print("(");
       
  9377                 return_type_symbol->accept(*this);
       
  9378                 s4o.print(")");
       
  9379                 IN_param_value->accept(*this);
       
  9380                 return NULL;
       
  9381                 
       
  9382             }
       
  9383             
       
  9384             ERROR;
       
  9385         }
       
  9386         
       
  9387     }/*function_byte_to_bool*/
       
  9388     break;
       
  9389 
       
  9390 /****
       
  9391  *BYTE_TO_SINT
       
  9392  */
       
  9393     case function_byte_to_sint :
       
  9394     {
       
  9395         symbol_c *last_type_symbol = NULL;
       
  9396 
       
  9397         {
       
  9398             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  9399             symbol_c *IN_param_value = &this->default_variable_name;
       
  9400         
       
  9401             symbol_c *IN_type_symbol = param_data_type;
       
  9402             last_type_symbol = param_data_type;
       
  9403             
       
  9404             if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
       
  9405             {
       
  9406         
       
  9407                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
       
  9408                 s4o.print("(");
       
  9409                 return_type_symbol->accept(*this);
       
  9410                 s4o.print(")");
       
  9411                 IN_param_value->accept(*this);
       
  9412                 return NULL;
       
  9413                 
       
  9414             }
       
  9415             
       
  9416             ERROR;
       
  9417         }
       
  9418         
       
  9419     }/*function_byte_to_sint*/
       
  9420     break;
       
  9421 
       
  9422 /****
       
  9423  *BYTE_TO_INT
       
  9424  */
       
  9425     case function_byte_to_int :
       
  9426     {
       
  9427         symbol_c *last_type_symbol = NULL;
       
  9428 
       
  9429         {
       
  9430             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  9431             symbol_c *IN_param_value = &this->default_variable_name;
       
  9432         
       
  9433             symbol_c *IN_type_symbol = param_data_type;
       
  9434             last_type_symbol = param_data_type;
       
  9435             
       
  9436             if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
       
  9437             {
       
  9438         
       
  9439                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
       
  9440                 s4o.print("(");
       
  9441                 return_type_symbol->accept(*this);
       
  9442                 s4o.print(")");
       
  9443                 IN_param_value->accept(*this);
       
  9444                 return NULL;
       
  9445                 
       
  9446             }
       
  9447             
       
  9448             ERROR;
       
  9449         }
       
  9450         
       
  9451     }/*function_byte_to_int*/
       
  9452     break;
       
  9453 
       
  9454 /****
       
  9455  *BYTE_TO_DINT
       
  9456  */
       
  9457     case function_byte_to_dint :
       
  9458     {
       
  9459         symbol_c *last_type_symbol = NULL;
       
  9460 
       
  9461         {
       
  9462             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  9463             symbol_c *IN_param_value = &this->default_variable_name;
       
  9464         
       
  9465             symbol_c *IN_type_symbol = param_data_type;
       
  9466             last_type_symbol = param_data_type;
       
  9467             
       
  9468             if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
       
  9469             {
       
  9470         
       
  9471                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
       
  9472                 s4o.print("(");
       
  9473                 return_type_symbol->accept(*this);
       
  9474                 s4o.print(")");
       
  9475                 IN_param_value->accept(*this);
       
  9476                 return NULL;
       
  9477                 
       
  9478             }
       
  9479             
       
  9480             ERROR;
       
  9481         }
       
  9482         
       
  9483     }/*function_byte_to_dint*/
       
  9484     break;
       
  9485 
       
  9486 /****
       
  9487  *BYTE_TO_LINT
       
  9488  */
       
  9489     case function_byte_to_lint :
       
  9490     {
       
  9491         symbol_c *last_type_symbol = NULL;
       
  9492 
       
  9493         {
       
  9494             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  9495             symbol_c *IN_param_value = &this->default_variable_name;
       
  9496         
       
  9497             symbol_c *IN_type_symbol = param_data_type;
       
  9498             last_type_symbol = param_data_type;
       
  9499             
       
  9500             if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
       
  9501             {
       
  9502         
       
  9503                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
       
  9504                 s4o.print("(");
       
  9505                 return_type_symbol->accept(*this);
       
  9506                 s4o.print(")");
       
  9507                 IN_param_value->accept(*this);
       
  9508                 return NULL;
       
  9509                 
       
  9510             }
       
  9511             
       
  9512             ERROR;
       
  9513         }
       
  9514         
       
  9515     }/*function_byte_to_lint*/
       
  9516     break;
       
  9517 
       
  9518 /****
       
  9519  *BYTE_TO_USINT
       
  9520  */
       
  9521     case function_byte_to_usint :
       
  9522     {
       
  9523         symbol_c *last_type_symbol = NULL;
       
  9524 
       
  9525         {
       
  9526             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  9527             symbol_c *IN_param_value = &this->default_variable_name;
       
  9528         
       
  9529             symbol_c *IN_type_symbol = param_data_type;
       
  9530             last_type_symbol = param_data_type;
       
  9531             
       
  9532             if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
       
  9533             {
       
  9534         
       
  9535                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
       
  9536                 s4o.print("(");
       
  9537                 return_type_symbol->accept(*this);
       
  9538                 s4o.print(")");
       
  9539                 IN_param_value->accept(*this);
       
  9540                 return NULL;
       
  9541                 
       
  9542             }
       
  9543             
       
  9544             ERROR;
       
  9545         }
       
  9546         
       
  9547     }/*function_byte_to_usint*/
       
  9548     break;
       
  9549 
       
  9550 /****
       
  9551  *BYTE_TO_UINT
       
  9552  */
       
  9553     case function_byte_to_uint :
       
  9554     {
       
  9555         symbol_c *last_type_symbol = NULL;
       
  9556 
       
  9557         {
       
  9558             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  9559             symbol_c *IN_param_value = &this->default_variable_name;
       
  9560         
       
  9561             symbol_c *IN_type_symbol = param_data_type;
       
  9562             last_type_symbol = param_data_type;
       
  9563             
       
  9564             if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
       
  9565             {
       
  9566         
       
  9567                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
       
  9568                 s4o.print("(");
       
  9569                 return_type_symbol->accept(*this);
       
  9570                 s4o.print(")");
       
  9571                 IN_param_value->accept(*this);
       
  9572                 return NULL;
       
  9573                 
       
  9574             }
       
  9575             
       
  9576             ERROR;
       
  9577         }
       
  9578         
       
  9579     }/*function_byte_to_uint*/
       
  9580     break;
       
  9581 
       
  9582 /****
       
  9583  *BYTE_TO_UDINT
       
  9584  */
       
  9585     case function_byte_to_udint :
       
  9586     {
       
  9587         symbol_c *last_type_symbol = NULL;
       
  9588 
       
  9589         {
       
  9590             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  9591             symbol_c *IN_param_value = &this->default_variable_name;
       
  9592         
       
  9593             symbol_c *IN_type_symbol = param_data_type;
       
  9594             last_type_symbol = param_data_type;
       
  9595             
       
  9596             if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
       
  9597             {
       
  9598         
       
  9599                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
       
  9600                 s4o.print("(");
       
  9601                 return_type_symbol->accept(*this);
       
  9602                 s4o.print(")");
       
  9603                 IN_param_value->accept(*this);
       
  9604                 return NULL;
       
  9605                 
       
  9606             }
       
  9607             
       
  9608             ERROR;
       
  9609         }
       
  9610         
       
  9611     }/*function_byte_to_udint*/
       
  9612     break;
       
  9613 
       
  9614 /****
       
  9615  *BYTE_TO_ULINT
       
  9616  */
       
  9617     case function_byte_to_ulint :
       
  9618     {
       
  9619         symbol_c *last_type_symbol = NULL;
       
  9620 
       
  9621         {
       
  9622             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  9623             symbol_c *IN_param_value = &this->default_variable_name;
       
  9624         
       
  9625             symbol_c *IN_type_symbol = param_data_type;
       
  9626             last_type_symbol = param_data_type;
       
  9627             
       
  9628             if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
       
  9629             {
       
  9630         
       
  9631                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
       
  9632                 s4o.print("(");
       
  9633                 return_type_symbol->accept(*this);
       
  9634                 s4o.print(")");
       
  9635                 IN_param_value->accept(*this);
       
  9636                 return NULL;
       
  9637                 
       
  9638             }
       
  9639             
       
  9640             ERROR;
       
  9641         }
       
  9642         
       
  9643     }/*function_byte_to_ulint*/
       
  9644     break;
       
  9645 
       
  9646 /****
       
  9647  *BYTE_TO_REAL
       
  9648  */
       
  9649     case function_byte_to_real :
       
  9650     {
       
  9651         symbol_c *last_type_symbol = NULL;
       
  9652 
       
  9653         {
       
  9654             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  9655             symbol_c *IN_param_value = &this->default_variable_name;
       
  9656         
       
  9657             symbol_c *IN_type_symbol = param_data_type;
       
  9658             last_type_symbol = param_data_type;
       
  9659             
       
  9660             if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
       
  9661             {
       
  9662         
       
  9663                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
       
  9664                 s4o.print("(");
       
  9665                 return_type_symbol->accept(*this);
       
  9666                 s4o.print(")");
       
  9667                 IN_param_value->accept(*this);
       
  9668                 return NULL;
       
  9669                 
       
  9670             }
       
  9671             
       
  9672             ERROR;
       
  9673         }
       
  9674         
       
  9675     }/*function_byte_to_real*/
       
  9676     break;
       
  9677 
       
  9678 /****
       
  9679  *BYTE_TO_LREAL
       
  9680  */
       
  9681     case function_byte_to_lreal :
       
  9682     {
       
  9683         symbol_c *last_type_symbol = NULL;
       
  9684 
       
  9685         {
       
  9686             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  9687             symbol_c *IN_param_value = &this->default_variable_name;
       
  9688         
       
  9689             symbol_c *IN_type_symbol = param_data_type;
       
  9690             last_type_symbol = param_data_type;
       
  9691             
       
  9692             if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
       
  9693             {
       
  9694         
       
  9695                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
       
  9696                 s4o.print("(");
       
  9697                 return_type_symbol->accept(*this);
       
  9698                 s4o.print(")");
       
  9699                 IN_param_value->accept(*this);
       
  9700                 return NULL;
       
  9701                 
       
  9702             }
       
  9703             
       
  9704             ERROR;
       
  9705         }
       
  9706         
       
  9707     }/*function_byte_to_lreal*/
       
  9708     break;
       
  9709 
       
  9710 /****
       
  9711  *BYTE_TO_TIME
       
  9712  */
       
  9713     case function_byte_to_time :
       
  9714     {
       
  9715         symbol_c *last_type_symbol = NULL;
       
  9716 
       
  9717         {
       
  9718             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  9719             symbol_c *IN_param_value = &this->default_variable_name;
       
  9720         
       
  9721             symbol_c *IN_type_symbol = param_data_type;
       
  9722             last_type_symbol = param_data_type;
       
  9723             
       
  9724             if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
       
  9725             {
       
  9726         
       
  9727                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
       
  9728                 s4o.print("(");
       
  9729                 return_type_symbol->accept(*this);
       
  9730                 s4o.print(")__int_to_time(");
       
  9731                 IN_param_value->accept(*this);
       
  9732                 s4o.print(")");
       
  9733                 return NULL;
       
  9734                 
       
  9735             }
       
  9736             
       
  9737             ERROR;
       
  9738         }
       
  9739         
       
  9740     }/*function_byte_to_time*/
       
  9741     break;
       
  9742 
       
  9743 /****
       
  9744  *BYTE_TO_DATE
       
  9745  */
       
  9746     case function_byte_to_date :
       
  9747     {
       
  9748         symbol_c *last_type_symbol = NULL;
       
  9749 
       
  9750         {
       
  9751             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  9752             symbol_c *IN_param_value = &this->default_variable_name;
       
  9753         
       
  9754             symbol_c *IN_type_symbol = param_data_type;
       
  9755             last_type_symbol = param_data_type;
       
  9756             
       
  9757             if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
       
  9758             {
       
  9759         
       
  9760                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
       
  9761                 s4o.print("(");
       
  9762                 return_type_symbol->accept(*this);
       
  9763                 s4o.print(")__int_to_time(");
       
  9764                 IN_param_value->accept(*this);
       
  9765                 s4o.print(")");
       
  9766                 return NULL;
       
  9767                 
       
  9768             }
       
  9769             
       
  9770             ERROR;
       
  9771         }
       
  9772         
       
  9773     }/*function_byte_to_date*/
       
  9774     break;
       
  9775 
       
  9776 /****
       
  9777  *BYTE_TO_TOD
       
  9778  */
       
  9779     case function_byte_to_tod :
       
  9780     {
       
  9781         symbol_c *last_type_symbol = NULL;
       
  9782 
       
  9783         {
       
  9784             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  9785             symbol_c *IN_param_value = &this->default_variable_name;
       
  9786         
       
  9787             symbol_c *IN_type_symbol = param_data_type;
       
  9788             last_type_symbol = param_data_type;
       
  9789             
       
  9790             if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
       
  9791             {
       
  9792         
       
  9793                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
       
  9794                 s4o.print("(");
       
  9795                 return_type_symbol->accept(*this);
       
  9796                 s4o.print(")__int_to_time(");
       
  9797                 IN_param_value->accept(*this);
       
  9798                 s4o.print(")");
       
  9799                 return NULL;
       
  9800                 
       
  9801             }
       
  9802             
       
  9803             ERROR;
       
  9804         }
       
  9805         
       
  9806     }/*function_byte_to_tod*/
       
  9807     break;
       
  9808 
       
  9809 /****
       
  9810  *BYTE_TO_DT
       
  9811  */
       
  9812     case function_byte_to_dt :
       
  9813     {
       
  9814         symbol_c *last_type_symbol = NULL;
       
  9815 
       
  9816         {
       
  9817             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  9818             symbol_c *IN_param_value = &this->default_variable_name;
       
  9819         
       
  9820             symbol_c *IN_type_symbol = param_data_type;
       
  9821             last_type_symbol = param_data_type;
       
  9822             
       
  9823             if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
       
  9824             {
       
  9825         
       
  9826                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
       
  9827                 s4o.print("(");
       
  9828                 return_type_symbol->accept(*this);
       
  9829                 s4o.print(")__int_to_time(");
       
  9830                 IN_param_value->accept(*this);
       
  9831                 s4o.print(")");
       
  9832                 return NULL;
       
  9833                 
       
  9834             }
       
  9835             
       
  9836             ERROR;
       
  9837         }
       
  9838         
       
  9839     }/*function_byte_to_dt*/
       
  9840     break;
       
  9841 
       
  9842 /****
       
  9843  *BYTE_TO_STRING
       
  9844  */
       
  9845     case function_byte_to_string :
       
  9846     {
       
  9847         symbol_c *last_type_symbol = NULL;
       
  9848 
       
  9849         {
       
  9850             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  9851             symbol_c *IN_param_value = &this->default_variable_name;
       
  9852         
       
  9853             symbol_c *IN_type_symbol = param_data_type;
       
  9854             last_type_symbol = param_data_type;
       
  9855             
       
  9856             if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
  7129             {
  9857             {
  7130         
  9858         
  7131                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
  9859                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
  7132                 s4o.print("(");
  9860                 s4o.print("(");
  7133                 return_type_symbol->accept(*this);
  9861                 return_type_symbol->accept(*this);
  7134                 s4o.print(")__time_to_string(");
  9862                 s4o.print(")__bit_to_string(");
  7135                 IN_param_value->accept(*this);
  9863                 IN_param_value->accept(*this);
  7136                 s4o.print(")");
  9864                 s4o.print(")");
  7137                 return NULL;
  9865                 return NULL;
  7138                 
  9866                 
  7139             }
  9867             }
  7140             
  9868             
  7141             ERROR;
  9869             ERROR;
  7142         }
  9870         }
  7143         
  9871         
  7144     }/*function_time_to_string*/
  9872     }/*function_byte_to_string*/
  7145     break;
  9873     break;
  7146 
  9874 
  7147 /****
  9875 /****
  7148  *TIME_TO_BYTE
  9876  *BYTE_TO_WORD
  7149  */
  9877  */
  7150     case function_time_to_byte :
  9878     case function_byte_to_word :
  7151     {
  9879     {
  7152         symbol_c *last_type_symbol = NULL;
  9880         symbol_c *last_type_symbol = NULL;
  7153 
  9881 
  7154         {
  9882         {
  7155             /* Get the value from a foo(<param_name> = <param_value>) style call */
  9883             /* Get the value from a foo(<param_name> = <param_value>) style call */
  7156             symbol_c *IN_param_value = &this->default_variable_name;
  9884             symbol_c *IN_param_value = &this->default_variable_name;
  7157         
  9885         
  7158             symbol_c *IN_type_symbol = param_data_type;
  9886             symbol_c *IN_type_symbol = param_data_type;
  7159             last_type_symbol = param_data_type;
  9887             last_type_symbol = param_data_type;
  7160             
  9888             
  7161             if (typeid(*last_type_symbol) == typeid(time_type_name_c))
  9889             if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
       
  9890             {
       
  9891         
       
  9892                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
       
  9893                 s4o.print("(");
       
  9894                 return_type_symbol->accept(*this);
       
  9895                 s4o.print(")");
       
  9896                 IN_param_value->accept(*this);
       
  9897                 return NULL;
       
  9898                 
       
  9899             }
       
  9900             
       
  9901             ERROR;
       
  9902         }
       
  9903         
       
  9904     }/*function_byte_to_word*/
       
  9905     break;
       
  9906 
       
  9907 /****
       
  9908  *BYTE_TO_DWORD
       
  9909  */
       
  9910     case function_byte_to_dword :
       
  9911     {
       
  9912         symbol_c *last_type_symbol = NULL;
       
  9913 
       
  9914         {
       
  9915             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  9916             symbol_c *IN_param_value = &this->default_variable_name;
       
  9917         
       
  9918             symbol_c *IN_type_symbol = param_data_type;
       
  9919             last_type_symbol = param_data_type;
       
  9920             
       
  9921             if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
       
  9922             {
       
  9923         
       
  9924                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
       
  9925                 s4o.print("(");
       
  9926                 return_type_symbol->accept(*this);
       
  9927                 s4o.print(")");
       
  9928                 IN_param_value->accept(*this);
       
  9929                 return NULL;
       
  9930                 
       
  9931             }
       
  9932             
       
  9933             ERROR;
       
  9934         }
       
  9935         
       
  9936     }/*function_byte_to_dword*/
       
  9937     break;
       
  9938 
       
  9939 /****
       
  9940  *BYTE_TO_LWORD
       
  9941  */
       
  9942     case function_byte_to_lword :
       
  9943     {
       
  9944         symbol_c *last_type_symbol = NULL;
       
  9945 
       
  9946         {
       
  9947             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  9948             symbol_c *IN_param_value = &this->default_variable_name;
       
  9949         
       
  9950             symbol_c *IN_type_symbol = param_data_type;
       
  9951             last_type_symbol = param_data_type;
       
  9952             
       
  9953             if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
       
  9954             {
       
  9955         
       
  9956                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
       
  9957                 s4o.print("(");
       
  9958                 return_type_symbol->accept(*this);
       
  9959                 s4o.print(")");
       
  9960                 IN_param_value->accept(*this);
       
  9961                 return NULL;
       
  9962                 
       
  9963             }
       
  9964             
       
  9965             ERROR;
       
  9966         }
       
  9967         
       
  9968     }/*function_byte_to_lword*/
       
  9969     break;
       
  9970 
       
  9971 /****
       
  9972  *WORD_TO_BOOL
       
  9973  */
       
  9974     case function_word_to_bool :
       
  9975     {
       
  9976         symbol_c *last_type_symbol = NULL;
       
  9977 
       
  9978         {
       
  9979             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  9980             symbol_c *IN_param_value = &this->default_variable_name;
       
  9981         
       
  9982             symbol_c *IN_type_symbol = param_data_type;
       
  9983             last_type_symbol = param_data_type;
       
  9984             
       
  9985             if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
       
  9986             {
       
  9987         
       
  9988                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
       
  9989                 s4o.print("(");
       
  9990                 return_type_symbol->accept(*this);
       
  9991                 s4o.print(")");
       
  9992                 IN_param_value->accept(*this);
       
  9993                 return NULL;
       
  9994                 
       
  9995             }
       
  9996             
       
  9997             ERROR;
       
  9998         }
       
  9999         
       
 10000     }/*function_word_to_bool*/
       
 10001     break;
       
 10002 
       
 10003 /****
       
 10004  *WORD_TO_SINT
       
 10005  */
       
 10006     case function_word_to_sint :
       
 10007     {
       
 10008         symbol_c *last_type_symbol = NULL;
       
 10009 
       
 10010         {
       
 10011             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10012             symbol_c *IN_param_value = &this->default_variable_name;
       
 10013         
       
 10014             symbol_c *IN_type_symbol = param_data_type;
       
 10015             last_type_symbol = param_data_type;
       
 10016             
       
 10017             if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
       
 10018             {
       
 10019         
       
 10020                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
       
 10021                 s4o.print("(");
       
 10022                 return_type_symbol->accept(*this);
       
 10023                 s4o.print(")");
       
 10024                 IN_param_value->accept(*this);
       
 10025                 return NULL;
       
 10026                 
       
 10027             }
       
 10028             
       
 10029             ERROR;
       
 10030         }
       
 10031         
       
 10032     }/*function_word_to_sint*/
       
 10033     break;
       
 10034 
       
 10035 /****
       
 10036  *WORD_TO_INT
       
 10037  */
       
 10038     case function_word_to_int :
       
 10039     {
       
 10040         symbol_c *last_type_symbol = NULL;
       
 10041 
       
 10042         {
       
 10043             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10044             symbol_c *IN_param_value = &this->default_variable_name;
       
 10045         
       
 10046             symbol_c *IN_type_symbol = param_data_type;
       
 10047             last_type_symbol = param_data_type;
       
 10048             
       
 10049             if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
       
 10050             {
       
 10051         
       
 10052                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
       
 10053                 s4o.print("(");
       
 10054                 return_type_symbol->accept(*this);
       
 10055                 s4o.print(")");
       
 10056                 IN_param_value->accept(*this);
       
 10057                 return NULL;
       
 10058                 
       
 10059             }
       
 10060             
       
 10061             ERROR;
       
 10062         }
       
 10063         
       
 10064     }/*function_word_to_int*/
       
 10065     break;
       
 10066 
       
 10067 /****
       
 10068  *WORD_TO_DINT
       
 10069  */
       
 10070     case function_word_to_dint :
       
 10071     {
       
 10072         symbol_c *last_type_symbol = NULL;
       
 10073 
       
 10074         {
       
 10075             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10076             symbol_c *IN_param_value = &this->default_variable_name;
       
 10077         
       
 10078             symbol_c *IN_type_symbol = param_data_type;
       
 10079             last_type_symbol = param_data_type;
       
 10080             
       
 10081             if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
       
 10082             {
       
 10083         
       
 10084                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
       
 10085                 s4o.print("(");
       
 10086                 return_type_symbol->accept(*this);
       
 10087                 s4o.print(")");
       
 10088                 IN_param_value->accept(*this);
       
 10089                 return NULL;
       
 10090                 
       
 10091             }
       
 10092             
       
 10093             ERROR;
       
 10094         }
       
 10095         
       
 10096     }/*function_word_to_dint*/
       
 10097     break;
       
 10098 
       
 10099 /****
       
 10100  *WORD_TO_LINT
       
 10101  */
       
 10102     case function_word_to_lint :
       
 10103     {
       
 10104         symbol_c *last_type_symbol = NULL;
       
 10105 
       
 10106         {
       
 10107             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10108             symbol_c *IN_param_value = &this->default_variable_name;
       
 10109         
       
 10110             symbol_c *IN_type_symbol = param_data_type;
       
 10111             last_type_symbol = param_data_type;
       
 10112             
       
 10113             if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
       
 10114             {
       
 10115         
       
 10116                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
       
 10117                 s4o.print("(");
       
 10118                 return_type_symbol->accept(*this);
       
 10119                 s4o.print(")");
       
 10120                 IN_param_value->accept(*this);
       
 10121                 return NULL;
       
 10122                 
       
 10123             }
       
 10124             
       
 10125             ERROR;
       
 10126         }
       
 10127         
       
 10128     }/*function_word_to_lint*/
       
 10129     break;
       
 10130 
       
 10131 /****
       
 10132  *WORD_TO_USINT
       
 10133  */
       
 10134     case function_word_to_usint :
       
 10135     {
       
 10136         symbol_c *last_type_symbol = NULL;
       
 10137 
       
 10138         {
       
 10139             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10140             symbol_c *IN_param_value = &this->default_variable_name;
       
 10141         
       
 10142             symbol_c *IN_type_symbol = param_data_type;
       
 10143             last_type_symbol = param_data_type;
       
 10144             
       
 10145             if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
       
 10146             {
       
 10147         
       
 10148                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
       
 10149                 s4o.print("(");
       
 10150                 return_type_symbol->accept(*this);
       
 10151                 s4o.print(")");
       
 10152                 IN_param_value->accept(*this);
       
 10153                 return NULL;
       
 10154                 
       
 10155             }
       
 10156             
       
 10157             ERROR;
       
 10158         }
       
 10159         
       
 10160     }/*function_word_to_usint*/
       
 10161     break;
       
 10162 
       
 10163 /****
       
 10164  *WORD_TO_UINT
       
 10165  */
       
 10166     case function_word_to_uint :
       
 10167     {
       
 10168         symbol_c *last_type_symbol = NULL;
       
 10169 
       
 10170         {
       
 10171             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10172             symbol_c *IN_param_value = &this->default_variable_name;
       
 10173         
       
 10174             symbol_c *IN_type_symbol = param_data_type;
       
 10175             last_type_symbol = param_data_type;
       
 10176             
       
 10177             if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
       
 10178             {
       
 10179         
       
 10180                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
       
 10181                 s4o.print("(");
       
 10182                 return_type_symbol->accept(*this);
       
 10183                 s4o.print(")");
       
 10184                 IN_param_value->accept(*this);
       
 10185                 return NULL;
       
 10186                 
       
 10187             }
       
 10188             
       
 10189             ERROR;
       
 10190         }
       
 10191         
       
 10192     }/*function_word_to_uint*/
       
 10193     break;
       
 10194 
       
 10195 /****
       
 10196  *WORD_TO_UDINT
       
 10197  */
       
 10198     case function_word_to_udint :
       
 10199     {
       
 10200         symbol_c *last_type_symbol = NULL;
       
 10201 
       
 10202         {
       
 10203             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10204             symbol_c *IN_param_value = &this->default_variable_name;
       
 10205         
       
 10206             symbol_c *IN_type_symbol = param_data_type;
       
 10207             last_type_symbol = param_data_type;
       
 10208             
       
 10209             if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
       
 10210             {
       
 10211         
       
 10212                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
       
 10213                 s4o.print("(");
       
 10214                 return_type_symbol->accept(*this);
       
 10215                 s4o.print(")");
       
 10216                 IN_param_value->accept(*this);
       
 10217                 return NULL;
       
 10218                 
       
 10219             }
       
 10220             
       
 10221             ERROR;
       
 10222         }
       
 10223         
       
 10224     }/*function_word_to_udint*/
       
 10225     break;
       
 10226 
       
 10227 /****
       
 10228  *WORD_TO_ULINT
       
 10229  */
       
 10230     case function_word_to_ulint :
       
 10231     {
       
 10232         symbol_c *last_type_symbol = NULL;
       
 10233 
       
 10234         {
       
 10235             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10236             symbol_c *IN_param_value = &this->default_variable_name;
       
 10237         
       
 10238             symbol_c *IN_type_symbol = param_data_type;
       
 10239             last_type_symbol = param_data_type;
       
 10240             
       
 10241             if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
       
 10242             {
       
 10243         
       
 10244                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
       
 10245                 s4o.print("(");
       
 10246                 return_type_symbol->accept(*this);
       
 10247                 s4o.print(")");
       
 10248                 IN_param_value->accept(*this);
       
 10249                 return NULL;
       
 10250                 
       
 10251             }
       
 10252             
       
 10253             ERROR;
       
 10254         }
       
 10255         
       
 10256     }/*function_word_to_ulint*/
       
 10257     break;
       
 10258 
       
 10259 /****
       
 10260  *WORD_TO_REAL
       
 10261  */
       
 10262     case function_word_to_real :
       
 10263     {
       
 10264         symbol_c *last_type_symbol = NULL;
       
 10265 
       
 10266         {
       
 10267             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10268             symbol_c *IN_param_value = &this->default_variable_name;
       
 10269         
       
 10270             symbol_c *IN_type_symbol = param_data_type;
       
 10271             last_type_symbol = param_data_type;
       
 10272             
       
 10273             if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
       
 10274             {
       
 10275         
       
 10276                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
       
 10277                 s4o.print("(");
       
 10278                 return_type_symbol->accept(*this);
       
 10279                 s4o.print(")");
       
 10280                 IN_param_value->accept(*this);
       
 10281                 return NULL;
       
 10282                 
       
 10283             }
       
 10284             
       
 10285             ERROR;
       
 10286         }
       
 10287         
       
 10288     }/*function_word_to_real*/
       
 10289     break;
       
 10290 
       
 10291 /****
       
 10292  *WORD_TO_LREAL
       
 10293  */
       
 10294     case function_word_to_lreal :
       
 10295     {
       
 10296         symbol_c *last_type_symbol = NULL;
       
 10297 
       
 10298         {
       
 10299             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10300             symbol_c *IN_param_value = &this->default_variable_name;
       
 10301         
       
 10302             symbol_c *IN_type_symbol = param_data_type;
       
 10303             last_type_symbol = param_data_type;
       
 10304             
       
 10305             if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
       
 10306             {
       
 10307         
       
 10308                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
       
 10309                 s4o.print("(");
       
 10310                 return_type_symbol->accept(*this);
       
 10311                 s4o.print(")");
       
 10312                 IN_param_value->accept(*this);
       
 10313                 return NULL;
       
 10314                 
       
 10315             }
       
 10316             
       
 10317             ERROR;
       
 10318         }
       
 10319         
       
 10320     }/*function_word_to_lreal*/
       
 10321     break;
       
 10322 
       
 10323 /****
       
 10324  *WORD_TO_TIME
       
 10325  */
       
 10326     case function_word_to_time :
       
 10327     {
       
 10328         symbol_c *last_type_symbol = NULL;
       
 10329 
       
 10330         {
       
 10331             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10332             symbol_c *IN_param_value = &this->default_variable_name;
       
 10333         
       
 10334             symbol_c *IN_type_symbol = param_data_type;
       
 10335             last_type_symbol = param_data_type;
       
 10336             
       
 10337             if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
       
 10338             {
       
 10339         
       
 10340                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
       
 10341                 s4o.print("(");
       
 10342                 return_type_symbol->accept(*this);
       
 10343                 s4o.print(")__int_to_time(");
       
 10344                 IN_param_value->accept(*this);
       
 10345                 s4o.print(")");
       
 10346                 return NULL;
       
 10347                 
       
 10348             }
       
 10349             
       
 10350             ERROR;
       
 10351         }
       
 10352         
       
 10353     }/*function_word_to_time*/
       
 10354     break;
       
 10355 
       
 10356 /****
       
 10357  *WORD_TO_DATE
       
 10358  */
       
 10359     case function_word_to_date :
       
 10360     {
       
 10361         symbol_c *last_type_symbol = NULL;
       
 10362 
       
 10363         {
       
 10364             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10365             symbol_c *IN_param_value = &this->default_variable_name;
       
 10366         
       
 10367             symbol_c *IN_type_symbol = param_data_type;
       
 10368             last_type_symbol = param_data_type;
       
 10369             
       
 10370             if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
       
 10371             {
       
 10372         
       
 10373                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
       
 10374                 s4o.print("(");
       
 10375                 return_type_symbol->accept(*this);
       
 10376                 s4o.print(")__int_to_time(");
       
 10377                 IN_param_value->accept(*this);
       
 10378                 s4o.print(")");
       
 10379                 return NULL;
       
 10380                 
       
 10381             }
       
 10382             
       
 10383             ERROR;
       
 10384         }
       
 10385         
       
 10386     }/*function_word_to_date*/
       
 10387     break;
       
 10388 
       
 10389 /****
       
 10390  *WORD_TO_TOD
       
 10391  */
       
 10392     case function_word_to_tod :
       
 10393     {
       
 10394         symbol_c *last_type_symbol = NULL;
       
 10395 
       
 10396         {
       
 10397             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10398             symbol_c *IN_param_value = &this->default_variable_name;
       
 10399         
       
 10400             symbol_c *IN_type_symbol = param_data_type;
       
 10401             last_type_symbol = param_data_type;
       
 10402             
       
 10403             if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
       
 10404             {
       
 10405         
       
 10406                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
       
 10407                 s4o.print("(");
       
 10408                 return_type_symbol->accept(*this);
       
 10409                 s4o.print(")__int_to_time(");
       
 10410                 IN_param_value->accept(*this);
       
 10411                 s4o.print(")");
       
 10412                 return NULL;
       
 10413                 
       
 10414             }
       
 10415             
       
 10416             ERROR;
       
 10417         }
       
 10418         
       
 10419     }/*function_word_to_tod*/
       
 10420     break;
       
 10421 
       
 10422 /****
       
 10423  *WORD_TO_DT
       
 10424  */
       
 10425     case function_word_to_dt :
       
 10426     {
       
 10427         symbol_c *last_type_symbol = NULL;
       
 10428 
       
 10429         {
       
 10430             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10431             symbol_c *IN_param_value = &this->default_variable_name;
       
 10432         
       
 10433             symbol_c *IN_type_symbol = param_data_type;
       
 10434             last_type_symbol = param_data_type;
       
 10435             
       
 10436             if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
       
 10437             {
       
 10438         
       
 10439                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
       
 10440                 s4o.print("(");
       
 10441                 return_type_symbol->accept(*this);
       
 10442                 s4o.print(")__int_to_time(");
       
 10443                 IN_param_value->accept(*this);
       
 10444                 s4o.print(")");
       
 10445                 return NULL;
       
 10446                 
       
 10447             }
       
 10448             
       
 10449             ERROR;
       
 10450         }
       
 10451         
       
 10452     }/*function_word_to_dt*/
       
 10453     break;
       
 10454 
       
 10455 /****
       
 10456  *WORD_TO_STRING
       
 10457  */
       
 10458     case function_word_to_string :
       
 10459     {
       
 10460         symbol_c *last_type_symbol = NULL;
       
 10461 
       
 10462         {
       
 10463             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10464             symbol_c *IN_param_value = &this->default_variable_name;
       
 10465         
       
 10466             symbol_c *IN_type_symbol = param_data_type;
       
 10467             last_type_symbol = param_data_type;
       
 10468             
       
 10469             if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
       
 10470             {
       
 10471         
       
 10472                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
       
 10473                 s4o.print("(");
       
 10474                 return_type_symbol->accept(*this);
       
 10475                 s4o.print(")__bit_to_string(");
       
 10476                 IN_param_value->accept(*this);
       
 10477                 s4o.print(")");
       
 10478                 return NULL;
       
 10479                 
       
 10480             }
       
 10481             
       
 10482             ERROR;
       
 10483         }
       
 10484         
       
 10485     }/*function_word_to_string*/
       
 10486     break;
       
 10487 
       
 10488 /****
       
 10489  *WORD_TO_BYTE
       
 10490  */
       
 10491     case function_word_to_byte :
       
 10492     {
       
 10493         symbol_c *last_type_symbol = NULL;
       
 10494 
       
 10495         {
       
 10496             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10497             symbol_c *IN_param_value = &this->default_variable_name;
       
 10498         
       
 10499             symbol_c *IN_type_symbol = param_data_type;
       
 10500             last_type_symbol = param_data_type;
       
 10501             
       
 10502             if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
  7162             {
 10503             {
  7163         
 10504         
  7164                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
 10505                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
  7165                 s4o.print("(");
 10506                 s4o.print("(");
  7166                 return_type_symbol->accept(*this);
 10507                 return_type_symbol->accept(*this);
  7167                 s4o.print(")__time_to_int(");
 10508                 s4o.print(")");
  7168                 IN_param_value->accept(*this);
 10509                 IN_param_value->accept(*this);
  7169                 s4o.print(")");
 10510                 return NULL;
  7170                 return NULL;
 10511                 
  7171                 
 10512             }
  7172             }
 10513             
  7173             
 10514             ERROR;
  7174             ERROR;
 10515         }
  7175         }
 10516         
  7176         
 10517     }/*function_word_to_byte*/
  7177     }/*function_time_to_byte*/
 10518     break;
  7178     break;
 10519 
  7179 
 10520 /****
  7180 /****
 10521  *WORD_TO_DWORD
  7181  *TIME_TO_WORD
 10522  */
  7182  */
 10523     case function_word_to_dword :
  7183     case function_time_to_word :
 10524     {
  7184     {
 10525         symbol_c *last_type_symbol = NULL;
  7185         symbol_c *last_type_symbol = NULL;
 10526 
  7186 
 10527         {
  7187         {
 10528             /* Get the value from a foo(<param_name> = <param_value>) style call */
  7188             /* Get the value from a foo(<param_name> = <param_value>) style call */
 10529             symbol_c *IN_param_value = &this->default_variable_name;
  7189             symbol_c *IN_param_value = &this->default_variable_name;
 10530         
  7190         
 10531             symbol_c *IN_type_symbol = param_data_type;
  7191             symbol_c *IN_type_symbol = param_data_type;
 10532             last_type_symbol = param_data_type;
  7192             last_type_symbol = param_data_type;
 10533             
  7193             
 10534             if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
  7194             if (typeid(*last_type_symbol) == typeid(time_type_name_c))
 10535             {
       
 10536         
       
 10537                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
       
 10538                 s4o.print("(");
       
 10539                 return_type_symbol->accept(*this);
       
 10540                 s4o.print(")");
       
 10541                 IN_param_value->accept(*this);
       
 10542                 return NULL;
       
 10543                 
       
 10544             }
       
 10545             
       
 10546             ERROR;
       
 10547         }
       
 10548         
       
 10549     }/*function_word_to_dword*/
       
 10550     break;
       
 10551 
       
 10552 /****
       
 10553  *WORD_TO_LWORD
       
 10554  */
       
 10555     case function_word_to_lword :
       
 10556     {
       
 10557         symbol_c *last_type_symbol = NULL;
       
 10558 
       
 10559         {
       
 10560             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10561             symbol_c *IN_param_value = &this->default_variable_name;
       
 10562         
       
 10563             symbol_c *IN_type_symbol = param_data_type;
       
 10564             last_type_symbol = param_data_type;
       
 10565             
       
 10566             if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
       
 10567             {
       
 10568         
       
 10569                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
       
 10570                 s4o.print("(");
       
 10571                 return_type_symbol->accept(*this);
       
 10572                 s4o.print(")");
       
 10573                 IN_param_value->accept(*this);
       
 10574                 return NULL;
       
 10575                 
       
 10576             }
       
 10577             
       
 10578             ERROR;
       
 10579         }
       
 10580         
       
 10581     }/*function_word_to_lword*/
       
 10582     break;
       
 10583 
       
 10584 /****
       
 10585  *DWORD_TO_BOOL
       
 10586  */
       
 10587     case function_dword_to_bool :
       
 10588     {
       
 10589         symbol_c *last_type_symbol = NULL;
       
 10590 
       
 10591         {
       
 10592             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10593             symbol_c *IN_param_value = &this->default_variable_name;
       
 10594         
       
 10595             symbol_c *IN_type_symbol = param_data_type;
       
 10596             last_type_symbol = param_data_type;
       
 10597             
       
 10598             if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
       
 10599             {
       
 10600         
       
 10601                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
       
 10602                 s4o.print("(");
       
 10603                 return_type_symbol->accept(*this);
       
 10604                 s4o.print(")");
       
 10605                 IN_param_value->accept(*this);
       
 10606                 return NULL;
       
 10607                 
       
 10608             }
       
 10609             
       
 10610             ERROR;
       
 10611         }
       
 10612         
       
 10613     }/*function_dword_to_bool*/
       
 10614     break;
       
 10615 
       
 10616 /****
       
 10617  *DWORD_TO_SINT
       
 10618  */
       
 10619     case function_dword_to_sint :
       
 10620     {
       
 10621         symbol_c *last_type_symbol = NULL;
       
 10622 
       
 10623         {
       
 10624             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10625             symbol_c *IN_param_value = &this->default_variable_name;
       
 10626         
       
 10627             symbol_c *IN_type_symbol = param_data_type;
       
 10628             last_type_symbol = param_data_type;
       
 10629             
       
 10630             if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
       
 10631             {
       
 10632         
       
 10633                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
       
 10634                 s4o.print("(");
       
 10635                 return_type_symbol->accept(*this);
       
 10636                 s4o.print(")");
       
 10637                 IN_param_value->accept(*this);
       
 10638                 return NULL;
       
 10639                 
       
 10640             }
       
 10641             
       
 10642             ERROR;
       
 10643         }
       
 10644         
       
 10645     }/*function_dword_to_sint*/
       
 10646     break;
       
 10647 
       
 10648 /****
       
 10649  *DWORD_TO_INT
       
 10650  */
       
 10651     case function_dword_to_int :
       
 10652     {
       
 10653         symbol_c *last_type_symbol = NULL;
       
 10654 
       
 10655         {
       
 10656             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10657             symbol_c *IN_param_value = &this->default_variable_name;
       
 10658         
       
 10659             symbol_c *IN_type_symbol = param_data_type;
       
 10660             last_type_symbol = param_data_type;
       
 10661             
       
 10662             if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
       
 10663             {
       
 10664         
       
 10665                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
       
 10666                 s4o.print("(");
       
 10667                 return_type_symbol->accept(*this);
       
 10668                 s4o.print(")");
       
 10669                 IN_param_value->accept(*this);
       
 10670                 return NULL;
       
 10671                 
       
 10672             }
       
 10673             
       
 10674             ERROR;
       
 10675         }
       
 10676         
       
 10677     }/*function_dword_to_int*/
       
 10678     break;
       
 10679 
       
 10680 /****
       
 10681  *DWORD_TO_DINT
       
 10682  */
       
 10683     case function_dword_to_dint :
       
 10684     {
       
 10685         symbol_c *last_type_symbol = NULL;
       
 10686 
       
 10687         {
       
 10688             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10689             symbol_c *IN_param_value = &this->default_variable_name;
       
 10690         
       
 10691             symbol_c *IN_type_symbol = param_data_type;
       
 10692             last_type_symbol = param_data_type;
       
 10693             
       
 10694             if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
       
 10695             {
       
 10696         
       
 10697                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
       
 10698                 s4o.print("(");
       
 10699                 return_type_symbol->accept(*this);
       
 10700                 s4o.print(")");
       
 10701                 IN_param_value->accept(*this);
       
 10702                 return NULL;
       
 10703                 
       
 10704             }
       
 10705             
       
 10706             ERROR;
       
 10707         }
       
 10708         
       
 10709     }/*function_dword_to_dint*/
       
 10710     break;
       
 10711 
       
 10712 /****
       
 10713  *DWORD_TO_LINT
       
 10714  */
       
 10715     case function_dword_to_lint :
       
 10716     {
       
 10717         symbol_c *last_type_symbol = NULL;
       
 10718 
       
 10719         {
       
 10720             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10721             symbol_c *IN_param_value = &this->default_variable_name;
       
 10722         
       
 10723             symbol_c *IN_type_symbol = param_data_type;
       
 10724             last_type_symbol = param_data_type;
       
 10725             
       
 10726             if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
       
 10727             {
       
 10728         
       
 10729                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
       
 10730                 s4o.print("(");
       
 10731                 return_type_symbol->accept(*this);
       
 10732                 s4o.print(")");
       
 10733                 IN_param_value->accept(*this);
       
 10734                 return NULL;
       
 10735                 
       
 10736             }
       
 10737             
       
 10738             ERROR;
       
 10739         }
       
 10740         
       
 10741     }/*function_dword_to_lint*/
       
 10742     break;
       
 10743 
       
 10744 /****
       
 10745  *DWORD_TO_USINT
       
 10746  */
       
 10747     case function_dword_to_usint :
       
 10748     {
       
 10749         symbol_c *last_type_symbol = NULL;
       
 10750 
       
 10751         {
       
 10752             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10753             symbol_c *IN_param_value = &this->default_variable_name;
       
 10754         
       
 10755             symbol_c *IN_type_symbol = param_data_type;
       
 10756             last_type_symbol = param_data_type;
       
 10757             
       
 10758             if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
       
 10759             {
       
 10760         
       
 10761                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
       
 10762                 s4o.print("(");
       
 10763                 return_type_symbol->accept(*this);
       
 10764                 s4o.print(")");
       
 10765                 IN_param_value->accept(*this);
       
 10766                 return NULL;
       
 10767                 
       
 10768             }
       
 10769             
       
 10770             ERROR;
       
 10771         }
       
 10772         
       
 10773     }/*function_dword_to_usint*/
       
 10774     break;
       
 10775 
       
 10776 /****
       
 10777  *DWORD_TO_UINT
       
 10778  */
       
 10779     case function_dword_to_uint :
       
 10780     {
       
 10781         symbol_c *last_type_symbol = NULL;
       
 10782 
       
 10783         {
       
 10784             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10785             symbol_c *IN_param_value = &this->default_variable_name;
       
 10786         
       
 10787             symbol_c *IN_type_symbol = param_data_type;
       
 10788             last_type_symbol = param_data_type;
       
 10789             
       
 10790             if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
       
 10791             {
       
 10792         
       
 10793                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
       
 10794                 s4o.print("(");
       
 10795                 return_type_symbol->accept(*this);
       
 10796                 s4o.print(")");
       
 10797                 IN_param_value->accept(*this);
       
 10798                 return NULL;
       
 10799                 
       
 10800             }
       
 10801             
       
 10802             ERROR;
       
 10803         }
       
 10804         
       
 10805     }/*function_dword_to_uint*/
       
 10806     break;
       
 10807 
       
 10808 /****
       
 10809  *DWORD_TO_UDINT
       
 10810  */
       
 10811     case function_dword_to_udint :
       
 10812     {
       
 10813         symbol_c *last_type_symbol = NULL;
       
 10814 
       
 10815         {
       
 10816             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10817             symbol_c *IN_param_value = &this->default_variable_name;
       
 10818         
       
 10819             symbol_c *IN_type_symbol = param_data_type;
       
 10820             last_type_symbol = param_data_type;
       
 10821             
       
 10822             if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
       
 10823             {
       
 10824         
       
 10825                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
       
 10826                 s4o.print("(");
       
 10827                 return_type_symbol->accept(*this);
       
 10828                 s4o.print(")");
       
 10829                 IN_param_value->accept(*this);
       
 10830                 return NULL;
       
 10831                 
       
 10832             }
       
 10833             
       
 10834             ERROR;
       
 10835         }
       
 10836         
       
 10837     }/*function_dword_to_udint*/
       
 10838     break;
       
 10839 
       
 10840 /****
       
 10841  *DWORD_TO_ULINT
       
 10842  */
       
 10843     case function_dword_to_ulint :
       
 10844     {
       
 10845         symbol_c *last_type_symbol = NULL;
       
 10846 
       
 10847         {
       
 10848             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10849             symbol_c *IN_param_value = &this->default_variable_name;
       
 10850         
       
 10851             symbol_c *IN_type_symbol = param_data_type;
       
 10852             last_type_symbol = param_data_type;
       
 10853             
       
 10854             if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
       
 10855             {
       
 10856         
       
 10857                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
       
 10858                 s4o.print("(");
       
 10859                 return_type_symbol->accept(*this);
       
 10860                 s4o.print(")");
       
 10861                 IN_param_value->accept(*this);
       
 10862                 return NULL;
       
 10863                 
       
 10864             }
       
 10865             
       
 10866             ERROR;
       
 10867         }
       
 10868         
       
 10869     }/*function_dword_to_ulint*/
       
 10870     break;
       
 10871 
       
 10872 /****
       
 10873  *DWORD_TO_REAL
       
 10874  */
       
 10875     case function_dword_to_real :
       
 10876     {
       
 10877         symbol_c *last_type_symbol = NULL;
       
 10878 
       
 10879         {
       
 10880             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10881             symbol_c *IN_param_value = &this->default_variable_name;
       
 10882         
       
 10883             symbol_c *IN_type_symbol = param_data_type;
       
 10884             last_type_symbol = param_data_type;
       
 10885             
       
 10886             if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
       
 10887             {
       
 10888         
       
 10889                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
       
 10890                 s4o.print("(");
       
 10891                 return_type_symbol->accept(*this);
       
 10892                 s4o.print(")");
       
 10893                 IN_param_value->accept(*this);
       
 10894                 return NULL;
       
 10895                 
       
 10896             }
       
 10897             
       
 10898             ERROR;
       
 10899         }
       
 10900         
       
 10901     }/*function_dword_to_real*/
       
 10902     break;
       
 10903 
       
 10904 /****
       
 10905  *DWORD_TO_LREAL
       
 10906  */
       
 10907     case function_dword_to_lreal :
       
 10908     {
       
 10909         symbol_c *last_type_symbol = NULL;
       
 10910 
       
 10911         {
       
 10912             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10913             symbol_c *IN_param_value = &this->default_variable_name;
       
 10914         
       
 10915             symbol_c *IN_type_symbol = param_data_type;
       
 10916             last_type_symbol = param_data_type;
       
 10917             
       
 10918             if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
       
 10919             {
       
 10920         
       
 10921                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
       
 10922                 s4o.print("(");
       
 10923                 return_type_symbol->accept(*this);
       
 10924                 s4o.print(")");
       
 10925                 IN_param_value->accept(*this);
       
 10926                 return NULL;
       
 10927                 
       
 10928             }
       
 10929             
       
 10930             ERROR;
       
 10931         }
       
 10932         
       
 10933     }/*function_dword_to_lreal*/
       
 10934     break;
       
 10935 
       
 10936 /****
       
 10937  *DWORD_TO_TIME
       
 10938  */
       
 10939     case function_dword_to_time :
       
 10940     {
       
 10941         symbol_c *last_type_symbol = NULL;
       
 10942 
       
 10943         {
       
 10944             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10945             symbol_c *IN_param_value = &this->default_variable_name;
       
 10946         
       
 10947             symbol_c *IN_type_symbol = param_data_type;
       
 10948             last_type_symbol = param_data_type;
       
 10949             
       
 10950             if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
       
 10951             {
       
 10952         
       
 10953                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
       
 10954                 s4o.print("(");
       
 10955                 return_type_symbol->accept(*this);
       
 10956                 s4o.print(")__int_to_time(");
       
 10957                 IN_param_value->accept(*this);
       
 10958                 s4o.print(")");
       
 10959                 return NULL;
       
 10960                 
       
 10961             }
       
 10962             
       
 10963             ERROR;
       
 10964         }
       
 10965         
       
 10966     }/*function_dword_to_time*/
       
 10967     break;
       
 10968 
       
 10969 /****
       
 10970  *DWORD_TO_DATE
       
 10971  */
       
 10972     case function_dword_to_date :
       
 10973     {
       
 10974         symbol_c *last_type_symbol = NULL;
       
 10975 
       
 10976         {
       
 10977             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10978             symbol_c *IN_param_value = &this->default_variable_name;
       
 10979         
       
 10980             symbol_c *IN_type_symbol = param_data_type;
       
 10981             last_type_symbol = param_data_type;
       
 10982             
       
 10983             if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
       
 10984             {
       
 10985         
       
 10986                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
       
 10987                 s4o.print("(");
       
 10988                 return_type_symbol->accept(*this);
       
 10989                 s4o.print(")__int_to_time(");
       
 10990                 IN_param_value->accept(*this);
       
 10991                 s4o.print(")");
       
 10992                 return NULL;
       
 10993                 
       
 10994             }
       
 10995             
       
 10996             ERROR;
       
 10997         }
       
 10998         
       
 10999     }/*function_dword_to_date*/
       
 11000     break;
       
 11001 
       
 11002 /****
       
 11003  *DWORD_TO_TOD
       
 11004  */
       
 11005     case function_dword_to_tod :
       
 11006     {
       
 11007         symbol_c *last_type_symbol = NULL;
       
 11008 
       
 11009         {
       
 11010             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 11011             symbol_c *IN_param_value = &this->default_variable_name;
       
 11012         
       
 11013             symbol_c *IN_type_symbol = param_data_type;
       
 11014             last_type_symbol = param_data_type;
       
 11015             
       
 11016             if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
       
 11017             {
       
 11018         
       
 11019                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
       
 11020                 s4o.print("(");
       
 11021                 return_type_symbol->accept(*this);
       
 11022                 s4o.print(")__int_to_time(");
       
 11023                 IN_param_value->accept(*this);
       
 11024                 s4o.print(")");
       
 11025                 return NULL;
       
 11026                 
       
 11027             }
       
 11028             
       
 11029             ERROR;
       
 11030         }
       
 11031         
       
 11032     }/*function_dword_to_tod*/
       
 11033     break;
       
 11034 
       
 11035 /****
       
 11036  *DWORD_TO_DT
       
 11037  */
       
 11038     case function_dword_to_dt :
       
 11039     {
       
 11040         symbol_c *last_type_symbol = NULL;
       
 11041 
       
 11042         {
       
 11043             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 11044             symbol_c *IN_param_value = &this->default_variable_name;
       
 11045         
       
 11046             symbol_c *IN_type_symbol = param_data_type;
       
 11047             last_type_symbol = param_data_type;
       
 11048             
       
 11049             if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
       
 11050             {
       
 11051         
       
 11052                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
       
 11053                 s4o.print("(");
       
 11054                 return_type_symbol->accept(*this);
       
 11055                 s4o.print(")__int_to_time(");
       
 11056                 IN_param_value->accept(*this);
       
 11057                 s4o.print(")");
       
 11058                 return NULL;
       
 11059                 
       
 11060             }
       
 11061             
       
 11062             ERROR;
       
 11063         }
       
 11064         
       
 11065     }/*function_dword_to_dt*/
       
 11066     break;
       
 11067 
       
 11068 /****
       
 11069  *DWORD_TO_STRING
       
 11070  */
       
 11071     case function_dword_to_string :
       
 11072     {
       
 11073         symbol_c *last_type_symbol = NULL;
       
 11074 
       
 11075         {
       
 11076             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 11077             symbol_c *IN_param_value = &this->default_variable_name;
       
 11078         
       
 11079             symbol_c *IN_type_symbol = param_data_type;
       
 11080             last_type_symbol = param_data_type;
       
 11081             
       
 11082             if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
       
 11083             {
       
 11084         
       
 11085                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
       
 11086                 s4o.print("(");
       
 11087                 return_type_symbol->accept(*this);
       
 11088                 s4o.print(")__bit_to_string(");
       
 11089                 IN_param_value->accept(*this);
       
 11090                 s4o.print(")");
       
 11091                 return NULL;
       
 11092                 
       
 11093             }
       
 11094             
       
 11095             ERROR;
       
 11096         }
       
 11097         
       
 11098     }/*function_dword_to_string*/
       
 11099     break;
       
 11100 
       
 11101 /****
       
 11102  *DWORD_TO_BYTE
       
 11103  */
       
 11104     case function_dword_to_byte :
       
 11105     {
       
 11106         symbol_c *last_type_symbol = NULL;
       
 11107 
       
 11108         {
       
 11109             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 11110             symbol_c *IN_param_value = &this->default_variable_name;
       
 11111         
       
 11112             symbol_c *IN_type_symbol = param_data_type;
       
 11113             last_type_symbol = param_data_type;
       
 11114             
       
 11115             if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
       
 11116             {
       
 11117         
       
 11118                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
       
 11119                 s4o.print("(");
       
 11120                 return_type_symbol->accept(*this);
       
 11121                 s4o.print(")");
       
 11122                 IN_param_value->accept(*this);
       
 11123                 return NULL;
       
 11124                 
       
 11125             }
       
 11126             
       
 11127             ERROR;
       
 11128         }
       
 11129         
       
 11130     }/*function_dword_to_byte*/
       
 11131     break;
       
 11132 
       
 11133 /****
       
 11134  *DWORD_TO_WORD
       
 11135  */
       
 11136     case function_dword_to_word :
       
 11137     {
       
 11138         symbol_c *last_type_symbol = NULL;
       
 11139 
       
 11140         {
       
 11141             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 11142             symbol_c *IN_param_value = &this->default_variable_name;
       
 11143         
       
 11144             symbol_c *IN_type_symbol = param_data_type;
       
 11145             last_type_symbol = param_data_type;
       
 11146             
       
 11147             if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
  7195             {
 11148             {
  7196         
 11149         
  7197                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
 11150                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
  7198                 s4o.print("(");
 11151                 s4o.print("(");
  7199                 return_type_symbol->accept(*this);
 11152                 return_type_symbol->accept(*this);
  7200                 s4o.print(")__time_to_int(");
 11153                 s4o.print(")");
  7201                 IN_param_value->accept(*this);
 11154                 IN_param_value->accept(*this);
  7202                 s4o.print(")");
 11155                 return NULL;
  7203                 return NULL;
 11156                 
  7204                 
 11157             }
  7205             }
 11158             
  7206             
 11159             ERROR;
  7207             ERROR;
 11160         }
  7208         }
 11161         
  7209         
 11162     }/*function_dword_to_word*/
  7210     }/*function_time_to_word*/
 11163     break;
  7211     break;
 11164 
  7212 
 11165 /****
  7213 /****
 11166  *DWORD_TO_LWORD
  7214  *TIME_TO_DWORD
 11167  */
  7215  */
 11168     case function_dword_to_lword :
  7216     case function_time_to_dword :
 11169     {
  7217     {
 11170         symbol_c *last_type_symbol = NULL;
  7218         symbol_c *last_type_symbol = NULL;
 11171 
  7219 
 11172         {
  7220         {
 11173             /* Get the value from a foo(<param_name> = <param_value>) style call */
  7221             /* Get the value from a foo(<param_name> = <param_value>) style call */
 11174             symbol_c *IN_param_value = &this->default_variable_name;
  7222             symbol_c *IN_param_value = &this->default_variable_name;
 11175         
  7223         
 11176             symbol_c *IN_type_symbol = param_data_type;
  7224             symbol_c *IN_type_symbol = param_data_type;
 11177             last_type_symbol = param_data_type;
  7225             last_type_symbol = param_data_type;
 11178             
  7226             
 11179             if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
  7227             if (typeid(*last_type_symbol) == typeid(time_type_name_c))
       
  7228             {
       
  7229         
       
  7230                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
       
  7231                 s4o.print("(");
       
  7232                 return_type_symbol->accept(*this);
       
  7233                 s4o.print(")__time_to_int(");
       
  7234                 IN_param_value->accept(*this);
       
  7235                 s4o.print(")");
       
  7236                 return NULL;
       
  7237                 
       
  7238             }
       
  7239             
       
  7240             ERROR;
       
  7241         }
       
  7242         
       
  7243     }/*function_time_to_dword*/
       
  7244     break;
       
  7245 
       
  7246 /****
       
  7247  *TIME_TO_LWORD
       
  7248  */
       
  7249     case function_time_to_lword :
       
  7250     {
       
  7251         symbol_c *last_type_symbol = NULL;
       
  7252 
       
  7253         {
       
  7254             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  7255             symbol_c *IN_param_value = &this->default_variable_name;
       
  7256         
       
  7257             symbol_c *IN_type_symbol = param_data_type;
       
  7258             last_type_symbol = param_data_type;
       
  7259             
       
  7260             if (typeid(*last_type_symbol) == typeid(time_type_name_c))
       
  7261             {
 11180             {
  7262         
 11181         
  7263                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
 11182                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
  7264                 s4o.print("(");
 11183                 s4o.print("(");
  7265                 return_type_symbol->accept(*this);
 11184                 return_type_symbol->accept(*this);
  7266                 s4o.print(")__time_to_int(");
 11185                 s4o.print(")");
  7267                 IN_param_value->accept(*this);
 11186                 IN_param_value->accept(*this);
  7268                 s4o.print(")");
 11187                 return NULL;
  7269                 return NULL;
 11188                 
  7270                 
 11189             }
  7271             }
 11190             
  7272             
 11191             ERROR;
  7273             ERROR;
 11192         }
  7274         }
 11193         
  7275         
 11194     }/*function_dword_to_lword*/
  7276     }/*function_time_to_lword*/
 11195     break;
  7277     break;
 11196 
  7278 
 11197 /****
  7279 /****
 11198  *LWORD_TO_BOOL
  7280  *DATE_TO_BOOL
 11199  */
  7281  */
 11200     case function_lword_to_bool :
  7282     case function_date_to_bool :
 11201     {
  7283     {
 11202         symbol_c *last_type_symbol = NULL;
  7284         symbol_c *last_type_symbol = NULL;
 11203 
  7285 
 11204         {
  7286         {
 11205             /* Get the value from a foo(<param_name> = <param_value>) style call */
  7287             /* Get the value from a foo(<param_name> = <param_value>) style call */
 11206             symbol_c *IN_param_value = &this->default_variable_name;
  7288             symbol_c *IN_param_value = &this->default_variable_name;
 11207         
  7289         
 11208             symbol_c *IN_type_symbol = param_data_type;
  7290             symbol_c *IN_type_symbol = param_data_type;
 11209             last_type_symbol = param_data_type;
  7291             last_type_symbol = param_data_type;
 11210             
  7292             
 11211             if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
  7293             if (typeid(*last_type_symbol) == typeid(date_type_name_c))
       
  7294             {
 11212             {
  7295         
 11213         
  7296                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
 11214                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
  7297                 s4o.print("(");
 11215                 s4o.print("(");
  7298                 return_type_symbol->accept(*this);
 11216                 return_type_symbol->accept(*this);
  7299                 s4o.print(")__time_to_int(");
 11217                 s4o.print(")");
  7300                 IN_param_value->accept(*this);
 11218                 IN_param_value->accept(*this);
  7301                 s4o.print(")");
 11219                 return NULL;
  7302                 return NULL;
 11220                 
  7303                 
 11221             }
  7304             }
 11222             
  7305             
 11223             ERROR;
  7306             ERROR;
 11224         }
  7307         }
 11225         
  7308         
 11226     }/*function_lword_to_bool*/
  7309     }/*function_date_to_bool*/
 11227     break;
  7310     break;
 11228 
  7311 
 11229 /****
  7312 /****
 11230  *LWORD_TO_SINT
  7313  *DATE_TO_SINT
 11231  */
  7314  */
 11232     case function_lword_to_sint :
  7315     case function_date_to_sint :
 11233     {
  7316     {
 11234         symbol_c *last_type_symbol = NULL;
  7317         symbol_c *last_type_symbol = NULL;
 11235 
  7318 
 11236         {
  7319         {
 11237             /* Get the value from a foo(<param_name> = <param_value>) style call */
  7320             /* Get the value from a foo(<param_name> = <param_value>) style call */
 11238             symbol_c *IN_param_value = &this->default_variable_name;
  7321             symbol_c *IN_param_value = &this->default_variable_name;
 11239         
  7322         
 11240             symbol_c *IN_type_symbol = param_data_type;
  7323             symbol_c *IN_type_symbol = param_data_type;
 11241             last_type_symbol = param_data_type;
  7324             last_type_symbol = param_data_type;
 11242             
  7325             
 11243             if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
  7326             if (typeid(*last_type_symbol) == typeid(date_type_name_c))
       
  7327             {
 11244             {
  7328         
 11245         
  7329                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
 11246                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
  7330                 s4o.print("(");
 11247                 s4o.print("(");
  7331                 return_type_symbol->accept(*this);
 11248                 return_type_symbol->accept(*this);
  7332                 s4o.print(")__time_to_int(");
 11249                 s4o.print(")");
  7333                 IN_param_value->accept(*this);
 11250                 IN_param_value->accept(*this);
  7334                 s4o.print(")");
 11251                 return NULL;
  7335                 return NULL;
 11252                 
  7336                 
 11253             }
  7337             }
 11254             
  7338             
 11255             ERROR;
  7339             ERROR;
 11256         }
  7340         }
 11257         
  7341         
 11258     }/*function_lword_to_sint*/
  7342     }/*function_date_to_sint*/
 11259     break;
  7343     break;
 11260 
  7344 
 11261 /****
  7345 /****
 11262  *LWORD_TO_INT
  7346  *DATE_TO_INT
 11263  */
  7347  */
 11264     case function_lword_to_int :
  7348     case function_date_to_int :
 11265     {
  7349     {
 11266         symbol_c *last_type_symbol = NULL;
  7350         symbol_c *last_type_symbol = NULL;
 11267 
  7351 
 11268         {
  7352         {
 11269             /* Get the value from a foo(<param_name> = <param_value>) style call */
  7353             /* Get the value from a foo(<param_name> = <param_value>) style call */
 11270             symbol_c *IN_param_value = &this->default_variable_name;
  7354             symbol_c *IN_param_value = &this->default_variable_name;
 11271         
  7355         
 11272             symbol_c *IN_type_symbol = param_data_type;
  7356             symbol_c *IN_type_symbol = param_data_type;
 11273             last_type_symbol = param_data_type;
  7357             last_type_symbol = param_data_type;
 11274             
  7358             
 11275             if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
  7359             if (typeid(*last_type_symbol) == typeid(date_type_name_c))
       
  7360             {
 11276             {
  7361         
 11277         
  7362                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
 11278                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
  7363                 s4o.print("(");
 11279                 s4o.print("(");
  7364                 return_type_symbol->accept(*this);
 11280                 return_type_symbol->accept(*this);
  7365                 s4o.print(")__time_to_int(");
 11281                 s4o.print(")");
  7366                 IN_param_value->accept(*this);
 11282                 IN_param_value->accept(*this);
  7367                 s4o.print(")");
 11283                 return NULL;
  7368                 return NULL;
 11284                 
  7369                 
 11285             }
  7370             }
 11286             
  7371             
 11287             ERROR;
  7372             ERROR;
 11288         }
  7373         }
 11289         
  7374         
 11290     }/*function_lword_to_int*/
  7375     }/*function_date_to_int*/
 11291     break;
  7376     break;
 11292 
  7377 
 11293 /****
  7378 /****
 11294  *LWORD_TO_DINT
  7379  *DATE_TO_DINT
 11295  */
  7380  */
 11296     case function_lword_to_dint :
  7381     case function_date_to_dint :
 11297     {
  7382     {
 11298         symbol_c *last_type_symbol = NULL;
  7383         symbol_c *last_type_symbol = NULL;
 11299 
  7384 
 11300         {
  7385         {
 11301             /* Get the value from a foo(<param_name> = <param_value>) style call */
  7386             /* Get the value from a foo(<param_name> = <param_value>) style call */
 11302             symbol_c *IN_param_value = &this->default_variable_name;
  7387             symbol_c *IN_param_value = &this->default_variable_name;
 11303         
  7388         
 11304             symbol_c *IN_type_symbol = param_data_type;
  7389             symbol_c *IN_type_symbol = param_data_type;
 11305             last_type_symbol = param_data_type;
  7390             last_type_symbol = param_data_type;
 11306             
  7391             
 11307             if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
  7392             if (typeid(*last_type_symbol) == typeid(date_type_name_c))
       
  7393             {
 11308             {
  7394         
 11309         
  7395                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
 11310                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
  7396                 s4o.print("(");
 11311                 s4o.print("(");
  7397                 return_type_symbol->accept(*this);
 11312                 return_type_symbol->accept(*this);
  7398                 s4o.print(")__time_to_int(");
 11313                 s4o.print(")");
  7399                 IN_param_value->accept(*this);
 11314                 IN_param_value->accept(*this);
  7400                 s4o.print(")");
 11315                 return NULL;
  7401                 return NULL;
 11316                 
  7402                 
 11317             }
  7403             }
 11318             
  7404             
 11319             ERROR;
  7405             ERROR;
 11320         }
  7406         }
 11321         
  7407         
 11322     }/*function_lword_to_dint*/
  7408     }/*function_date_to_dint*/
 11323     break;
  7409     break;
 11324 
  7410 
 11325 /****
  7411 /****
 11326  *LWORD_TO_LINT
  7412  *DATE_TO_LINT
 11327  */
  7413  */
 11328     case function_lword_to_lint :
  7414     case function_date_to_lint :
 11329     {
  7415     {
 11330         symbol_c *last_type_symbol = NULL;
  7416         symbol_c *last_type_symbol = NULL;
 11331 
  7417 
 11332         {
  7418         {
 11333             /* Get the value from a foo(<param_name> = <param_value>) style call */
  7419             /* Get the value from a foo(<param_name> = <param_value>) style call */
 11334             symbol_c *IN_param_value = &this->default_variable_name;
  7420             symbol_c *IN_param_value = &this->default_variable_name;
 11335         
  7421         
 11336             symbol_c *IN_type_symbol = param_data_type;
  7422             symbol_c *IN_type_symbol = param_data_type;
 11337             last_type_symbol = param_data_type;
  7423             last_type_symbol = param_data_type;
 11338             
  7424             
 11339             if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
  7425             if (typeid(*last_type_symbol) == typeid(date_type_name_c))
       
  7426             {
 11340             {
  7427         
 11341         
  7428                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
 11342                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
  7429                 s4o.print("(");
 11343                 s4o.print("(");
  7430                 return_type_symbol->accept(*this);
 11344                 return_type_symbol->accept(*this);
  7431                 s4o.print(")__time_to_int(");
 11345                 s4o.print(")");
  7432                 IN_param_value->accept(*this);
 11346                 IN_param_value->accept(*this);
  7433                 s4o.print(")");
 11347                 return NULL;
  7434                 return NULL;
 11348                 
  7435                 
 11349             }
  7436             }
 11350             
  7437             
 11351             ERROR;
  7438             ERROR;
 11352         }
  7439         }
 11353         
  7440         
 11354     }/*function_lword_to_lint*/
  7441     }/*function_date_to_lint*/
 11355     break;
  7442     break;
 11356 
  7443 
 11357 /****
  7444 /****
 11358  *LWORD_TO_USINT
  7445  *DATE_TO_USINT
 11359  */
  7446  */
 11360     case function_lword_to_usint :
  7447     case function_date_to_usint :
 11361     {
  7448     {
 11362         symbol_c *last_type_symbol = NULL;
  7449         symbol_c *last_type_symbol = NULL;
 11363 
  7450 
 11364         {
  7451         {
 11365             /* Get the value from a foo(<param_name> = <param_value>) style call */
  7452             /* Get the value from a foo(<param_name> = <param_value>) style call */
 11366             symbol_c *IN_param_value = &this->default_variable_name;
  7453             symbol_c *IN_param_value = &this->default_variable_name;
 11367         
  7454         
 11368             symbol_c *IN_type_symbol = param_data_type;
  7455             symbol_c *IN_type_symbol = param_data_type;
 11369             last_type_symbol = param_data_type;
  7456             last_type_symbol = param_data_type;
 11370             
  7457             
 11371             if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
  7458             if (typeid(*last_type_symbol) == typeid(date_type_name_c))
       
  7459             {
 11372             {
  7460         
 11373         
  7461                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
 11374                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
  7462                 s4o.print("(");
 11375                 s4o.print("(");
  7463                 return_type_symbol->accept(*this);
 11376                 return_type_symbol->accept(*this);
  7464                 s4o.print(")__time_to_int(");
 11377                 s4o.print(")");
  7465                 IN_param_value->accept(*this);
 11378                 IN_param_value->accept(*this);
  7466                 s4o.print(")");
 11379                 return NULL;
  7467                 return NULL;
 11380                 
  7468                 
 11381             }
  7469             }
 11382             
  7470             
 11383             ERROR;
  7471             ERROR;
 11384         }
  7472         }
 11385         
  7473         
 11386     }/*function_lword_to_usint*/
  7474     }/*function_date_to_usint*/
 11387     break;
  7475     break;
 11388 
  7476 
 11389 /****
  7477 /****
 11390  *LWORD_TO_UINT
  7478  *DATE_TO_UINT
 11391  */
  7479  */
 11392     case function_lword_to_uint :
  7480     case function_date_to_uint :
 11393     {
  7481     {
 11394         symbol_c *last_type_symbol = NULL;
  7482         symbol_c *last_type_symbol = NULL;
 11395 
  7483 
 11396         {
  7484         {
 11397             /* Get the value from a foo(<param_name> = <param_value>) style call */
  7485             /* Get the value from a foo(<param_name> = <param_value>) style call */
 11398             symbol_c *IN_param_value = &this->default_variable_name;
  7486             symbol_c *IN_param_value = &this->default_variable_name;
 11399         
  7487         
 11400             symbol_c *IN_type_symbol = param_data_type;
  7488             symbol_c *IN_type_symbol = param_data_type;
 11401             last_type_symbol = param_data_type;
  7489             last_type_symbol = param_data_type;
 11402             
  7490             
 11403             if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
  7491             if (typeid(*last_type_symbol) == typeid(date_type_name_c))
       
  7492             {
 11404             {
  7493         
 11405         
  7494                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
 11406                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
  7495                 s4o.print("(");
 11407                 s4o.print("(");
  7496                 return_type_symbol->accept(*this);
 11408                 return_type_symbol->accept(*this);
  7497                 s4o.print(")__time_to_int(");
 11409                 s4o.print(")");
  7498                 IN_param_value->accept(*this);
 11410                 IN_param_value->accept(*this);
  7499                 s4o.print(")");
 11411                 return NULL;
  7500                 return NULL;
 11412                 
  7501                 
 11413             }
  7502             }
 11414             
  7503             
 11415             ERROR;
  7504             ERROR;
 11416         }
  7505         }
 11417         
  7506         
 11418     }/*function_lword_to_uint*/
  7507     }/*function_date_to_uint*/
 11419     break;
  7508     break;
 11420 
  7509 
 11421 /****
  7510 /****
 11422  *LWORD_TO_UDINT
  7511  *DATE_TO_UDINT
 11423  */
  7512  */
 11424     case function_lword_to_udint :
  7513     case function_date_to_udint :
 11425     {
  7514     {
 11426         symbol_c *last_type_symbol = NULL;
  7515         symbol_c *last_type_symbol = NULL;
 11427 
  7516 
 11428         {
  7517         {
 11429             /* Get the value from a foo(<param_name> = <param_value>) style call */
  7518             /* Get the value from a foo(<param_name> = <param_value>) style call */
 11430             symbol_c *IN_param_value = &this->default_variable_name;
  7519             symbol_c *IN_param_value = &this->default_variable_name;
 11431         
  7520         
 11432             symbol_c *IN_type_symbol = param_data_type;
  7521             symbol_c *IN_type_symbol = param_data_type;
 11433             last_type_symbol = param_data_type;
  7522             last_type_symbol = param_data_type;
 11434             
  7523             
 11435             if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
  7524             if (typeid(*last_type_symbol) == typeid(date_type_name_c))
       
  7525             {
 11436             {
  7526         
 11437         
  7527                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
 11438                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
  7528                 s4o.print("(");
 11439                 s4o.print("(");
  7529                 return_type_symbol->accept(*this);
 11440                 return_type_symbol->accept(*this);
  7530                 s4o.print(")__time_to_int(");
 11441                 s4o.print(")");
  7531                 IN_param_value->accept(*this);
 11442                 IN_param_value->accept(*this);
  7532                 s4o.print(")");
 11443                 return NULL;
  7533                 return NULL;
 11444                 
  7534                 
 11445             }
  7535             }
 11446             
  7536             
 11447             ERROR;
  7537             ERROR;
 11448         }
  7538         }
 11449         
  7539         
 11450     }/*function_lword_to_udint*/
  7540     }/*function_date_to_udint*/
 11451     break;
  7541     break;
 11452 
  7542 
 11453 /****
  7543 /****
 11454  *LWORD_TO_ULINT
  7544  *DATE_TO_ULINT
 11455  */
  7545  */
 11456     case function_lword_to_ulint :
  7546     case function_date_to_ulint :
 11457     {
  7547     {
 11458         symbol_c *last_type_symbol = NULL;
  7548         symbol_c *last_type_symbol = NULL;
 11459 
  7549 
 11460         {
  7550         {
 11461             /* Get the value from a foo(<param_name> = <param_value>) style call */
  7551             /* Get the value from a foo(<param_name> = <param_value>) style call */
 11462             symbol_c *IN_param_value = &this->default_variable_name;
  7552             symbol_c *IN_param_value = &this->default_variable_name;
 11463         
  7553         
 11464             symbol_c *IN_type_symbol = param_data_type;
  7554             symbol_c *IN_type_symbol = param_data_type;
 11465             last_type_symbol = param_data_type;
  7555             last_type_symbol = param_data_type;
 11466             
  7556             
 11467             if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
  7557             if (typeid(*last_type_symbol) == typeid(date_type_name_c))
       
  7558             {
 11468             {
  7559         
 11469         
  7560                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
 11470                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
  7561                 s4o.print("(");
 11471                 s4o.print("(");
  7562                 return_type_symbol->accept(*this);
 11472                 return_type_symbol->accept(*this);
  7563                 s4o.print(")__time_to_int(");
 11473                 s4o.print(")");
  7564                 IN_param_value->accept(*this);
 11474                 IN_param_value->accept(*this);
  7565                 s4o.print(")");
 11475                 return NULL;
  7566                 return NULL;
 11476                 
  7567                 
 11477             }
  7568             }
 11478             
  7569             
 11479             ERROR;
  7570             ERROR;
 11480         }
  7571         }
 11481         
  7572         
 11482     }/*function_lword_to_ulint*/
  7573     }/*function_date_to_ulint*/
 11483     break;
  7574     break;
 11484 
  7575 
 11485 /****
  7576 /****
 11486  *LWORD_TO_REAL
  7577  *DATE_TO_REAL
 11487  */
  7578  */
 11488     case function_lword_to_real :
  7579     case function_date_to_real :
 11489     {
  7580     {
 11490         symbol_c *last_type_symbol = NULL;
  7581         symbol_c *last_type_symbol = NULL;
 11491 
  7582 
 11492         {
  7583         {
 11493             /* Get the value from a foo(<param_name> = <param_value>) style call */
  7584             /* Get the value from a foo(<param_name> = <param_value>) style call */
 11494             symbol_c *IN_param_value = &this->default_variable_name;
  7585             symbol_c *IN_param_value = &this->default_variable_name;
 11495         
  7586         
 11496             symbol_c *IN_type_symbol = param_data_type;
  7587             symbol_c *IN_type_symbol = param_data_type;
 11497             last_type_symbol = param_data_type;
  7588             last_type_symbol = param_data_type;
 11498             
  7589             
 11499             if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
  7590             if (typeid(*last_type_symbol) == typeid(date_type_name_c))
       
  7591             {
 11500             {
  7592         
 11501         
  7593                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
 11502                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
  7594                 s4o.print("(");
 11503                 s4o.print("(");
  7595                 return_type_symbol->accept(*this);
 11504                 return_type_symbol->accept(*this);
  7596                 s4o.print(")__time_to_real(");
 11505                 s4o.print(")");
  7597                 IN_param_value->accept(*this);
 11506                 IN_param_value->accept(*this);
  7598                 s4o.print(")");
 11507                 return NULL;
  7599                 return NULL;
 11508                 
  7600                 
 11509             }
  7601             }
 11510             
  7602             
 11511             ERROR;
  7603             ERROR;
 11512         }
  7604         }
 11513         
  7605         
 11514     }/*function_lword_to_real*/
  7606     }/*function_date_to_real*/
 11515     break;
  7607     break;
 11516 
  7608 
 11517 /****
  7609 /****
 11518  *LWORD_TO_LREAL
  7610  *DATE_TO_LREAL
 11519  */
  7611  */
 11520     case function_lword_to_lreal :
  7612     case function_date_to_lreal :
 11521     {
  7613     {
 11522         symbol_c *last_type_symbol = NULL;
  7614         symbol_c *last_type_symbol = NULL;
 11523 
  7615 
 11524         {
  7616         {
 11525             /* Get the value from a foo(<param_name> = <param_value>) style call */
  7617             /* Get the value from a foo(<param_name> = <param_value>) style call */
 11526             symbol_c *IN_param_value = &this->default_variable_name;
  7618             symbol_c *IN_param_value = &this->default_variable_name;
 11527         
  7619         
 11528             symbol_c *IN_type_symbol = param_data_type;
  7620             symbol_c *IN_type_symbol = param_data_type;
 11529             last_type_symbol = param_data_type;
  7621             last_type_symbol = param_data_type;
 11530             
  7622             
 11531             if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
  7623             if (typeid(*last_type_symbol) == typeid(date_type_name_c))
       
  7624             {
 11532             {
  7625         
 11533         
  7626                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
 11534                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
  7627                 s4o.print("(");
 11535                 s4o.print("(");
  7628                 return_type_symbol->accept(*this);
 11536                 return_type_symbol->accept(*this);
  7629                 s4o.print(")__time_to_real(");
 11537                 s4o.print(")");
  7630                 IN_param_value->accept(*this);
 11538                 IN_param_value->accept(*this);
  7631                 s4o.print(")");
 11539                 return NULL;
  7632                 return NULL;
 11540                 
  7633                 
 11541             }
  7634             }
 11542             
  7635             
 11543             ERROR;
  7636             ERROR;
 11544         }
  7637         }
 11545         
  7638         
 11546     }/*function_lword_to_lreal*/
  7639     }/*function_date_to_lreal*/
 11547     break;
  7640     break;
 11548 
  7641 
 11549 /****
  7642 /****
 11550  *LWORD_TO_TIME
  7643  *DATE_TO_STRING
 11551  */
  7644  */
 11552     case function_lword_to_time :
  7645     case function_date_to_string :
 11553     {
  7646     {
 11554         symbol_c *last_type_symbol = NULL;
  7647         symbol_c *last_type_symbol = NULL;
 11555 
  7648 
 11556         {
  7649         {
 11557             /* Get the value from a foo(<param_name> = <param_value>) style call */
  7650             /* Get the value from a foo(<param_name> = <param_value>) style call */
 11558             symbol_c *IN_param_value = &this->default_variable_name;
  7651             symbol_c *IN_param_value = &this->default_variable_name;
 11559         
  7652         
 11560             symbol_c *IN_type_symbol = param_data_type;
  7653             symbol_c *IN_type_symbol = param_data_type;
 11561             last_type_symbol = param_data_type;
  7654             last_type_symbol = param_data_type;
 11562             
  7655             
 11563             if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
  7656             if (typeid(*last_type_symbol) == typeid(date_type_name_c))
 11564             {
       
 11565         
       
 11566                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
       
 11567                 s4o.print("(");
       
 11568                 return_type_symbol->accept(*this);
       
 11569                 s4o.print(")__int_to_time(");
       
 11570                 IN_param_value->accept(*this);
       
 11571                 s4o.print(")");
       
 11572                 return NULL;
       
 11573                 
       
 11574             }
       
 11575             
       
 11576             ERROR;
       
 11577         }
       
 11578         
       
 11579     }/*function_lword_to_time*/
       
 11580     break;
       
 11581 
       
 11582 /****
       
 11583  *LWORD_TO_DATE
       
 11584  */
       
 11585     case function_lword_to_date :
       
 11586     {
       
 11587         symbol_c *last_type_symbol = NULL;
       
 11588 
       
 11589         {
       
 11590             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 11591             symbol_c *IN_param_value = &this->default_variable_name;
       
 11592         
       
 11593             symbol_c *IN_type_symbol = param_data_type;
       
 11594             last_type_symbol = param_data_type;
       
 11595             
       
 11596             if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
       
 11597             {
       
 11598         
       
 11599                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
       
 11600                 s4o.print("(");
       
 11601                 return_type_symbol->accept(*this);
       
 11602                 s4o.print(")__int_to_time(");
       
 11603                 IN_param_value->accept(*this);
       
 11604                 s4o.print(")");
       
 11605                 return NULL;
       
 11606                 
       
 11607             }
       
 11608             
       
 11609             ERROR;
       
 11610         }
       
 11611         
       
 11612     }/*function_lword_to_date*/
       
 11613     break;
       
 11614 
       
 11615 /****
       
 11616  *LWORD_TO_TOD
       
 11617  */
       
 11618     case function_lword_to_tod :
       
 11619     {
       
 11620         symbol_c *last_type_symbol = NULL;
       
 11621 
       
 11622         {
       
 11623             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 11624             symbol_c *IN_param_value = &this->default_variable_name;
       
 11625         
       
 11626             symbol_c *IN_type_symbol = param_data_type;
       
 11627             last_type_symbol = param_data_type;
       
 11628             
       
 11629             if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
       
 11630             {
       
 11631         
       
 11632                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
       
 11633                 s4o.print("(");
       
 11634                 return_type_symbol->accept(*this);
       
 11635                 s4o.print(")__int_to_time(");
       
 11636                 IN_param_value->accept(*this);
       
 11637                 s4o.print(")");
       
 11638                 return NULL;
       
 11639                 
       
 11640             }
       
 11641             
       
 11642             ERROR;
       
 11643         }
       
 11644         
       
 11645     }/*function_lword_to_tod*/
       
 11646     break;
       
 11647 
       
 11648 /****
       
 11649  *LWORD_TO_DT
       
 11650  */
       
 11651     case function_lword_to_dt :
       
 11652     {
       
 11653         symbol_c *last_type_symbol = NULL;
       
 11654 
       
 11655         {
       
 11656             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 11657             symbol_c *IN_param_value = &this->default_variable_name;
       
 11658         
       
 11659             symbol_c *IN_type_symbol = param_data_type;
       
 11660             last_type_symbol = param_data_type;
       
 11661             
       
 11662             if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
       
 11663             {
       
 11664         
       
 11665                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
       
 11666                 s4o.print("(");
       
 11667                 return_type_symbol->accept(*this);
       
 11668                 s4o.print(")__int_to_time(");
       
 11669                 IN_param_value->accept(*this);
       
 11670                 s4o.print(")");
       
 11671                 return NULL;
       
 11672                 
       
 11673             }
       
 11674             
       
 11675             ERROR;
       
 11676         }
       
 11677         
       
 11678     }/*function_lword_to_dt*/
       
 11679     break;
       
 11680 
       
 11681 /****
       
 11682  *LWORD_TO_STRING
       
 11683  */
       
 11684     case function_lword_to_string :
       
 11685     {
       
 11686         symbol_c *last_type_symbol = NULL;
       
 11687 
       
 11688         {
       
 11689             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 11690             symbol_c *IN_param_value = &this->default_variable_name;
       
 11691         
       
 11692             symbol_c *IN_type_symbol = param_data_type;
       
 11693             last_type_symbol = param_data_type;
       
 11694             
       
 11695             if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
  7657             {
 11696             {
  7658         
 11697         
  7659                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
 11698                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
  7660                 s4o.print("(");
 11699                 s4o.print("(");
  7661                 return_type_symbol->accept(*this);
 11700                 return_type_symbol->accept(*this);
  7662                 s4o.print(")__date_to_string(");
 11701                 s4o.print(")__bit_to_string(");
  7663                 IN_param_value->accept(*this);
 11702                 IN_param_value->accept(*this);
  7664                 s4o.print(")");
 11703                 s4o.print(")");
  7665                 return NULL;
 11704                 return NULL;
  7666                 
 11705                 
  7667             }
 11706             }
  7668             
 11707             
  7669             ERROR;
 11708             ERROR;
  7670         }
 11709         }
  7671         
 11710         
  7672     }/*function_date_to_string*/
 11711     }/*function_lword_to_string*/
  7673     break;
 11712     break;
  7674 
 11713 
  7675 /****
 11714 /****
  7676  *DATE_TO_BYTE
 11715  *LWORD_TO_BYTE
  7677  */
 11716  */
  7678     case function_date_to_byte :
 11717     case function_lword_to_byte :
  7679     {
 11718     {
  7680         symbol_c *last_type_symbol = NULL;
 11719         symbol_c *last_type_symbol = NULL;
  7681 
 11720 
  7682         {
 11721         {
  7683             /* Get the value from a foo(<param_name> = <param_value>) style call */
 11722             /* Get the value from a foo(<param_name> = <param_value>) style call */
  7684             symbol_c *IN_param_value = &this->default_variable_name;
 11723             symbol_c *IN_param_value = &this->default_variable_name;
  7685         
 11724         
  7686             symbol_c *IN_type_symbol = param_data_type;
 11725             symbol_c *IN_type_symbol = param_data_type;
  7687             last_type_symbol = param_data_type;
 11726             last_type_symbol = param_data_type;
  7688             
 11727             
  7689             if (typeid(*last_type_symbol) == typeid(date_type_name_c))
 11728             if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
  7690             {
 11729             {
  7691         
 11730         
  7692                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
 11731                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
  7693                 s4o.print("(");
 11732                 s4o.print("(");
  7694                 return_type_symbol->accept(*this);
 11733                 return_type_symbol->accept(*this);
  7695                 s4o.print(")__time_to_int(");
 11734                 s4o.print(")");
  7696                 IN_param_value->accept(*this);
 11735                 IN_param_value->accept(*this);
  7697                 s4o.print(")");
 11736                 return NULL;
  7698                 return NULL;
 11737                 
  7699                 
 11738             }
  7700             }
 11739             
  7701             
 11740             ERROR;
  7702             ERROR;
 11741         }
  7703         }
 11742         
  7704         
 11743     }/*function_lword_to_byte*/
  7705     }/*function_date_to_byte*/
 11744     break;
  7706     break;
 11745 
  7707 
 11746 /****
  7708 /****
 11747  *LWORD_TO_WORD
  7709  *DATE_TO_WORD
 11748  */
  7710  */
 11749     case function_lword_to_word :
  7711     case function_date_to_word :
 11750     {
  7712     {
 11751         symbol_c *last_type_symbol = NULL;
  7713         symbol_c *last_type_symbol = NULL;
 11752 
  7714 
 11753         {
  7715         {
 11754             /* Get the value from a foo(<param_name> = <param_value>) style call */
  7716             /* Get the value from a foo(<param_name> = <param_value>) style call */
 11755             symbol_c *IN_param_value = &this->default_variable_name;
  7717             symbol_c *IN_param_value = &this->default_variable_name;
 11756         
  7718         
 11757             symbol_c *IN_type_symbol = param_data_type;
  7719             symbol_c *IN_type_symbol = param_data_type;
 11758             last_type_symbol = param_data_type;
  7720             last_type_symbol = param_data_type;
 11759             
  7721             
 11760             if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
  7722             if (typeid(*last_type_symbol) == typeid(date_type_name_c))
       
  7723             {
 11761             {
  7724         
 11762         
  7725                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
 11763                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
  7726                 s4o.print("(");
 11764                 s4o.print("(");
  7727                 return_type_symbol->accept(*this);
 11765                 return_type_symbol->accept(*this);
  7728                 s4o.print(")__time_to_int(");
       
  7729                 IN_param_value->accept(*this);
       
  7730                 s4o.print(")");
       
  7731                 return NULL;
       
  7732                 
       
  7733             }
       
  7734             
       
  7735             ERROR;
       
  7736         }
       
  7737         
       
  7738     }/*function_date_to_word*/
       
  7739     break;
       
  7740 
       
  7741 /****
       
  7742  *DATE_TO_DWORD
       
  7743  */
       
  7744     case function_date_to_dword :
       
  7745     {
       
  7746         symbol_c *last_type_symbol = NULL;
       
  7747 
       
  7748         {
       
  7749             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  7750             symbol_c *IN_param_value = &this->default_variable_name;
       
  7751         
       
  7752             symbol_c *IN_type_symbol = param_data_type;
       
  7753             last_type_symbol = param_data_type;
       
  7754             
       
  7755             if (typeid(*last_type_symbol) == typeid(date_type_name_c))
       
  7756             {
       
  7757         
       
  7758                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
       
  7759                 s4o.print("(");
       
  7760                 return_type_symbol->accept(*this);
       
  7761                 s4o.print(")__time_to_int(");
       
  7762                 IN_param_value->accept(*this);
       
  7763                 s4o.print(")");
       
  7764                 return NULL;
       
  7765                 
       
  7766             }
       
  7767             
       
  7768             ERROR;
       
  7769         }
       
  7770         
       
  7771     }/*function_date_to_dword*/
       
  7772     break;
       
  7773 
       
  7774 /****
       
  7775  *DATE_TO_LWORD
       
  7776  */
       
  7777     case function_date_to_lword :
       
  7778     {
       
  7779         symbol_c *last_type_symbol = NULL;
       
  7780 
       
  7781         {
       
  7782             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  7783             symbol_c *IN_param_value = &this->default_variable_name;
       
  7784         
       
  7785             symbol_c *IN_type_symbol = param_data_type;
       
  7786             last_type_symbol = param_data_type;
       
  7787             
       
  7788             if (typeid(*last_type_symbol) == typeid(date_type_name_c))
       
  7789             {
       
  7790         
       
  7791                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
       
  7792                 s4o.print("(");
       
  7793                 return_type_symbol->accept(*this);
       
  7794                 s4o.print(")__time_to_int(");
       
  7795                 IN_param_value->accept(*this);
       
  7796                 s4o.print(")");
       
  7797                 return NULL;
       
  7798                 
       
  7799             }
       
  7800             
       
  7801             ERROR;
       
  7802         }
       
  7803         
       
  7804     }/*function_date_to_lword*/
       
  7805     break;
       
  7806 
       
  7807 /****
       
  7808  *TOD_TO_BOOL
       
  7809  */
       
  7810     case function_tod_to_bool :
       
  7811     {
       
  7812         symbol_c *last_type_symbol = NULL;
       
  7813 
       
  7814         {
       
  7815             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  7816             symbol_c *IN_param_value = &this->default_variable_name;
       
  7817         
       
  7818             symbol_c *IN_type_symbol = param_data_type;
       
  7819             last_type_symbol = param_data_type;
       
  7820             
       
  7821             if (typeid(*last_type_symbol) == typeid(tod_type_name_c))
       
  7822             {
       
  7823         
       
  7824                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
       
  7825                 s4o.print("(");
       
  7826                 return_type_symbol->accept(*this);
       
  7827                 s4o.print(")__time_to_int(");
       
  7828                 IN_param_value->accept(*this);
       
  7829                 s4o.print(")");
       
  7830                 return NULL;
       
  7831                 
       
  7832             }
       
  7833             
       
  7834             ERROR;
       
  7835         }
       
  7836         
       
  7837     }/*function_tod_to_bool*/
       
  7838     break;
       
  7839 
       
  7840 /****
       
  7841  *TOD_TO_SINT
       
  7842  */
       
  7843     case function_tod_to_sint :
       
  7844     {
       
  7845         symbol_c *last_type_symbol = NULL;
       
  7846 
       
  7847         {
       
  7848             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  7849             symbol_c *IN_param_value = &this->default_variable_name;
       
  7850         
       
  7851             symbol_c *IN_type_symbol = param_data_type;
       
  7852             last_type_symbol = param_data_type;
       
  7853             
       
  7854             if (typeid(*last_type_symbol) == typeid(tod_type_name_c))
       
  7855             {
       
  7856         
       
  7857                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
       
  7858                 s4o.print("(");
       
  7859                 return_type_symbol->accept(*this);
       
  7860                 s4o.print(")__time_to_int(");
       
  7861                 IN_param_value->accept(*this);
       
  7862                 s4o.print(")");
       
  7863                 return NULL;
       
  7864                 
       
  7865             }
       
  7866             
       
  7867             ERROR;
       
  7868         }
       
  7869         
       
  7870     }/*function_tod_to_sint*/
       
  7871     break;
       
  7872 
       
  7873 /****
       
  7874  *TOD_TO_INT
       
  7875  */
       
  7876     case function_tod_to_int :
       
  7877     {
       
  7878         symbol_c *last_type_symbol = NULL;
       
  7879 
       
  7880         {
       
  7881             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  7882             symbol_c *IN_param_value = &this->default_variable_name;
       
  7883         
       
  7884             symbol_c *IN_type_symbol = param_data_type;
       
  7885             last_type_symbol = param_data_type;
       
  7886             
       
  7887             if (typeid(*last_type_symbol) == typeid(tod_type_name_c))
       
  7888             {
       
  7889         
       
  7890                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
       
  7891                 s4o.print("(");
       
  7892                 return_type_symbol->accept(*this);
       
  7893                 s4o.print(")__time_to_int(");
       
  7894                 IN_param_value->accept(*this);
       
  7895                 s4o.print(")");
       
  7896                 return NULL;
       
  7897                 
       
  7898             }
       
  7899             
       
  7900             ERROR;
       
  7901         }
       
  7902         
       
  7903     }/*function_tod_to_int*/
       
  7904     break;
       
  7905 
       
  7906 /****
       
  7907  *TOD_TO_DINT
       
  7908  */
       
  7909     case function_tod_to_dint :
       
  7910     {
       
  7911         symbol_c *last_type_symbol = NULL;
       
  7912 
       
  7913         {
       
  7914             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  7915             symbol_c *IN_param_value = &this->default_variable_name;
       
  7916         
       
  7917             symbol_c *IN_type_symbol = param_data_type;
       
  7918             last_type_symbol = param_data_type;
       
  7919             
       
  7920             if (typeid(*last_type_symbol) == typeid(tod_type_name_c))
       
  7921             {
       
  7922         
       
  7923                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
       
  7924                 s4o.print("(");
       
  7925                 return_type_symbol->accept(*this);
       
  7926                 s4o.print(")__time_to_int(");
       
  7927                 IN_param_value->accept(*this);
       
  7928                 s4o.print(")");
       
  7929                 return NULL;
       
  7930                 
       
  7931             }
       
  7932             
       
  7933             ERROR;
       
  7934         }
       
  7935         
       
  7936     }/*function_tod_to_dint*/
       
  7937     break;
       
  7938 
       
  7939 /****
       
  7940  *TOD_TO_LINT
       
  7941  */
       
  7942     case function_tod_to_lint :
       
  7943     {
       
  7944         symbol_c *last_type_symbol = NULL;
       
  7945 
       
  7946         {
       
  7947             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  7948             symbol_c *IN_param_value = &this->default_variable_name;
       
  7949         
       
  7950             symbol_c *IN_type_symbol = param_data_type;
       
  7951             last_type_symbol = param_data_type;
       
  7952             
       
  7953             if (typeid(*last_type_symbol) == typeid(tod_type_name_c))
       
  7954             {
       
  7955         
       
  7956                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
       
  7957                 s4o.print("(");
       
  7958                 return_type_symbol->accept(*this);
       
  7959                 s4o.print(")__time_to_int(");
       
  7960                 IN_param_value->accept(*this);
       
  7961                 s4o.print(")");
       
  7962                 return NULL;
       
  7963                 
       
  7964             }
       
  7965             
       
  7966             ERROR;
       
  7967         }
       
  7968         
       
  7969     }/*function_tod_to_lint*/
       
  7970     break;
       
  7971 
       
  7972 /****
       
  7973  *TOD_TO_USINT
       
  7974  */
       
  7975     case function_tod_to_usint :
       
  7976     {
       
  7977         symbol_c *last_type_symbol = NULL;
       
  7978 
       
  7979         {
       
  7980             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  7981             symbol_c *IN_param_value = &this->default_variable_name;
       
  7982         
       
  7983             symbol_c *IN_type_symbol = param_data_type;
       
  7984             last_type_symbol = param_data_type;
       
  7985             
       
  7986             if (typeid(*last_type_symbol) == typeid(tod_type_name_c))
       
  7987             {
       
  7988         
       
  7989                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
       
  7990                 s4o.print("(");
       
  7991                 return_type_symbol->accept(*this);
       
  7992                 s4o.print(")__time_to_int(");
       
  7993                 IN_param_value->accept(*this);
       
  7994                 s4o.print(")");
       
  7995                 return NULL;
       
  7996                 
       
  7997             }
       
  7998             
       
  7999             ERROR;
       
  8000         }
       
  8001         
       
  8002     }/*function_tod_to_usint*/
       
  8003     break;
       
  8004 
       
  8005 /****
       
  8006  *TOD_TO_UINT
       
  8007  */
       
  8008     case function_tod_to_uint :
       
  8009     {
       
  8010         symbol_c *last_type_symbol = NULL;
       
  8011 
       
  8012         {
       
  8013             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  8014             symbol_c *IN_param_value = &this->default_variable_name;
       
  8015         
       
  8016             symbol_c *IN_type_symbol = param_data_type;
       
  8017             last_type_symbol = param_data_type;
       
  8018             
       
  8019             if (typeid(*last_type_symbol) == typeid(tod_type_name_c))
       
  8020             {
       
  8021         
       
  8022                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
       
  8023                 s4o.print("(");
       
  8024                 return_type_symbol->accept(*this);
       
  8025                 s4o.print(")__time_to_int(");
       
  8026                 IN_param_value->accept(*this);
       
  8027                 s4o.print(")");
       
  8028                 return NULL;
       
  8029                 
       
  8030             }
       
  8031             
       
  8032             ERROR;
       
  8033         }
       
  8034         
       
  8035     }/*function_tod_to_uint*/
       
  8036     break;
       
  8037 
       
  8038 /****
       
  8039  *TOD_TO_UDINT
       
  8040  */
       
  8041     case function_tod_to_udint :
       
  8042     {
       
  8043         symbol_c *last_type_symbol = NULL;
       
  8044 
       
  8045         {
       
  8046             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  8047             symbol_c *IN_param_value = &this->default_variable_name;
       
  8048         
       
  8049             symbol_c *IN_type_symbol = param_data_type;
       
  8050             last_type_symbol = param_data_type;
       
  8051             
       
  8052             if (typeid(*last_type_symbol) == typeid(tod_type_name_c))
       
  8053             {
       
  8054         
       
  8055                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
       
  8056                 s4o.print("(");
       
  8057                 return_type_symbol->accept(*this);
       
  8058                 s4o.print(")__time_to_int(");
       
  8059                 IN_param_value->accept(*this);
       
  8060                 s4o.print(")");
       
  8061                 return NULL;
       
  8062                 
       
  8063             }
       
  8064             
       
  8065             ERROR;
       
  8066         }
       
  8067         
       
  8068     }/*function_tod_to_udint*/
       
  8069     break;
       
  8070 
       
  8071 /****
       
  8072  *TOD_TO_ULINT
       
  8073  */
       
  8074     case function_tod_to_ulint :
       
  8075     {
       
  8076         symbol_c *last_type_symbol = NULL;
       
  8077 
       
  8078         {
       
  8079             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  8080             symbol_c *IN_param_value = &this->default_variable_name;
       
  8081         
       
  8082             symbol_c *IN_type_symbol = param_data_type;
       
  8083             last_type_symbol = param_data_type;
       
  8084             
       
  8085             if (typeid(*last_type_symbol) == typeid(tod_type_name_c))
       
  8086             {
       
  8087         
       
  8088                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
       
  8089                 s4o.print("(");
       
  8090                 return_type_symbol->accept(*this);
       
  8091                 s4o.print(")__time_to_int(");
       
  8092                 IN_param_value->accept(*this);
       
  8093                 s4o.print(")");
       
  8094                 return NULL;
       
  8095                 
       
  8096             }
       
  8097             
       
  8098             ERROR;
       
  8099         }
       
  8100         
       
  8101     }/*function_tod_to_ulint*/
       
  8102     break;
       
  8103 
       
  8104 /****
       
  8105  *TOD_TO_REAL
       
  8106  */
       
  8107     case function_tod_to_real :
       
  8108     {
       
  8109         symbol_c *last_type_symbol = NULL;
       
  8110 
       
  8111         {
       
  8112             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  8113             symbol_c *IN_param_value = &this->default_variable_name;
       
  8114         
       
  8115             symbol_c *IN_type_symbol = param_data_type;
       
  8116             last_type_symbol = param_data_type;
       
  8117             
       
  8118             if (typeid(*last_type_symbol) == typeid(tod_type_name_c))
       
  8119             {
       
  8120         
       
  8121                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
       
  8122                 s4o.print("(");
       
  8123                 return_type_symbol->accept(*this);
       
  8124                 s4o.print(")__time_to_real(");
       
  8125                 IN_param_value->accept(*this);
       
  8126                 s4o.print(")");
       
  8127                 return NULL;
       
  8128                 
       
  8129             }
       
  8130             
       
  8131             ERROR;
       
  8132         }
       
  8133         
       
  8134     }/*function_tod_to_real*/
       
  8135     break;
       
  8136 
       
  8137 /****
       
  8138  *TOD_TO_LREAL
       
  8139  */
       
  8140     case function_tod_to_lreal :
       
  8141     {
       
  8142         symbol_c *last_type_symbol = NULL;
       
  8143 
       
  8144         {
       
  8145             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  8146             symbol_c *IN_param_value = &this->default_variable_name;
       
  8147         
       
  8148             symbol_c *IN_type_symbol = param_data_type;
       
  8149             last_type_symbol = param_data_type;
       
  8150             
       
  8151             if (typeid(*last_type_symbol) == typeid(tod_type_name_c))
       
  8152             {
       
  8153         
       
  8154                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
       
  8155                 s4o.print("(");
       
  8156                 return_type_symbol->accept(*this);
       
  8157                 s4o.print(")__time_to_real(");
       
  8158                 IN_param_value->accept(*this);
       
  8159                 s4o.print(")");
       
  8160                 return NULL;
       
  8161                 
       
  8162             }
       
  8163             
       
  8164             ERROR;
       
  8165         }
       
  8166         
       
  8167     }/*function_tod_to_lreal*/
       
  8168     break;
       
  8169 
       
  8170 /****
       
  8171  *TOD_TO_STRING
       
  8172  */
       
  8173     case function_tod_to_string :
       
  8174     {
       
  8175         symbol_c *last_type_symbol = NULL;
       
  8176 
       
  8177         {
       
  8178             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  8179             symbol_c *IN_param_value = &this->default_variable_name;
       
  8180         
       
  8181             symbol_c *IN_type_symbol = param_data_type;
       
  8182             last_type_symbol = param_data_type;
       
  8183             
       
  8184             if (typeid(*last_type_symbol) == typeid(tod_type_name_c))
       
  8185             {
       
  8186         
       
  8187                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
       
  8188                 s4o.print("(");
       
  8189                 return_type_symbol->accept(*this);
       
  8190                 s4o.print(")__tod_to_string(");
       
  8191                 IN_param_value->accept(*this);
       
  8192                 s4o.print(")");
       
  8193                 return NULL;
       
  8194                 
       
  8195             }
       
  8196             
       
  8197             ERROR;
       
  8198         }
       
  8199         
       
  8200     }/*function_tod_to_string*/
       
  8201     break;
       
  8202 
       
  8203 /****
       
  8204  *TOD_TO_BYTE
       
  8205  */
       
  8206     case function_tod_to_byte :
       
  8207     {
       
  8208         symbol_c *last_type_symbol = NULL;
       
  8209 
       
  8210         {
       
  8211             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  8212             symbol_c *IN_param_value = &this->default_variable_name;
       
  8213         
       
  8214             symbol_c *IN_type_symbol = param_data_type;
       
  8215             last_type_symbol = param_data_type;
       
  8216             
       
  8217             if (typeid(*last_type_symbol) == typeid(tod_type_name_c))
       
  8218             {
       
  8219         
       
  8220                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
       
  8221                 s4o.print("(");
       
  8222                 return_type_symbol->accept(*this);
       
  8223                 s4o.print(")__time_to_int(");
       
  8224                 IN_param_value->accept(*this);
       
  8225                 s4o.print(")");
       
  8226                 return NULL;
       
  8227                 
       
  8228             }
       
  8229             
       
  8230             ERROR;
       
  8231         }
       
  8232         
       
  8233     }/*function_tod_to_byte*/
       
  8234     break;
       
  8235 
       
  8236 /****
       
  8237  *TOD_TO_WORD
       
  8238  */
       
  8239     case function_tod_to_word :
       
  8240     {
       
  8241         symbol_c *last_type_symbol = NULL;
       
  8242 
       
  8243         {
       
  8244             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  8245             symbol_c *IN_param_value = &this->default_variable_name;
       
  8246         
       
  8247             symbol_c *IN_type_symbol = param_data_type;
       
  8248             last_type_symbol = param_data_type;
       
  8249             
       
  8250             if (typeid(*last_type_symbol) == typeid(tod_type_name_c))
       
  8251             {
       
  8252         
       
  8253                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
       
  8254                 s4o.print("(");
       
  8255                 return_type_symbol->accept(*this);
       
  8256                 s4o.print(")__time_to_int(");
       
  8257                 IN_param_value->accept(*this);
       
  8258                 s4o.print(")");
       
  8259                 return NULL;
       
  8260                 
       
  8261             }
       
  8262             
       
  8263             ERROR;
       
  8264         }
       
  8265         
       
  8266     }/*function_tod_to_word*/
       
  8267     break;
       
  8268 
       
  8269 /****
       
  8270  *TOD_TO_DWORD
       
  8271  */
       
  8272     case function_tod_to_dword :
       
  8273     {
       
  8274         symbol_c *last_type_symbol = NULL;
       
  8275 
       
  8276         {
       
  8277             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  8278             symbol_c *IN_param_value = &this->default_variable_name;
       
  8279         
       
  8280             symbol_c *IN_type_symbol = param_data_type;
       
  8281             last_type_symbol = param_data_type;
       
  8282             
       
  8283             if (typeid(*last_type_symbol) == typeid(tod_type_name_c))
       
  8284             {
       
  8285         
       
  8286                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
       
  8287                 s4o.print("(");
       
  8288                 return_type_symbol->accept(*this);
       
  8289                 s4o.print(")__time_to_int(");
       
  8290                 IN_param_value->accept(*this);
       
  8291                 s4o.print(")");
       
  8292                 return NULL;
       
  8293                 
       
  8294             }
       
  8295             
       
  8296             ERROR;
       
  8297         }
       
  8298         
       
  8299     }/*function_tod_to_dword*/
       
  8300     break;
       
  8301 
       
  8302 /****
       
  8303  *TOD_TO_LWORD
       
  8304  */
       
  8305     case function_tod_to_lword :
       
  8306     {
       
  8307         symbol_c *last_type_symbol = NULL;
       
  8308 
       
  8309         {
       
  8310             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  8311             symbol_c *IN_param_value = &this->default_variable_name;
       
  8312         
       
  8313             symbol_c *IN_type_symbol = param_data_type;
       
  8314             last_type_symbol = param_data_type;
       
  8315             
       
  8316             if (typeid(*last_type_symbol) == typeid(tod_type_name_c))
       
  8317             {
       
  8318         
       
  8319                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
       
  8320                 s4o.print("(");
       
  8321                 return_type_symbol->accept(*this);
       
  8322                 s4o.print(")__time_to_int(");
       
  8323                 IN_param_value->accept(*this);
       
  8324                 s4o.print(")");
       
  8325                 return NULL;
       
  8326                 
       
  8327             }
       
  8328             
       
  8329             ERROR;
       
  8330         }
       
  8331         
       
  8332     }/*function_tod_to_lword*/
       
  8333     break;
       
  8334 
       
  8335 /****
       
  8336  *DT_TO_BOOL
       
  8337  */
       
  8338     case function_dt_to_bool :
       
  8339     {
       
  8340         symbol_c *last_type_symbol = NULL;
       
  8341 
       
  8342         {
       
  8343             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  8344             symbol_c *IN_param_value = &this->default_variable_name;
       
  8345         
       
  8346             symbol_c *IN_type_symbol = param_data_type;
       
  8347             last_type_symbol = param_data_type;
       
  8348             
       
  8349             if (typeid(*last_type_symbol) == typeid(dt_type_name_c))
       
  8350             {
       
  8351         
       
  8352                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
       
  8353                 s4o.print("(");
       
  8354                 return_type_symbol->accept(*this);
       
  8355                 s4o.print(")__time_to_int(");
       
  8356                 IN_param_value->accept(*this);
       
  8357                 s4o.print(")");
       
  8358                 return NULL;
       
  8359                 
       
  8360             }
       
  8361             
       
  8362             ERROR;
       
  8363         }
       
  8364         
       
  8365     }/*function_dt_to_bool*/
       
  8366     break;
       
  8367 
       
  8368 /****
       
  8369  *DT_TO_SINT
       
  8370  */
       
  8371     case function_dt_to_sint :
       
  8372     {
       
  8373         symbol_c *last_type_symbol = NULL;
       
  8374 
       
  8375         {
       
  8376             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  8377             symbol_c *IN_param_value = &this->default_variable_name;
       
  8378         
       
  8379             symbol_c *IN_type_symbol = param_data_type;
       
  8380             last_type_symbol = param_data_type;
       
  8381             
       
  8382             if (typeid(*last_type_symbol) == typeid(dt_type_name_c))
       
  8383             {
       
  8384         
       
  8385                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
       
  8386                 s4o.print("(");
       
  8387                 return_type_symbol->accept(*this);
       
  8388                 s4o.print(")__time_to_int(");
       
  8389                 IN_param_value->accept(*this);
       
  8390                 s4o.print(")");
       
  8391                 return NULL;
       
  8392                 
       
  8393             }
       
  8394             
       
  8395             ERROR;
       
  8396         }
       
  8397         
       
  8398     }/*function_dt_to_sint*/
       
  8399     break;
       
  8400 
       
  8401 /****
       
  8402  *DT_TO_INT
       
  8403  */
       
  8404     case function_dt_to_int :
       
  8405     {
       
  8406         symbol_c *last_type_symbol = NULL;
       
  8407 
       
  8408         {
       
  8409             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  8410             symbol_c *IN_param_value = &this->default_variable_name;
       
  8411         
       
  8412             symbol_c *IN_type_symbol = param_data_type;
       
  8413             last_type_symbol = param_data_type;
       
  8414             
       
  8415             if (typeid(*last_type_symbol) == typeid(dt_type_name_c))
       
  8416             {
       
  8417         
       
  8418                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
       
  8419                 s4o.print("(");
       
  8420                 return_type_symbol->accept(*this);
       
  8421                 s4o.print(")__time_to_int(");
       
  8422                 IN_param_value->accept(*this);
       
  8423                 s4o.print(")");
       
  8424                 return NULL;
       
  8425                 
       
  8426             }
       
  8427             
       
  8428             ERROR;
       
  8429         }
       
  8430         
       
  8431     }/*function_dt_to_int*/
       
  8432     break;
       
  8433 
       
  8434 /****
       
  8435  *DT_TO_DINT
       
  8436  */
       
  8437     case function_dt_to_dint :
       
  8438     {
       
  8439         symbol_c *last_type_symbol = NULL;
       
  8440 
       
  8441         {
       
  8442             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  8443             symbol_c *IN_param_value = &this->default_variable_name;
       
  8444         
       
  8445             symbol_c *IN_type_symbol = param_data_type;
       
  8446             last_type_symbol = param_data_type;
       
  8447             
       
  8448             if (typeid(*last_type_symbol) == typeid(dt_type_name_c))
       
  8449             {
       
  8450         
       
  8451                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
       
  8452                 s4o.print("(");
       
  8453                 return_type_symbol->accept(*this);
       
  8454                 s4o.print(")__time_to_int(");
       
  8455                 IN_param_value->accept(*this);
       
  8456                 s4o.print(")");
       
  8457                 return NULL;
       
  8458                 
       
  8459             }
       
  8460             
       
  8461             ERROR;
       
  8462         }
       
  8463         
       
  8464     }/*function_dt_to_dint*/
       
  8465     break;
       
  8466 
       
  8467 /****
       
  8468  *DT_TO_LINT
       
  8469  */
       
  8470     case function_dt_to_lint :
       
  8471     {
       
  8472         symbol_c *last_type_symbol = NULL;
       
  8473 
       
  8474         {
       
  8475             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  8476             symbol_c *IN_param_value = &this->default_variable_name;
       
  8477         
       
  8478             symbol_c *IN_type_symbol = param_data_type;
       
  8479             last_type_symbol = param_data_type;
       
  8480             
       
  8481             if (typeid(*last_type_symbol) == typeid(dt_type_name_c))
       
  8482             {
       
  8483         
       
  8484                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
       
  8485                 s4o.print("(");
       
  8486                 return_type_symbol->accept(*this);
       
  8487                 s4o.print(")__time_to_int(");
       
  8488                 IN_param_value->accept(*this);
       
  8489                 s4o.print(")");
       
  8490                 return NULL;
       
  8491                 
       
  8492             }
       
  8493             
       
  8494             ERROR;
       
  8495         }
       
  8496         
       
  8497     }/*function_dt_to_lint*/
       
  8498     break;
       
  8499 
       
  8500 /****
       
  8501  *DT_TO_USINT
       
  8502  */
       
  8503     case function_dt_to_usint :
       
  8504     {
       
  8505         symbol_c *last_type_symbol = NULL;
       
  8506 
       
  8507         {
       
  8508             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  8509             symbol_c *IN_param_value = &this->default_variable_name;
       
  8510         
       
  8511             symbol_c *IN_type_symbol = param_data_type;
       
  8512             last_type_symbol = param_data_type;
       
  8513             
       
  8514             if (typeid(*last_type_symbol) == typeid(dt_type_name_c))
       
  8515             {
       
  8516         
       
  8517                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
       
  8518                 s4o.print("(");
       
  8519                 return_type_symbol->accept(*this);
       
  8520                 s4o.print(")__time_to_int(");
       
  8521                 IN_param_value->accept(*this);
       
  8522                 s4o.print(")");
       
  8523                 return NULL;
       
  8524                 
       
  8525             }
       
  8526             
       
  8527             ERROR;
       
  8528         }
       
  8529         
       
  8530     }/*function_dt_to_usint*/
       
  8531     break;
       
  8532 
       
  8533 /****
       
  8534  *DT_TO_UINT
       
  8535  */
       
  8536     case function_dt_to_uint :
       
  8537     {
       
  8538         symbol_c *last_type_symbol = NULL;
       
  8539 
       
  8540         {
       
  8541             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  8542             symbol_c *IN_param_value = &this->default_variable_name;
       
  8543         
       
  8544             symbol_c *IN_type_symbol = param_data_type;
       
  8545             last_type_symbol = param_data_type;
       
  8546             
       
  8547             if (typeid(*last_type_symbol) == typeid(dt_type_name_c))
       
  8548             {
       
  8549         
       
  8550                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
       
  8551                 s4o.print("(");
       
  8552                 return_type_symbol->accept(*this);
       
  8553                 s4o.print(")__time_to_int(");
       
  8554                 IN_param_value->accept(*this);
       
  8555                 s4o.print(")");
       
  8556                 return NULL;
       
  8557                 
       
  8558             }
       
  8559             
       
  8560             ERROR;
       
  8561         }
       
  8562         
       
  8563     }/*function_dt_to_uint*/
       
  8564     break;
       
  8565 
       
  8566 /****
       
  8567  *DT_TO_UDINT
       
  8568  */
       
  8569     case function_dt_to_udint :
       
  8570     {
       
  8571         symbol_c *last_type_symbol = NULL;
       
  8572 
       
  8573         {
       
  8574             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  8575             symbol_c *IN_param_value = &this->default_variable_name;
       
  8576         
       
  8577             symbol_c *IN_type_symbol = param_data_type;
       
  8578             last_type_symbol = param_data_type;
       
  8579             
       
  8580             if (typeid(*last_type_symbol) == typeid(dt_type_name_c))
       
  8581             {
       
  8582         
       
  8583                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
       
  8584                 s4o.print("(");
       
  8585                 return_type_symbol->accept(*this);
       
  8586                 s4o.print(")__time_to_int(");
       
  8587                 IN_param_value->accept(*this);
       
  8588                 s4o.print(")");
       
  8589                 return NULL;
       
  8590                 
       
  8591             }
       
  8592             
       
  8593             ERROR;
       
  8594         }
       
  8595         
       
  8596     }/*function_dt_to_udint*/
       
  8597     break;
       
  8598 
       
  8599 /****
       
  8600  *DT_TO_ULINT
       
  8601  */
       
  8602     case function_dt_to_ulint :
       
  8603     {
       
  8604         symbol_c *last_type_symbol = NULL;
       
  8605 
       
  8606         {
       
  8607             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  8608             symbol_c *IN_param_value = &this->default_variable_name;
       
  8609         
       
  8610             symbol_c *IN_type_symbol = param_data_type;
       
  8611             last_type_symbol = param_data_type;
       
  8612             
       
  8613             if (typeid(*last_type_symbol) == typeid(dt_type_name_c))
       
  8614             {
       
  8615         
       
  8616                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
       
  8617                 s4o.print("(");
       
  8618                 return_type_symbol->accept(*this);
       
  8619                 s4o.print(")__time_to_int(");
       
  8620                 IN_param_value->accept(*this);
       
  8621                 s4o.print(")");
       
  8622                 return NULL;
       
  8623                 
       
  8624             }
       
  8625             
       
  8626             ERROR;
       
  8627         }
       
  8628         
       
  8629     }/*function_dt_to_ulint*/
       
  8630     break;
       
  8631 
       
  8632 /****
       
  8633  *DT_TO_REAL
       
  8634  */
       
  8635     case function_dt_to_real :
       
  8636     {
       
  8637         symbol_c *last_type_symbol = NULL;
       
  8638 
       
  8639         {
       
  8640             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  8641             symbol_c *IN_param_value = &this->default_variable_name;
       
  8642         
       
  8643             symbol_c *IN_type_symbol = param_data_type;
       
  8644             last_type_symbol = param_data_type;
       
  8645             
       
  8646             if (typeid(*last_type_symbol) == typeid(dt_type_name_c))
       
  8647             {
       
  8648         
       
  8649                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
       
  8650                 s4o.print("(");
       
  8651                 return_type_symbol->accept(*this);
       
  8652                 s4o.print(")__time_to_real(");
       
  8653                 IN_param_value->accept(*this);
       
  8654                 s4o.print(")");
       
  8655                 return NULL;
       
  8656                 
       
  8657             }
       
  8658             
       
  8659             ERROR;
       
  8660         }
       
  8661         
       
  8662     }/*function_dt_to_real*/
       
  8663     break;
       
  8664 
       
  8665 /****
       
  8666  *DT_TO_LREAL
       
  8667  */
       
  8668     case function_dt_to_lreal :
       
  8669     {
       
  8670         symbol_c *last_type_symbol = NULL;
       
  8671 
       
  8672         {
       
  8673             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  8674             symbol_c *IN_param_value = &this->default_variable_name;
       
  8675         
       
  8676             symbol_c *IN_type_symbol = param_data_type;
       
  8677             last_type_symbol = param_data_type;
       
  8678             
       
  8679             if (typeid(*last_type_symbol) == typeid(dt_type_name_c))
       
  8680             {
       
  8681         
       
  8682                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
       
  8683                 s4o.print("(");
       
  8684                 return_type_symbol->accept(*this);
       
  8685                 s4o.print(")__time_to_real(");
       
  8686                 IN_param_value->accept(*this);
       
  8687                 s4o.print(")");
       
  8688                 return NULL;
       
  8689                 
       
  8690             }
       
  8691             
       
  8692             ERROR;
       
  8693         }
       
  8694         
       
  8695     }/*function_dt_to_lreal*/
       
  8696     break;
       
  8697 
       
  8698 /****
       
  8699  *DT_TO_STRING
       
  8700  */
       
  8701     case function_dt_to_string :
       
  8702     {
       
  8703         symbol_c *last_type_symbol = NULL;
       
  8704 
       
  8705         {
       
  8706             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  8707             symbol_c *IN_param_value = &this->default_variable_name;
       
  8708         
       
  8709             symbol_c *IN_type_symbol = param_data_type;
       
  8710             last_type_symbol = param_data_type;
       
  8711             
       
  8712             if (typeid(*last_type_symbol) == typeid(dt_type_name_c))
       
  8713             {
       
  8714         
       
  8715                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
       
  8716                 s4o.print("(");
       
  8717                 return_type_symbol->accept(*this);
       
  8718                 s4o.print(")__dt_to_string(");
       
  8719                 IN_param_value->accept(*this);
       
  8720                 s4o.print(")");
       
  8721                 return NULL;
       
  8722                 
       
  8723             }
       
  8724             
       
  8725             ERROR;
       
  8726         }
       
  8727         
       
  8728     }/*function_dt_to_string*/
       
  8729     break;
       
  8730 
       
  8731 /****
       
  8732  *DT_TO_BYTE
       
  8733  */
       
  8734     case function_dt_to_byte :
       
  8735     {
       
  8736         symbol_c *last_type_symbol = NULL;
       
  8737 
       
  8738         {
       
  8739             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  8740             symbol_c *IN_param_value = &this->default_variable_name;
       
  8741         
       
  8742             symbol_c *IN_type_symbol = param_data_type;
       
  8743             last_type_symbol = param_data_type;
       
  8744             
       
  8745             if (typeid(*last_type_symbol) == typeid(dt_type_name_c))
       
  8746             {
       
  8747         
       
  8748                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
       
  8749                 s4o.print("(");
       
  8750                 return_type_symbol->accept(*this);
       
  8751                 s4o.print(")__time_to_int(");
       
  8752                 IN_param_value->accept(*this);
       
  8753                 s4o.print(")");
       
  8754                 return NULL;
       
  8755                 
       
  8756             }
       
  8757             
       
  8758             ERROR;
       
  8759         }
       
  8760         
       
  8761     }/*function_dt_to_byte*/
       
  8762     break;
       
  8763 
       
  8764 /****
       
  8765  *DT_TO_WORD
       
  8766  */
       
  8767     case function_dt_to_word :
       
  8768     {
       
  8769         symbol_c *last_type_symbol = NULL;
       
  8770 
       
  8771         {
       
  8772             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  8773             symbol_c *IN_param_value = &this->default_variable_name;
       
  8774         
       
  8775             symbol_c *IN_type_symbol = param_data_type;
       
  8776             last_type_symbol = param_data_type;
       
  8777             
       
  8778             if (typeid(*last_type_symbol) == typeid(dt_type_name_c))
       
  8779             {
       
  8780         
       
  8781                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
       
  8782                 s4o.print("(");
       
  8783                 return_type_symbol->accept(*this);
       
  8784                 s4o.print(")__time_to_int(");
       
  8785                 IN_param_value->accept(*this);
       
  8786                 s4o.print(")");
       
  8787                 return NULL;
       
  8788                 
       
  8789             }
       
  8790             
       
  8791             ERROR;
       
  8792         }
       
  8793         
       
  8794     }/*function_dt_to_word*/
       
  8795     break;
       
  8796 
       
  8797 /****
       
  8798  *DT_TO_DWORD
       
  8799  */
       
  8800     case function_dt_to_dword :
       
  8801     {
       
  8802         symbol_c *last_type_symbol = NULL;
       
  8803 
       
  8804         {
       
  8805             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  8806             symbol_c *IN_param_value = &this->default_variable_name;
       
  8807         
       
  8808             symbol_c *IN_type_symbol = param_data_type;
       
  8809             last_type_symbol = param_data_type;
       
  8810             
       
  8811             if (typeid(*last_type_symbol) == typeid(dt_type_name_c))
       
  8812             {
       
  8813         
       
  8814                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
       
  8815                 s4o.print("(");
       
  8816                 return_type_symbol->accept(*this);
       
  8817                 s4o.print(")__time_to_int(");
       
  8818                 IN_param_value->accept(*this);
       
  8819                 s4o.print(")");
       
  8820                 return NULL;
       
  8821                 
       
  8822             }
       
  8823             
       
  8824             ERROR;
       
  8825         }
       
  8826         
       
  8827     }/*function_dt_to_dword*/
       
  8828     break;
       
  8829 
       
  8830 /****
       
  8831  *DT_TO_LWORD
       
  8832  */
       
  8833     case function_dt_to_lword :
       
  8834     {
       
  8835         symbol_c *last_type_symbol = NULL;
       
  8836 
       
  8837         {
       
  8838             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  8839             symbol_c *IN_param_value = &this->default_variable_name;
       
  8840         
       
  8841             symbol_c *IN_type_symbol = param_data_type;
       
  8842             last_type_symbol = param_data_type;
       
  8843             
       
  8844             if (typeid(*last_type_symbol) == typeid(dt_type_name_c))
       
  8845             {
       
  8846         
       
  8847                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
       
  8848                 s4o.print("(");
       
  8849                 return_type_symbol->accept(*this);
       
  8850                 s4o.print(")__time_to_int(");
       
  8851                 IN_param_value->accept(*this);
       
  8852                 s4o.print(")");
       
  8853                 return NULL;
       
  8854                 
       
  8855             }
       
  8856             
       
  8857             ERROR;
       
  8858         }
       
  8859         
       
  8860     }/*function_dt_to_lword*/
       
  8861     break;
       
  8862 
       
  8863 /****
       
  8864  *STRING_TO_BOOL
       
  8865  */
       
  8866     case function_string_to_bool :
       
  8867     {
       
  8868         symbol_c *last_type_symbol = NULL;
       
  8869 
       
  8870         {
       
  8871             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  8872             symbol_c *IN_param_value = &this->default_variable_name;
       
  8873         
       
  8874             symbol_c *IN_type_symbol = param_data_type;
       
  8875             last_type_symbol = param_data_type;
       
  8876             
       
  8877             if (typeid(*last_type_symbol) == typeid(string_type_name_c))
       
  8878             {
       
  8879         
       
  8880                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
       
  8881                 s4o.print("(");
       
  8882                 return_type_symbol->accept(*this);
       
  8883                 s4o.print(")__string_to_bool(");
       
  8884                 IN_param_value->accept(*this);
       
  8885                 s4o.print(")");
       
  8886                 return NULL;
       
  8887                 
       
  8888             }
       
  8889             
       
  8890             ERROR;
       
  8891         }
       
  8892         
       
  8893     }/*function_string_to_bool*/
       
  8894     break;
       
  8895 
       
  8896 /****
       
  8897  *STRING_TO_SINT
       
  8898  */
       
  8899     case function_string_to_sint :
       
  8900     {
       
  8901         symbol_c *last_type_symbol = NULL;
       
  8902 
       
  8903         {
       
  8904             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  8905             symbol_c *IN_param_value = &this->default_variable_name;
       
  8906         
       
  8907             symbol_c *IN_type_symbol = param_data_type;
       
  8908             last_type_symbol = param_data_type;
       
  8909             
       
  8910             if (typeid(*last_type_symbol) == typeid(string_type_name_c))
       
  8911             {
       
  8912         
       
  8913                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
       
  8914                 s4o.print("(");
       
  8915                 return_type_symbol->accept(*this);
       
  8916                 s4o.print(")__string_to_sint(");
       
  8917                 IN_param_value->accept(*this);
       
  8918                 s4o.print(")");
       
  8919                 return NULL;
       
  8920                 
       
  8921             }
       
  8922             
       
  8923             ERROR;
       
  8924         }
       
  8925         
       
  8926     }/*function_string_to_sint*/
       
  8927     break;
       
  8928 
       
  8929 /****
       
  8930  *STRING_TO_INT
       
  8931  */
       
  8932     case function_string_to_int :
       
  8933     {
       
  8934         symbol_c *last_type_symbol = NULL;
       
  8935 
       
  8936         {
       
  8937             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  8938             symbol_c *IN_param_value = &this->default_variable_name;
       
  8939         
       
  8940             symbol_c *IN_type_symbol = param_data_type;
       
  8941             last_type_symbol = param_data_type;
       
  8942             
       
  8943             if (typeid(*last_type_symbol) == typeid(string_type_name_c))
       
  8944             {
       
  8945         
       
  8946                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
       
  8947                 s4o.print("(");
       
  8948                 return_type_symbol->accept(*this);
       
  8949                 s4o.print(")__string_to_sint(");
       
  8950                 IN_param_value->accept(*this);
       
  8951                 s4o.print(")");
       
  8952                 return NULL;
       
  8953                 
       
  8954             }
       
  8955             
       
  8956             ERROR;
       
  8957         }
       
  8958         
       
  8959     }/*function_string_to_int*/
       
  8960     break;
       
  8961 
       
  8962 /****
       
  8963  *STRING_TO_DINT
       
  8964  */
       
  8965     case function_string_to_dint :
       
  8966     {
       
  8967         symbol_c *last_type_symbol = NULL;
       
  8968 
       
  8969         {
       
  8970             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  8971             symbol_c *IN_param_value = &this->default_variable_name;
       
  8972         
       
  8973             symbol_c *IN_type_symbol = param_data_type;
       
  8974             last_type_symbol = param_data_type;
       
  8975             
       
  8976             if (typeid(*last_type_symbol) == typeid(string_type_name_c))
       
  8977             {
       
  8978         
       
  8979                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
       
  8980                 s4o.print("(");
       
  8981                 return_type_symbol->accept(*this);
       
  8982                 s4o.print(")__string_to_sint(");
       
  8983                 IN_param_value->accept(*this);
       
  8984                 s4o.print(")");
       
  8985                 return NULL;
       
  8986                 
       
  8987             }
       
  8988             
       
  8989             ERROR;
       
  8990         }
       
  8991         
       
  8992     }/*function_string_to_dint*/
       
  8993     break;
       
  8994 
       
  8995 /****
       
  8996  *STRING_TO_LINT
       
  8997  */
       
  8998     case function_string_to_lint :
       
  8999     {
       
  9000         symbol_c *last_type_symbol = NULL;
       
  9001 
       
  9002         {
       
  9003             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  9004             symbol_c *IN_param_value = &this->default_variable_name;
       
  9005         
       
  9006             symbol_c *IN_type_symbol = param_data_type;
       
  9007             last_type_symbol = param_data_type;
       
  9008             
       
  9009             if (typeid(*last_type_symbol) == typeid(string_type_name_c))
       
  9010             {
       
  9011         
       
  9012                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
       
  9013                 s4o.print("(");
       
  9014                 return_type_symbol->accept(*this);
       
  9015                 s4o.print(")__string_to_sint(");
       
  9016                 IN_param_value->accept(*this);
       
  9017                 s4o.print(")");
       
  9018                 return NULL;
       
  9019                 
       
  9020             }
       
  9021             
       
  9022             ERROR;
       
  9023         }
       
  9024         
       
  9025     }/*function_string_to_lint*/
       
  9026     break;
       
  9027 
       
  9028 /****
       
  9029  *STRING_TO_USINT
       
  9030  */
       
  9031     case function_string_to_usint :
       
  9032     {
       
  9033         symbol_c *last_type_symbol = NULL;
       
  9034 
       
  9035         {
       
  9036             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  9037             symbol_c *IN_param_value = &this->default_variable_name;
       
  9038         
       
  9039             symbol_c *IN_type_symbol = param_data_type;
       
  9040             last_type_symbol = param_data_type;
       
  9041             
       
  9042             if (typeid(*last_type_symbol) == typeid(string_type_name_c))
       
  9043             {
       
  9044         
       
  9045                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
       
  9046                 s4o.print("(");
       
  9047                 return_type_symbol->accept(*this);
       
  9048                 s4o.print(")__string_to_uint(");
       
  9049                 IN_param_value->accept(*this);
       
  9050                 s4o.print(")");
       
  9051                 return NULL;
       
  9052                 
       
  9053             }
       
  9054             
       
  9055             ERROR;
       
  9056         }
       
  9057         
       
  9058     }/*function_string_to_usint*/
       
  9059     break;
       
  9060 
       
  9061 /****
       
  9062  *STRING_TO_UINT
       
  9063  */
       
  9064     case function_string_to_uint :
       
  9065     {
       
  9066         symbol_c *last_type_symbol = NULL;
       
  9067 
       
  9068         {
       
  9069             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  9070             symbol_c *IN_param_value = &this->default_variable_name;
       
  9071         
       
  9072             symbol_c *IN_type_symbol = param_data_type;
       
  9073             last_type_symbol = param_data_type;
       
  9074             
       
  9075             if (typeid(*last_type_symbol) == typeid(string_type_name_c))
       
  9076             {
       
  9077         
       
  9078                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
       
  9079                 s4o.print("(");
       
  9080                 return_type_symbol->accept(*this);
       
  9081                 s4o.print(")__string_to_uint(");
       
  9082                 IN_param_value->accept(*this);
       
  9083                 s4o.print(")");
       
  9084                 return NULL;
       
  9085                 
       
  9086             }
       
  9087             
       
  9088             ERROR;
       
  9089         }
       
  9090         
       
  9091     }/*function_string_to_uint*/
       
  9092     break;
       
  9093 
       
  9094 /****
       
  9095  *STRING_TO_UDINT
       
  9096  */
       
  9097     case function_string_to_udint :
       
  9098     {
       
  9099         symbol_c *last_type_symbol = NULL;
       
  9100 
       
  9101         {
       
  9102             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  9103             symbol_c *IN_param_value = &this->default_variable_name;
       
  9104         
       
  9105             symbol_c *IN_type_symbol = param_data_type;
       
  9106             last_type_symbol = param_data_type;
       
  9107             
       
  9108             if (typeid(*last_type_symbol) == typeid(string_type_name_c))
       
  9109             {
       
  9110         
       
  9111                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
       
  9112                 s4o.print("(");
       
  9113                 return_type_symbol->accept(*this);
       
  9114                 s4o.print(")__string_to_uint(");
       
  9115                 IN_param_value->accept(*this);
       
  9116                 s4o.print(")");
       
  9117                 return NULL;
       
  9118                 
       
  9119             }
       
  9120             
       
  9121             ERROR;
       
  9122         }
       
  9123         
       
  9124     }/*function_string_to_udint*/
       
  9125     break;
       
  9126 
       
  9127 /****
       
  9128  *STRING_TO_ULINT
       
  9129  */
       
  9130     case function_string_to_ulint :
       
  9131     {
       
  9132         symbol_c *last_type_symbol = NULL;
       
  9133 
       
  9134         {
       
  9135             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  9136             symbol_c *IN_param_value = &this->default_variable_name;
       
  9137         
       
  9138             symbol_c *IN_type_symbol = param_data_type;
       
  9139             last_type_symbol = param_data_type;
       
  9140             
       
  9141             if (typeid(*last_type_symbol) == typeid(string_type_name_c))
       
  9142             {
       
  9143         
       
  9144                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
       
  9145                 s4o.print("(");
       
  9146                 return_type_symbol->accept(*this);
       
  9147                 s4o.print(")__string_to_uint(");
       
  9148                 IN_param_value->accept(*this);
       
  9149                 s4o.print(")");
       
  9150                 return NULL;
       
  9151                 
       
  9152             }
       
  9153             
       
  9154             ERROR;
       
  9155         }
       
  9156         
       
  9157     }/*function_string_to_ulint*/
       
  9158     break;
       
  9159 
       
  9160 /****
       
  9161  *STRING_TO_REAL
       
  9162  */
       
  9163     case function_string_to_real :
       
  9164     {
       
  9165         symbol_c *last_type_symbol = NULL;
       
  9166 
       
  9167         {
       
  9168             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  9169             symbol_c *IN_param_value = &this->default_variable_name;
       
  9170         
       
  9171             symbol_c *IN_type_symbol = param_data_type;
       
  9172             last_type_symbol = param_data_type;
       
  9173             
       
  9174             if (typeid(*last_type_symbol) == typeid(string_type_name_c))
       
  9175             {
       
  9176         
       
  9177                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
       
  9178                 s4o.print("(");
       
  9179                 return_type_symbol->accept(*this);
       
  9180                 s4o.print(")__string_to_real(");
       
  9181                 IN_param_value->accept(*this);
       
  9182                 s4o.print(")");
       
  9183                 return NULL;
       
  9184                 
       
  9185             }
       
  9186             
       
  9187             ERROR;
       
  9188         }
       
  9189         
       
  9190     }/*function_string_to_real*/
       
  9191     break;
       
  9192 
       
  9193 /****
       
  9194  *STRING_TO_LREAL
       
  9195  */
       
  9196     case function_string_to_lreal :
       
  9197     {
       
  9198         symbol_c *last_type_symbol = NULL;
       
  9199 
       
  9200         {
       
  9201             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  9202             symbol_c *IN_param_value = &this->default_variable_name;
       
  9203         
       
  9204             symbol_c *IN_type_symbol = param_data_type;
       
  9205             last_type_symbol = param_data_type;
       
  9206             
       
  9207             if (typeid(*last_type_symbol) == typeid(string_type_name_c))
       
  9208             {
       
  9209         
       
  9210                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
       
  9211                 s4o.print("(");
       
  9212                 return_type_symbol->accept(*this);
       
  9213                 s4o.print(")__string_to_real(");
       
  9214                 IN_param_value->accept(*this);
       
  9215                 s4o.print(")");
       
  9216                 return NULL;
       
  9217                 
       
  9218             }
       
  9219             
       
  9220             ERROR;
       
  9221         }
       
  9222         
       
  9223     }/*function_string_to_lreal*/
       
  9224     break;
       
  9225 
       
  9226 /****
       
  9227  *STRING_TO_TIME
       
  9228  */
       
  9229     case function_string_to_time :
       
  9230     {
       
  9231         symbol_c *last_type_symbol = NULL;
       
  9232 
       
  9233         {
       
  9234             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  9235             symbol_c *IN_param_value = &this->default_variable_name;
       
  9236         
       
  9237             symbol_c *IN_type_symbol = param_data_type;
       
  9238             last_type_symbol = param_data_type;
       
  9239             
       
  9240             if (typeid(*last_type_symbol) == typeid(string_type_name_c))
       
  9241             {
       
  9242         
       
  9243                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
       
  9244                 s4o.print("(");
       
  9245                 return_type_symbol->accept(*this);
       
  9246                 s4o.print(")__string_to_time(");
       
  9247                 IN_param_value->accept(*this);
       
  9248                 s4o.print(")");
       
  9249                 return NULL;
       
  9250                 
       
  9251             }
       
  9252             
       
  9253             ERROR;
       
  9254         }
       
  9255         
       
  9256     }/*function_string_to_time*/
       
  9257     break;
       
  9258 
       
  9259 /****
       
  9260  *STRING_TO_DATE
       
  9261  */
       
  9262     case function_string_to_date :
       
  9263     {
       
  9264         symbol_c *last_type_symbol = NULL;
       
  9265 
       
  9266         {
       
  9267             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  9268             symbol_c *IN_param_value = &this->default_variable_name;
       
  9269         
       
  9270             symbol_c *IN_type_symbol = param_data_type;
       
  9271             last_type_symbol = param_data_type;
       
  9272             
       
  9273             if (typeid(*last_type_symbol) == typeid(string_type_name_c))
       
  9274             {
       
  9275         
       
  9276                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
       
  9277                 s4o.print("(");
       
  9278                 return_type_symbol->accept(*this);
       
  9279                 s4o.print(")__string_to_time(");
       
  9280                 IN_param_value->accept(*this);
       
  9281                 s4o.print(")");
       
  9282                 return NULL;
       
  9283                 
       
  9284             }
       
  9285             
       
  9286             ERROR;
       
  9287         }
       
  9288         
       
  9289     }/*function_string_to_date*/
       
  9290     break;
       
  9291 
       
  9292 /****
       
  9293  *STRING_TO_TOD
       
  9294  */
       
  9295     case function_string_to_tod :
       
  9296     {
       
  9297         symbol_c *last_type_symbol = NULL;
       
  9298 
       
  9299         {
       
  9300             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  9301             symbol_c *IN_param_value = &this->default_variable_name;
       
  9302         
       
  9303             symbol_c *IN_type_symbol = param_data_type;
       
  9304             last_type_symbol = param_data_type;
       
  9305             
       
  9306             if (typeid(*last_type_symbol) == typeid(string_type_name_c))
       
  9307             {
       
  9308         
       
  9309                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
       
  9310                 s4o.print("(");
       
  9311                 return_type_symbol->accept(*this);
       
  9312                 s4o.print(")__string_to_time(");
       
  9313                 IN_param_value->accept(*this);
       
  9314                 s4o.print(")");
       
  9315                 return NULL;
       
  9316                 
       
  9317             }
       
  9318             
       
  9319             ERROR;
       
  9320         }
       
  9321         
       
  9322     }/*function_string_to_tod*/
       
  9323     break;
       
  9324 
       
  9325 /****
       
  9326  *STRING_TO_DT
       
  9327  */
       
  9328     case function_string_to_dt :
       
  9329     {
       
  9330         symbol_c *last_type_symbol = NULL;
       
  9331 
       
  9332         {
       
  9333             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  9334             symbol_c *IN_param_value = &this->default_variable_name;
       
  9335         
       
  9336             symbol_c *IN_type_symbol = param_data_type;
       
  9337             last_type_symbol = param_data_type;
       
  9338             
       
  9339             if (typeid(*last_type_symbol) == typeid(string_type_name_c))
       
  9340             {
       
  9341         
       
  9342                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
       
  9343                 s4o.print("(");
       
  9344                 return_type_symbol->accept(*this);
       
  9345                 s4o.print(")__string_to_time(");
       
  9346                 IN_param_value->accept(*this);
       
  9347                 s4o.print(")");
       
  9348                 return NULL;
       
  9349                 
       
  9350             }
       
  9351             
       
  9352             ERROR;
       
  9353         }
       
  9354         
       
  9355     }/*function_string_to_dt*/
       
  9356     break;
       
  9357 
       
  9358 /****
       
  9359  *STRING_TO_BYTE
       
  9360  */
       
  9361     case function_string_to_byte :
       
  9362     {
       
  9363         symbol_c *last_type_symbol = NULL;
       
  9364 
       
  9365         {
       
  9366             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  9367             symbol_c *IN_param_value = &this->default_variable_name;
       
  9368         
       
  9369             symbol_c *IN_type_symbol = param_data_type;
       
  9370             last_type_symbol = param_data_type;
       
  9371             
       
  9372             if (typeid(*last_type_symbol) == typeid(string_type_name_c))
       
  9373             {
       
  9374         
       
  9375                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
       
  9376                 s4o.print("(");
       
  9377                 return_type_symbol->accept(*this);
       
  9378                 s4o.print(")__string_to_bit(");
       
  9379                 IN_param_value->accept(*this);
       
  9380                 s4o.print(")");
       
  9381                 return NULL;
       
  9382                 
       
  9383             }
       
  9384             
       
  9385             ERROR;
       
  9386         }
       
  9387         
       
  9388     }/*function_string_to_byte*/
       
  9389     break;
       
  9390 
       
  9391 /****
       
  9392  *STRING_TO_WORD
       
  9393  */
       
  9394     case function_string_to_word :
       
  9395     {
       
  9396         symbol_c *last_type_symbol = NULL;
       
  9397 
       
  9398         {
       
  9399             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  9400             symbol_c *IN_param_value = &this->default_variable_name;
       
  9401         
       
  9402             symbol_c *IN_type_symbol = param_data_type;
       
  9403             last_type_symbol = param_data_type;
       
  9404             
       
  9405             if (typeid(*last_type_symbol) == typeid(string_type_name_c))
       
  9406             {
       
  9407         
       
  9408                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
       
  9409                 s4o.print("(");
       
  9410                 return_type_symbol->accept(*this);
       
  9411                 s4o.print(")__string_to_bit(");
       
  9412                 IN_param_value->accept(*this);
       
  9413                 s4o.print(")");
       
  9414                 return NULL;
       
  9415                 
       
  9416             }
       
  9417             
       
  9418             ERROR;
       
  9419         }
       
  9420         
       
  9421     }/*function_string_to_word*/
       
  9422     break;
       
  9423 
       
  9424 /****
       
  9425  *STRING_TO_DWORD
       
  9426  */
       
  9427     case function_string_to_dword :
       
  9428     {
       
  9429         symbol_c *last_type_symbol = NULL;
       
  9430 
       
  9431         {
       
  9432             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  9433             symbol_c *IN_param_value = &this->default_variable_name;
       
  9434         
       
  9435             symbol_c *IN_type_symbol = param_data_type;
       
  9436             last_type_symbol = param_data_type;
       
  9437             
       
  9438             if (typeid(*last_type_symbol) == typeid(string_type_name_c))
       
  9439             {
       
  9440         
       
  9441                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
       
  9442                 s4o.print("(");
       
  9443                 return_type_symbol->accept(*this);
       
  9444                 s4o.print(")__string_to_bit(");
       
  9445                 IN_param_value->accept(*this);
       
  9446                 s4o.print(")");
       
  9447                 return NULL;
       
  9448                 
       
  9449             }
       
  9450             
       
  9451             ERROR;
       
  9452         }
       
  9453         
       
  9454     }/*function_string_to_dword*/
       
  9455     break;
       
  9456 
       
  9457 /****
       
  9458  *STRING_TO_LWORD
       
  9459  */
       
  9460     case function_string_to_lword :
       
  9461     {
       
  9462         symbol_c *last_type_symbol = NULL;
       
  9463 
       
  9464         {
       
  9465             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  9466             symbol_c *IN_param_value = &this->default_variable_name;
       
  9467         
       
  9468             symbol_c *IN_type_symbol = param_data_type;
       
  9469             last_type_symbol = param_data_type;
       
  9470             
       
  9471             if (typeid(*last_type_symbol) == typeid(string_type_name_c))
       
  9472             {
       
  9473         
       
  9474                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
       
  9475                 s4o.print("(");
       
  9476                 return_type_symbol->accept(*this);
       
  9477                 s4o.print(")__string_to_bit(");
       
  9478                 IN_param_value->accept(*this);
       
  9479                 s4o.print(")");
       
  9480                 return NULL;
       
  9481                 
       
  9482             }
       
  9483             
       
  9484             ERROR;
       
  9485         }
       
  9486         
       
  9487     }/*function_string_to_lword*/
       
  9488     break;
       
  9489 
       
  9490 /****
       
  9491  *BYTE_TO_BOOL
       
  9492  */
       
  9493     case function_byte_to_bool :
       
  9494     {
       
  9495         symbol_c *last_type_symbol = NULL;
       
  9496 
       
  9497         {
       
  9498             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  9499             symbol_c *IN_param_value = &this->default_variable_name;
       
  9500         
       
  9501             symbol_c *IN_type_symbol = param_data_type;
       
  9502             last_type_symbol = param_data_type;
       
  9503             
       
  9504             if (typeid(*last_type_symbol) == typeid(byte_type_name_c))
       
  9505             {
       
  9506         
       
  9507                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
       
  9508                 s4o.print("(");
       
  9509                 return_type_symbol->accept(*this);
       
  9510                 s4o.print(")");
       
  9511                 IN_param_value->accept(*this);
       
  9512                 return NULL;
       
  9513                 
       
  9514             }
       
  9515             
       
  9516             ERROR;
       
  9517         }
       
  9518         
       
  9519     }/*function_byte_to_bool*/
       
  9520     break;
       
  9521 
       
  9522 /****
       
  9523  *BYTE_TO_SINT
       
  9524  */
       
  9525     case function_byte_to_sint :
       
  9526     {
       
  9527         symbol_c *last_type_symbol = NULL;
       
  9528 
       
  9529         {
       
  9530             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  9531             symbol_c *IN_param_value = &this->default_variable_name;
       
  9532         
       
  9533             symbol_c *IN_type_symbol = param_data_type;
       
  9534             last_type_symbol = param_data_type;
       
  9535             
       
  9536             if (typeid(*last_type_symbol) == typeid(byte_type_name_c))
       
  9537             {
       
  9538         
       
  9539                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
       
  9540                 s4o.print("(");
       
  9541                 return_type_symbol->accept(*this);
       
  9542                 s4o.print(")");
       
  9543                 IN_param_value->accept(*this);
       
  9544                 return NULL;
       
  9545                 
       
  9546             }
       
  9547             
       
  9548             ERROR;
       
  9549         }
       
  9550         
       
  9551     }/*function_byte_to_sint*/
       
  9552     break;
       
  9553 
       
  9554 /****
       
  9555  *BYTE_TO_INT
       
  9556  */
       
  9557     case function_byte_to_int :
       
  9558     {
       
  9559         symbol_c *last_type_symbol = NULL;
       
  9560 
       
  9561         {
       
  9562             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  9563             symbol_c *IN_param_value = &this->default_variable_name;
       
  9564         
       
  9565             symbol_c *IN_type_symbol = param_data_type;
       
  9566             last_type_symbol = param_data_type;
       
  9567             
       
  9568             if (typeid(*last_type_symbol) == typeid(byte_type_name_c))
       
  9569             {
       
  9570         
       
  9571                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
       
  9572                 s4o.print("(");
       
  9573                 return_type_symbol->accept(*this);
       
  9574                 s4o.print(")");
       
  9575                 IN_param_value->accept(*this);
       
  9576                 return NULL;
       
  9577                 
       
  9578             }
       
  9579             
       
  9580             ERROR;
       
  9581         }
       
  9582         
       
  9583     }/*function_byte_to_int*/
       
  9584     break;
       
  9585 
       
  9586 /****
       
  9587  *BYTE_TO_DINT
       
  9588  */
       
  9589     case function_byte_to_dint :
       
  9590     {
       
  9591         symbol_c *last_type_symbol = NULL;
       
  9592 
       
  9593         {
       
  9594             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  9595             symbol_c *IN_param_value = &this->default_variable_name;
       
  9596         
       
  9597             symbol_c *IN_type_symbol = param_data_type;
       
  9598             last_type_symbol = param_data_type;
       
  9599             
       
  9600             if (typeid(*last_type_symbol) == typeid(byte_type_name_c))
       
  9601             {
       
  9602         
       
  9603                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
       
  9604                 s4o.print("(");
       
  9605                 return_type_symbol->accept(*this);
       
  9606                 s4o.print(")");
       
  9607                 IN_param_value->accept(*this);
       
  9608                 return NULL;
       
  9609                 
       
  9610             }
       
  9611             
       
  9612             ERROR;
       
  9613         }
       
  9614         
       
  9615     }/*function_byte_to_dint*/
       
  9616     break;
       
  9617 
       
  9618 /****
       
  9619  *BYTE_TO_LINT
       
  9620  */
       
  9621     case function_byte_to_lint :
       
  9622     {
       
  9623         symbol_c *last_type_symbol = NULL;
       
  9624 
       
  9625         {
       
  9626             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  9627             symbol_c *IN_param_value = &this->default_variable_name;
       
  9628         
       
  9629             symbol_c *IN_type_symbol = param_data_type;
       
  9630             last_type_symbol = param_data_type;
       
  9631             
       
  9632             if (typeid(*last_type_symbol) == typeid(byte_type_name_c))
       
  9633             {
       
  9634         
       
  9635                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
       
  9636                 s4o.print("(");
       
  9637                 return_type_symbol->accept(*this);
       
  9638                 s4o.print(")");
       
  9639                 IN_param_value->accept(*this);
       
  9640                 return NULL;
       
  9641                 
       
  9642             }
       
  9643             
       
  9644             ERROR;
       
  9645         }
       
  9646         
       
  9647     }/*function_byte_to_lint*/
       
  9648     break;
       
  9649 
       
  9650 /****
       
  9651  *BYTE_TO_USINT
       
  9652  */
       
  9653     case function_byte_to_usint :
       
  9654     {
       
  9655         symbol_c *last_type_symbol = NULL;
       
  9656 
       
  9657         {
       
  9658             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  9659             symbol_c *IN_param_value = &this->default_variable_name;
       
  9660         
       
  9661             symbol_c *IN_type_symbol = param_data_type;
       
  9662             last_type_symbol = param_data_type;
       
  9663             
       
  9664             if (typeid(*last_type_symbol) == typeid(byte_type_name_c))
       
  9665             {
       
  9666         
       
  9667                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
       
  9668                 s4o.print("(");
       
  9669                 return_type_symbol->accept(*this);
       
  9670                 s4o.print(")");
       
  9671                 IN_param_value->accept(*this);
       
  9672                 return NULL;
       
  9673                 
       
  9674             }
       
  9675             
       
  9676             ERROR;
       
  9677         }
       
  9678         
       
  9679     }/*function_byte_to_usint*/
       
  9680     break;
       
  9681 
       
  9682 /****
       
  9683  *BYTE_TO_UINT
       
  9684  */
       
  9685     case function_byte_to_uint :
       
  9686     {
       
  9687         symbol_c *last_type_symbol = NULL;
       
  9688 
       
  9689         {
       
  9690             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  9691             symbol_c *IN_param_value = &this->default_variable_name;
       
  9692         
       
  9693             symbol_c *IN_type_symbol = param_data_type;
       
  9694             last_type_symbol = param_data_type;
       
  9695             
       
  9696             if (typeid(*last_type_symbol) == typeid(byte_type_name_c))
       
  9697             {
       
  9698         
       
  9699                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
       
  9700                 s4o.print("(");
       
  9701                 return_type_symbol->accept(*this);
       
  9702                 s4o.print(")");
       
  9703                 IN_param_value->accept(*this);
       
  9704                 return NULL;
       
  9705                 
       
  9706             }
       
  9707             
       
  9708             ERROR;
       
  9709         }
       
  9710         
       
  9711     }/*function_byte_to_uint*/
       
  9712     break;
       
  9713 
       
  9714 /****
       
  9715  *BYTE_TO_UDINT
       
  9716  */
       
  9717     case function_byte_to_udint :
       
  9718     {
       
  9719         symbol_c *last_type_symbol = NULL;
       
  9720 
       
  9721         {
       
  9722             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  9723             symbol_c *IN_param_value = &this->default_variable_name;
       
  9724         
       
  9725             symbol_c *IN_type_symbol = param_data_type;
       
  9726             last_type_symbol = param_data_type;
       
  9727             
       
  9728             if (typeid(*last_type_symbol) == typeid(byte_type_name_c))
       
  9729             {
       
  9730         
       
  9731                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
       
  9732                 s4o.print("(");
       
  9733                 return_type_symbol->accept(*this);
       
  9734                 s4o.print(")");
       
  9735                 IN_param_value->accept(*this);
       
  9736                 return NULL;
       
  9737                 
       
  9738             }
       
  9739             
       
  9740             ERROR;
       
  9741         }
       
  9742         
       
  9743     }/*function_byte_to_udint*/
       
  9744     break;
       
  9745 
       
  9746 /****
       
  9747  *BYTE_TO_ULINT
       
  9748  */
       
  9749     case function_byte_to_ulint :
       
  9750     {
       
  9751         symbol_c *last_type_symbol = NULL;
       
  9752 
       
  9753         {
       
  9754             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  9755             symbol_c *IN_param_value = &this->default_variable_name;
       
  9756         
       
  9757             symbol_c *IN_type_symbol = param_data_type;
       
  9758             last_type_symbol = param_data_type;
       
  9759             
       
  9760             if (typeid(*last_type_symbol) == typeid(byte_type_name_c))
       
  9761             {
       
  9762         
       
  9763                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
       
  9764                 s4o.print("(");
       
  9765                 return_type_symbol->accept(*this);
       
  9766                 s4o.print(")");
       
  9767                 IN_param_value->accept(*this);
       
  9768                 return NULL;
       
  9769                 
       
  9770             }
       
  9771             
       
  9772             ERROR;
       
  9773         }
       
  9774         
       
  9775     }/*function_byte_to_ulint*/
       
  9776     break;
       
  9777 
       
  9778 /****
       
  9779  *BYTE_TO_REAL
       
  9780  */
       
  9781     case function_byte_to_real :
       
  9782     {
       
  9783         symbol_c *last_type_symbol = NULL;
       
  9784 
       
  9785         {
       
  9786             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  9787             symbol_c *IN_param_value = &this->default_variable_name;
       
  9788         
       
  9789             symbol_c *IN_type_symbol = param_data_type;
       
  9790             last_type_symbol = param_data_type;
       
  9791             
       
  9792             if (typeid(*last_type_symbol) == typeid(byte_type_name_c))
       
  9793             {
       
  9794         
       
  9795                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
       
  9796                 s4o.print("(");
       
  9797                 return_type_symbol->accept(*this);
       
  9798                 s4o.print(")");
       
  9799                 IN_param_value->accept(*this);
       
  9800                 return NULL;
       
  9801                 
       
  9802             }
       
  9803             
       
  9804             ERROR;
       
  9805         }
       
  9806         
       
  9807     }/*function_byte_to_real*/
       
  9808     break;
       
  9809 
       
  9810 /****
       
  9811  *BYTE_TO_LREAL
       
  9812  */
       
  9813     case function_byte_to_lreal :
       
  9814     {
       
  9815         symbol_c *last_type_symbol = NULL;
       
  9816 
       
  9817         {
       
  9818             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  9819             symbol_c *IN_param_value = &this->default_variable_name;
       
  9820         
       
  9821             symbol_c *IN_type_symbol = param_data_type;
       
  9822             last_type_symbol = param_data_type;
       
  9823             
       
  9824             if (typeid(*last_type_symbol) == typeid(byte_type_name_c))
       
  9825             {
       
  9826         
       
  9827                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
       
  9828                 s4o.print("(");
       
  9829                 return_type_symbol->accept(*this);
       
  9830                 s4o.print(")");
       
  9831                 IN_param_value->accept(*this);
       
  9832                 return NULL;
       
  9833                 
       
  9834             }
       
  9835             
       
  9836             ERROR;
       
  9837         }
       
  9838         
       
  9839     }/*function_byte_to_lreal*/
       
  9840     break;
       
  9841 
       
  9842 /****
       
  9843  *BYTE_TO_TIME
       
  9844  */
       
  9845     case function_byte_to_time :
       
  9846     {
       
  9847         symbol_c *last_type_symbol = NULL;
       
  9848 
       
  9849         {
       
  9850             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  9851             symbol_c *IN_param_value = &this->default_variable_name;
       
  9852         
       
  9853             symbol_c *IN_type_symbol = param_data_type;
       
  9854             last_type_symbol = param_data_type;
       
  9855             
       
  9856             if (typeid(*last_type_symbol) == typeid(byte_type_name_c))
       
  9857             {
       
  9858         
       
  9859                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
       
  9860                 s4o.print("(");
       
  9861                 return_type_symbol->accept(*this);
       
  9862                 s4o.print(")__int_to_time(");
       
  9863                 IN_param_value->accept(*this);
       
  9864                 s4o.print(")");
       
  9865                 return NULL;
       
  9866                 
       
  9867             }
       
  9868             
       
  9869             ERROR;
       
  9870         }
       
  9871         
       
  9872     }/*function_byte_to_time*/
       
  9873     break;
       
  9874 
       
  9875 /****
       
  9876  *BYTE_TO_DATE
       
  9877  */
       
  9878     case function_byte_to_date :
       
  9879     {
       
  9880         symbol_c *last_type_symbol = NULL;
       
  9881 
       
  9882         {
       
  9883             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  9884             symbol_c *IN_param_value = &this->default_variable_name;
       
  9885         
       
  9886             symbol_c *IN_type_symbol = param_data_type;
       
  9887             last_type_symbol = param_data_type;
       
  9888             
       
  9889             if (typeid(*last_type_symbol) == typeid(byte_type_name_c))
       
  9890             {
       
  9891         
       
  9892                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
       
  9893                 s4o.print("(");
       
  9894                 return_type_symbol->accept(*this);
       
  9895                 s4o.print(")__int_to_time(");
       
  9896                 IN_param_value->accept(*this);
       
  9897                 s4o.print(")");
       
  9898                 return NULL;
       
  9899                 
       
  9900             }
       
  9901             
       
  9902             ERROR;
       
  9903         }
       
  9904         
       
  9905     }/*function_byte_to_date*/
       
  9906     break;
       
  9907 
       
  9908 /****
       
  9909  *BYTE_TO_TOD
       
  9910  */
       
  9911     case function_byte_to_tod :
       
  9912     {
       
  9913         symbol_c *last_type_symbol = NULL;
       
  9914 
       
  9915         {
       
  9916             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  9917             symbol_c *IN_param_value = &this->default_variable_name;
       
  9918         
       
  9919             symbol_c *IN_type_symbol = param_data_type;
       
  9920             last_type_symbol = param_data_type;
       
  9921             
       
  9922             if (typeid(*last_type_symbol) == typeid(byte_type_name_c))
       
  9923             {
       
  9924         
       
  9925                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
       
  9926                 s4o.print("(");
       
  9927                 return_type_symbol->accept(*this);
       
  9928                 s4o.print(")__int_to_time(");
       
  9929                 IN_param_value->accept(*this);
       
  9930                 s4o.print(")");
       
  9931                 return NULL;
       
  9932                 
       
  9933             }
       
  9934             
       
  9935             ERROR;
       
  9936         }
       
  9937         
       
  9938     }/*function_byte_to_tod*/
       
  9939     break;
       
  9940 
       
  9941 /****
       
  9942  *BYTE_TO_DT
       
  9943  */
       
  9944     case function_byte_to_dt :
       
  9945     {
       
  9946         symbol_c *last_type_symbol = NULL;
       
  9947 
       
  9948         {
       
  9949             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  9950             symbol_c *IN_param_value = &this->default_variable_name;
       
  9951         
       
  9952             symbol_c *IN_type_symbol = param_data_type;
       
  9953             last_type_symbol = param_data_type;
       
  9954             
       
  9955             if (typeid(*last_type_symbol) == typeid(byte_type_name_c))
       
  9956             {
       
  9957         
       
  9958                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
       
  9959                 s4o.print("(");
       
  9960                 return_type_symbol->accept(*this);
       
  9961                 s4o.print(")__int_to_time(");
       
  9962                 IN_param_value->accept(*this);
       
  9963                 s4o.print(")");
       
  9964                 return NULL;
       
  9965                 
       
  9966             }
       
  9967             
       
  9968             ERROR;
       
  9969         }
       
  9970         
       
  9971     }/*function_byte_to_dt*/
       
  9972     break;
       
  9973 
       
  9974 /****
       
  9975  *BYTE_TO_STRING
       
  9976  */
       
  9977     case function_byte_to_string :
       
  9978     {
       
  9979         symbol_c *last_type_symbol = NULL;
       
  9980 
       
  9981         {
       
  9982             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
  9983             symbol_c *IN_param_value = &this->default_variable_name;
       
  9984         
       
  9985             symbol_c *IN_type_symbol = param_data_type;
       
  9986             last_type_symbol = param_data_type;
       
  9987             
       
  9988             if (typeid(*last_type_symbol) == typeid(byte_type_name_c))
       
  9989             {
       
  9990         
       
  9991                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
       
  9992                 s4o.print("(");
       
  9993                 return_type_symbol->accept(*this);
       
  9994                 s4o.print(")__bit_to_string(");
       
  9995                 IN_param_value->accept(*this);
       
  9996                 s4o.print(")");
       
  9997                 return NULL;
       
  9998                 
       
  9999             }
       
 10000             
       
 10001             ERROR;
       
 10002         }
       
 10003         
       
 10004     }/*function_byte_to_string*/
       
 10005     break;
       
 10006 
       
 10007 /****
       
 10008  *BYTE_TO_WORD
       
 10009  */
       
 10010     case function_byte_to_word :
       
 10011     {
       
 10012         symbol_c *last_type_symbol = NULL;
       
 10013 
       
 10014         {
       
 10015             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10016             symbol_c *IN_param_value = &this->default_variable_name;
       
 10017         
       
 10018             symbol_c *IN_type_symbol = param_data_type;
       
 10019             last_type_symbol = param_data_type;
       
 10020             
       
 10021             if (typeid(*last_type_symbol) == typeid(byte_type_name_c))
       
 10022             {
       
 10023         
       
 10024                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
       
 10025                 s4o.print("(");
       
 10026                 return_type_symbol->accept(*this);
       
 10027                 s4o.print(")");
       
 10028                 IN_param_value->accept(*this);
       
 10029                 return NULL;
       
 10030                 
       
 10031             }
       
 10032             
       
 10033             ERROR;
       
 10034         }
       
 10035         
       
 10036     }/*function_byte_to_word*/
       
 10037     break;
       
 10038 
       
 10039 /****
       
 10040  *BYTE_TO_DWORD
       
 10041  */
       
 10042     case function_byte_to_dword :
       
 10043     {
       
 10044         symbol_c *last_type_symbol = NULL;
       
 10045 
       
 10046         {
       
 10047             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10048             symbol_c *IN_param_value = &this->default_variable_name;
       
 10049         
       
 10050             symbol_c *IN_type_symbol = param_data_type;
       
 10051             last_type_symbol = param_data_type;
       
 10052             
       
 10053             if (typeid(*last_type_symbol) == typeid(byte_type_name_c))
       
 10054             {
       
 10055         
       
 10056                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
       
 10057                 s4o.print("(");
       
 10058                 return_type_symbol->accept(*this);
       
 10059                 s4o.print(")");
       
 10060                 IN_param_value->accept(*this);
       
 10061                 return NULL;
       
 10062                 
       
 10063             }
       
 10064             
       
 10065             ERROR;
       
 10066         }
       
 10067         
       
 10068     }/*function_byte_to_dword*/
       
 10069     break;
       
 10070 
       
 10071 /****
       
 10072  *BYTE_TO_LWORD
       
 10073  */
       
 10074     case function_byte_to_lword :
       
 10075     {
       
 10076         symbol_c *last_type_symbol = NULL;
       
 10077 
       
 10078         {
       
 10079             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10080             symbol_c *IN_param_value = &this->default_variable_name;
       
 10081         
       
 10082             symbol_c *IN_type_symbol = param_data_type;
       
 10083             last_type_symbol = param_data_type;
       
 10084             
       
 10085             if (typeid(*last_type_symbol) == typeid(byte_type_name_c))
       
 10086             {
       
 10087         
       
 10088                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
       
 10089                 s4o.print("(");
       
 10090                 return_type_symbol->accept(*this);
       
 10091                 s4o.print(")");
       
 10092                 IN_param_value->accept(*this);
       
 10093                 return NULL;
       
 10094                 
       
 10095             }
       
 10096             
       
 10097             ERROR;
       
 10098         }
       
 10099         
       
 10100     }/*function_byte_to_lword*/
       
 10101     break;
       
 10102 
       
 10103 /****
       
 10104  *WORD_TO_BOOL
       
 10105  */
       
 10106     case function_word_to_bool :
       
 10107     {
       
 10108         symbol_c *last_type_symbol = NULL;
       
 10109 
       
 10110         {
       
 10111             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10112             symbol_c *IN_param_value = &this->default_variable_name;
       
 10113         
       
 10114             symbol_c *IN_type_symbol = param_data_type;
       
 10115             last_type_symbol = param_data_type;
       
 10116             
       
 10117             if (typeid(*last_type_symbol) == typeid(word_type_name_c))
       
 10118             {
       
 10119         
       
 10120                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
       
 10121                 s4o.print("(");
       
 10122                 return_type_symbol->accept(*this);
       
 10123                 s4o.print(")");
       
 10124                 IN_param_value->accept(*this);
       
 10125                 return NULL;
       
 10126                 
       
 10127             }
       
 10128             
       
 10129             ERROR;
       
 10130         }
       
 10131         
       
 10132     }/*function_word_to_bool*/
       
 10133     break;
       
 10134 
       
 10135 /****
       
 10136  *WORD_TO_SINT
       
 10137  */
       
 10138     case function_word_to_sint :
       
 10139     {
       
 10140         symbol_c *last_type_symbol = NULL;
       
 10141 
       
 10142         {
       
 10143             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10144             symbol_c *IN_param_value = &this->default_variable_name;
       
 10145         
       
 10146             symbol_c *IN_type_symbol = param_data_type;
       
 10147             last_type_symbol = param_data_type;
       
 10148             
       
 10149             if (typeid(*last_type_symbol) == typeid(word_type_name_c))
       
 10150             {
       
 10151         
       
 10152                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
       
 10153                 s4o.print("(");
       
 10154                 return_type_symbol->accept(*this);
       
 10155                 s4o.print(")");
       
 10156                 IN_param_value->accept(*this);
       
 10157                 return NULL;
       
 10158                 
       
 10159             }
       
 10160             
       
 10161             ERROR;
       
 10162         }
       
 10163         
       
 10164     }/*function_word_to_sint*/
       
 10165     break;
       
 10166 
       
 10167 /****
       
 10168  *WORD_TO_INT
       
 10169  */
       
 10170     case function_word_to_int :
       
 10171     {
       
 10172         symbol_c *last_type_symbol = NULL;
       
 10173 
       
 10174         {
       
 10175             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10176             symbol_c *IN_param_value = &this->default_variable_name;
       
 10177         
       
 10178             symbol_c *IN_type_symbol = param_data_type;
       
 10179             last_type_symbol = param_data_type;
       
 10180             
       
 10181             if (typeid(*last_type_symbol) == typeid(word_type_name_c))
       
 10182             {
       
 10183         
       
 10184                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
       
 10185                 s4o.print("(");
       
 10186                 return_type_symbol->accept(*this);
       
 10187                 s4o.print(")");
       
 10188                 IN_param_value->accept(*this);
       
 10189                 return NULL;
       
 10190                 
       
 10191             }
       
 10192             
       
 10193             ERROR;
       
 10194         }
       
 10195         
       
 10196     }/*function_word_to_int*/
       
 10197     break;
       
 10198 
       
 10199 /****
       
 10200  *WORD_TO_DINT
       
 10201  */
       
 10202     case function_word_to_dint :
       
 10203     {
       
 10204         symbol_c *last_type_symbol = NULL;
       
 10205 
       
 10206         {
       
 10207             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10208             symbol_c *IN_param_value = &this->default_variable_name;
       
 10209         
       
 10210             symbol_c *IN_type_symbol = param_data_type;
       
 10211             last_type_symbol = param_data_type;
       
 10212             
       
 10213             if (typeid(*last_type_symbol) == typeid(word_type_name_c))
       
 10214             {
       
 10215         
       
 10216                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
       
 10217                 s4o.print("(");
       
 10218                 return_type_symbol->accept(*this);
       
 10219                 s4o.print(")");
       
 10220                 IN_param_value->accept(*this);
       
 10221                 return NULL;
       
 10222                 
       
 10223             }
       
 10224             
       
 10225             ERROR;
       
 10226         }
       
 10227         
       
 10228     }/*function_word_to_dint*/
       
 10229     break;
       
 10230 
       
 10231 /****
       
 10232  *WORD_TO_LINT
       
 10233  */
       
 10234     case function_word_to_lint :
       
 10235     {
       
 10236         symbol_c *last_type_symbol = NULL;
       
 10237 
       
 10238         {
       
 10239             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10240             symbol_c *IN_param_value = &this->default_variable_name;
       
 10241         
       
 10242             symbol_c *IN_type_symbol = param_data_type;
       
 10243             last_type_symbol = param_data_type;
       
 10244             
       
 10245             if (typeid(*last_type_symbol) == typeid(word_type_name_c))
       
 10246             {
       
 10247         
       
 10248                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
       
 10249                 s4o.print("(");
       
 10250                 return_type_symbol->accept(*this);
       
 10251                 s4o.print(")");
       
 10252                 IN_param_value->accept(*this);
       
 10253                 return NULL;
       
 10254                 
       
 10255             }
       
 10256             
       
 10257             ERROR;
       
 10258         }
       
 10259         
       
 10260     }/*function_word_to_lint*/
       
 10261     break;
       
 10262 
       
 10263 /****
       
 10264  *WORD_TO_USINT
       
 10265  */
       
 10266     case function_word_to_usint :
       
 10267     {
       
 10268         symbol_c *last_type_symbol = NULL;
       
 10269 
       
 10270         {
       
 10271             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10272             symbol_c *IN_param_value = &this->default_variable_name;
       
 10273         
       
 10274             symbol_c *IN_type_symbol = param_data_type;
       
 10275             last_type_symbol = param_data_type;
       
 10276             
       
 10277             if (typeid(*last_type_symbol) == typeid(word_type_name_c))
       
 10278             {
       
 10279         
       
 10280                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
       
 10281                 s4o.print("(");
       
 10282                 return_type_symbol->accept(*this);
       
 10283                 s4o.print(")");
       
 10284                 IN_param_value->accept(*this);
       
 10285                 return NULL;
       
 10286                 
       
 10287             }
       
 10288             
       
 10289             ERROR;
       
 10290         }
       
 10291         
       
 10292     }/*function_word_to_usint*/
       
 10293     break;
       
 10294 
       
 10295 /****
       
 10296  *WORD_TO_UINT
       
 10297  */
       
 10298     case function_word_to_uint :
       
 10299     {
       
 10300         symbol_c *last_type_symbol = NULL;
       
 10301 
       
 10302         {
       
 10303             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10304             symbol_c *IN_param_value = &this->default_variable_name;
       
 10305         
       
 10306             symbol_c *IN_type_symbol = param_data_type;
       
 10307             last_type_symbol = param_data_type;
       
 10308             
       
 10309             if (typeid(*last_type_symbol) == typeid(word_type_name_c))
       
 10310             {
       
 10311         
       
 10312                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
       
 10313                 s4o.print("(");
       
 10314                 return_type_symbol->accept(*this);
       
 10315                 s4o.print(")");
       
 10316                 IN_param_value->accept(*this);
       
 10317                 return NULL;
       
 10318                 
       
 10319             }
       
 10320             
       
 10321             ERROR;
       
 10322         }
       
 10323         
       
 10324     }/*function_word_to_uint*/
       
 10325     break;
       
 10326 
       
 10327 /****
       
 10328  *WORD_TO_UDINT
       
 10329  */
       
 10330     case function_word_to_udint :
       
 10331     {
       
 10332         symbol_c *last_type_symbol = NULL;
       
 10333 
       
 10334         {
       
 10335             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10336             symbol_c *IN_param_value = &this->default_variable_name;
       
 10337         
       
 10338             symbol_c *IN_type_symbol = param_data_type;
       
 10339             last_type_symbol = param_data_type;
       
 10340             
       
 10341             if (typeid(*last_type_symbol) == typeid(word_type_name_c))
       
 10342             {
       
 10343         
       
 10344                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
       
 10345                 s4o.print("(");
       
 10346                 return_type_symbol->accept(*this);
       
 10347                 s4o.print(")");
       
 10348                 IN_param_value->accept(*this);
       
 10349                 return NULL;
       
 10350                 
       
 10351             }
       
 10352             
       
 10353             ERROR;
       
 10354         }
       
 10355         
       
 10356     }/*function_word_to_udint*/
       
 10357     break;
       
 10358 
       
 10359 /****
       
 10360  *WORD_TO_ULINT
       
 10361  */
       
 10362     case function_word_to_ulint :
       
 10363     {
       
 10364         symbol_c *last_type_symbol = NULL;
       
 10365 
       
 10366         {
       
 10367             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10368             symbol_c *IN_param_value = &this->default_variable_name;
       
 10369         
       
 10370             symbol_c *IN_type_symbol = param_data_type;
       
 10371             last_type_symbol = param_data_type;
       
 10372             
       
 10373             if (typeid(*last_type_symbol) == typeid(word_type_name_c))
       
 10374             {
       
 10375         
       
 10376                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
       
 10377                 s4o.print("(");
       
 10378                 return_type_symbol->accept(*this);
       
 10379                 s4o.print(")");
       
 10380                 IN_param_value->accept(*this);
       
 10381                 return NULL;
       
 10382                 
       
 10383             }
       
 10384             
       
 10385             ERROR;
       
 10386         }
       
 10387         
       
 10388     }/*function_word_to_ulint*/
       
 10389     break;
       
 10390 
       
 10391 /****
       
 10392  *WORD_TO_REAL
       
 10393  */
       
 10394     case function_word_to_real :
       
 10395     {
       
 10396         symbol_c *last_type_symbol = NULL;
       
 10397 
       
 10398         {
       
 10399             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10400             symbol_c *IN_param_value = &this->default_variable_name;
       
 10401         
       
 10402             symbol_c *IN_type_symbol = param_data_type;
       
 10403             last_type_symbol = param_data_type;
       
 10404             
       
 10405             if (typeid(*last_type_symbol) == typeid(word_type_name_c))
       
 10406             {
       
 10407         
       
 10408                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
       
 10409                 s4o.print("(");
       
 10410                 return_type_symbol->accept(*this);
       
 10411                 s4o.print(")");
       
 10412                 IN_param_value->accept(*this);
       
 10413                 return NULL;
       
 10414                 
       
 10415             }
       
 10416             
       
 10417             ERROR;
       
 10418         }
       
 10419         
       
 10420     }/*function_word_to_real*/
       
 10421     break;
       
 10422 
       
 10423 /****
       
 10424  *WORD_TO_LREAL
       
 10425  */
       
 10426     case function_word_to_lreal :
       
 10427     {
       
 10428         symbol_c *last_type_symbol = NULL;
       
 10429 
       
 10430         {
       
 10431             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10432             symbol_c *IN_param_value = &this->default_variable_name;
       
 10433         
       
 10434             symbol_c *IN_type_symbol = param_data_type;
       
 10435             last_type_symbol = param_data_type;
       
 10436             
       
 10437             if (typeid(*last_type_symbol) == typeid(word_type_name_c))
       
 10438             {
       
 10439         
       
 10440                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
       
 10441                 s4o.print("(");
       
 10442                 return_type_symbol->accept(*this);
       
 10443                 s4o.print(")");
       
 10444                 IN_param_value->accept(*this);
       
 10445                 return NULL;
       
 10446                 
       
 10447             }
       
 10448             
       
 10449             ERROR;
       
 10450         }
       
 10451         
       
 10452     }/*function_word_to_lreal*/
       
 10453     break;
       
 10454 
       
 10455 /****
       
 10456  *WORD_TO_TIME
       
 10457  */
       
 10458     case function_word_to_time :
       
 10459     {
       
 10460         symbol_c *last_type_symbol = NULL;
       
 10461 
       
 10462         {
       
 10463             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10464             symbol_c *IN_param_value = &this->default_variable_name;
       
 10465         
       
 10466             symbol_c *IN_type_symbol = param_data_type;
       
 10467             last_type_symbol = param_data_type;
       
 10468             
       
 10469             if (typeid(*last_type_symbol) == typeid(word_type_name_c))
       
 10470             {
       
 10471         
       
 10472                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
       
 10473                 s4o.print("(");
       
 10474                 return_type_symbol->accept(*this);
       
 10475                 s4o.print(")__int_to_time(");
       
 10476                 IN_param_value->accept(*this);
       
 10477                 s4o.print(")");
       
 10478                 return NULL;
       
 10479                 
       
 10480             }
       
 10481             
       
 10482             ERROR;
       
 10483         }
       
 10484         
       
 10485     }/*function_word_to_time*/
       
 10486     break;
       
 10487 
       
 10488 /****
       
 10489  *WORD_TO_DATE
       
 10490  */
       
 10491     case function_word_to_date :
       
 10492     {
       
 10493         symbol_c *last_type_symbol = NULL;
       
 10494 
       
 10495         {
       
 10496             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10497             symbol_c *IN_param_value = &this->default_variable_name;
       
 10498         
       
 10499             symbol_c *IN_type_symbol = param_data_type;
       
 10500             last_type_symbol = param_data_type;
       
 10501             
       
 10502             if (typeid(*last_type_symbol) == typeid(word_type_name_c))
       
 10503             {
       
 10504         
       
 10505                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
       
 10506                 s4o.print("(");
       
 10507                 return_type_symbol->accept(*this);
       
 10508                 s4o.print(")__int_to_time(");
       
 10509                 IN_param_value->accept(*this);
       
 10510                 s4o.print(")");
       
 10511                 return NULL;
       
 10512                 
       
 10513             }
       
 10514             
       
 10515             ERROR;
       
 10516         }
       
 10517         
       
 10518     }/*function_word_to_date*/
       
 10519     break;
       
 10520 
       
 10521 /****
       
 10522  *WORD_TO_TOD
       
 10523  */
       
 10524     case function_word_to_tod :
       
 10525     {
       
 10526         symbol_c *last_type_symbol = NULL;
       
 10527 
       
 10528         {
       
 10529             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10530             symbol_c *IN_param_value = &this->default_variable_name;
       
 10531         
       
 10532             symbol_c *IN_type_symbol = param_data_type;
       
 10533             last_type_symbol = param_data_type;
       
 10534             
       
 10535             if (typeid(*last_type_symbol) == typeid(word_type_name_c))
       
 10536             {
       
 10537         
       
 10538                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
       
 10539                 s4o.print("(");
       
 10540                 return_type_symbol->accept(*this);
       
 10541                 s4o.print(")__int_to_time(");
       
 10542                 IN_param_value->accept(*this);
       
 10543                 s4o.print(")");
       
 10544                 return NULL;
       
 10545                 
       
 10546             }
       
 10547             
       
 10548             ERROR;
       
 10549         }
       
 10550         
       
 10551     }/*function_word_to_tod*/
       
 10552     break;
       
 10553 
       
 10554 /****
       
 10555  *WORD_TO_DT
       
 10556  */
       
 10557     case function_word_to_dt :
       
 10558     {
       
 10559         symbol_c *last_type_symbol = NULL;
       
 10560 
       
 10561         {
       
 10562             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10563             symbol_c *IN_param_value = &this->default_variable_name;
       
 10564         
       
 10565             symbol_c *IN_type_symbol = param_data_type;
       
 10566             last_type_symbol = param_data_type;
       
 10567             
       
 10568             if (typeid(*last_type_symbol) == typeid(word_type_name_c))
       
 10569             {
       
 10570         
       
 10571                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
       
 10572                 s4o.print("(");
       
 10573                 return_type_symbol->accept(*this);
       
 10574                 s4o.print(")__int_to_time(");
       
 10575                 IN_param_value->accept(*this);
       
 10576                 s4o.print(")");
       
 10577                 return NULL;
       
 10578                 
       
 10579             }
       
 10580             
       
 10581             ERROR;
       
 10582         }
       
 10583         
       
 10584     }/*function_word_to_dt*/
       
 10585     break;
       
 10586 
       
 10587 /****
       
 10588  *WORD_TO_STRING
       
 10589  */
       
 10590     case function_word_to_string :
       
 10591     {
       
 10592         symbol_c *last_type_symbol = NULL;
       
 10593 
       
 10594         {
       
 10595             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10596             symbol_c *IN_param_value = &this->default_variable_name;
       
 10597         
       
 10598             symbol_c *IN_type_symbol = param_data_type;
       
 10599             last_type_symbol = param_data_type;
       
 10600             
       
 10601             if (typeid(*last_type_symbol) == typeid(word_type_name_c))
       
 10602             {
       
 10603         
       
 10604                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
       
 10605                 s4o.print("(");
       
 10606                 return_type_symbol->accept(*this);
       
 10607                 s4o.print(")__bit_to_string(");
       
 10608                 IN_param_value->accept(*this);
       
 10609                 s4o.print(")");
       
 10610                 return NULL;
       
 10611                 
       
 10612             }
       
 10613             
       
 10614             ERROR;
       
 10615         }
       
 10616         
       
 10617     }/*function_word_to_string*/
       
 10618     break;
       
 10619 
       
 10620 /****
       
 10621  *WORD_TO_BYTE
       
 10622  */
       
 10623     case function_word_to_byte :
       
 10624     {
       
 10625         symbol_c *last_type_symbol = NULL;
       
 10626 
       
 10627         {
       
 10628             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10629             symbol_c *IN_param_value = &this->default_variable_name;
       
 10630         
       
 10631             symbol_c *IN_type_symbol = param_data_type;
       
 10632             last_type_symbol = param_data_type;
       
 10633             
       
 10634             if (typeid(*last_type_symbol) == typeid(word_type_name_c))
       
 10635             {
       
 10636         
       
 10637                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
       
 10638                 s4o.print("(");
       
 10639                 return_type_symbol->accept(*this);
       
 10640                 s4o.print(")");
       
 10641                 IN_param_value->accept(*this);
       
 10642                 return NULL;
       
 10643                 
       
 10644             }
       
 10645             
       
 10646             ERROR;
       
 10647         }
       
 10648         
       
 10649     }/*function_word_to_byte*/
       
 10650     break;
       
 10651 
       
 10652 /****
       
 10653  *WORD_TO_DWORD
       
 10654  */
       
 10655     case function_word_to_dword :
       
 10656     {
       
 10657         symbol_c *last_type_symbol = NULL;
       
 10658 
       
 10659         {
       
 10660             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10661             symbol_c *IN_param_value = &this->default_variable_name;
       
 10662         
       
 10663             symbol_c *IN_type_symbol = param_data_type;
       
 10664             last_type_symbol = param_data_type;
       
 10665             
       
 10666             if (typeid(*last_type_symbol) == typeid(word_type_name_c))
       
 10667             {
       
 10668         
       
 10669                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
       
 10670                 s4o.print("(");
       
 10671                 return_type_symbol->accept(*this);
       
 10672                 s4o.print(")");
       
 10673                 IN_param_value->accept(*this);
       
 10674                 return NULL;
       
 10675                 
       
 10676             }
       
 10677             
       
 10678             ERROR;
       
 10679         }
       
 10680         
       
 10681     }/*function_word_to_dword*/
       
 10682     break;
       
 10683 
       
 10684 /****
       
 10685  *WORD_TO_LWORD
       
 10686  */
       
 10687     case function_word_to_lword :
       
 10688     {
       
 10689         symbol_c *last_type_symbol = NULL;
       
 10690 
       
 10691         {
       
 10692             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10693             symbol_c *IN_param_value = &this->default_variable_name;
       
 10694         
       
 10695             symbol_c *IN_type_symbol = param_data_type;
       
 10696             last_type_symbol = param_data_type;
       
 10697             
       
 10698             if (typeid(*last_type_symbol) == typeid(word_type_name_c))
       
 10699             {
       
 10700         
       
 10701                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
       
 10702                 s4o.print("(");
       
 10703                 return_type_symbol->accept(*this);
       
 10704                 s4o.print(")");
       
 10705                 IN_param_value->accept(*this);
       
 10706                 return NULL;
       
 10707                 
       
 10708             }
       
 10709             
       
 10710             ERROR;
       
 10711         }
       
 10712         
       
 10713     }/*function_word_to_lword*/
       
 10714     break;
       
 10715 
       
 10716 /****
       
 10717  *DWORD_TO_BOOL
       
 10718  */
       
 10719     case function_dword_to_bool :
       
 10720     {
       
 10721         symbol_c *last_type_symbol = NULL;
       
 10722 
       
 10723         {
       
 10724             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10725             symbol_c *IN_param_value = &this->default_variable_name;
       
 10726         
       
 10727             symbol_c *IN_type_symbol = param_data_type;
       
 10728             last_type_symbol = param_data_type;
       
 10729             
       
 10730             if (typeid(*last_type_symbol) == typeid(dword_type_name_c))
       
 10731             {
       
 10732         
       
 10733                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
       
 10734                 s4o.print("(");
       
 10735                 return_type_symbol->accept(*this);
       
 10736                 s4o.print(")");
       
 10737                 IN_param_value->accept(*this);
       
 10738                 return NULL;
       
 10739                 
       
 10740             }
       
 10741             
       
 10742             ERROR;
       
 10743         }
       
 10744         
       
 10745     }/*function_dword_to_bool*/
       
 10746     break;
       
 10747 
       
 10748 /****
       
 10749  *DWORD_TO_SINT
       
 10750  */
       
 10751     case function_dword_to_sint :
       
 10752     {
       
 10753         symbol_c *last_type_symbol = NULL;
       
 10754 
       
 10755         {
       
 10756             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10757             symbol_c *IN_param_value = &this->default_variable_name;
       
 10758         
       
 10759             symbol_c *IN_type_symbol = param_data_type;
       
 10760             last_type_symbol = param_data_type;
       
 10761             
       
 10762             if (typeid(*last_type_symbol) == typeid(dword_type_name_c))
       
 10763             {
       
 10764         
       
 10765                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
       
 10766                 s4o.print("(");
       
 10767                 return_type_symbol->accept(*this);
       
 10768                 s4o.print(")");
       
 10769                 IN_param_value->accept(*this);
       
 10770                 return NULL;
       
 10771                 
       
 10772             }
       
 10773             
       
 10774             ERROR;
       
 10775         }
       
 10776         
       
 10777     }/*function_dword_to_sint*/
       
 10778     break;
       
 10779 
       
 10780 /****
       
 10781  *DWORD_TO_INT
       
 10782  */
       
 10783     case function_dword_to_int :
       
 10784     {
       
 10785         symbol_c *last_type_symbol = NULL;
       
 10786 
       
 10787         {
       
 10788             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10789             symbol_c *IN_param_value = &this->default_variable_name;
       
 10790         
       
 10791             symbol_c *IN_type_symbol = param_data_type;
       
 10792             last_type_symbol = param_data_type;
       
 10793             
       
 10794             if (typeid(*last_type_symbol) == typeid(dword_type_name_c))
       
 10795             {
       
 10796         
       
 10797                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
       
 10798                 s4o.print("(");
       
 10799                 return_type_symbol->accept(*this);
       
 10800                 s4o.print(")");
       
 10801                 IN_param_value->accept(*this);
       
 10802                 return NULL;
       
 10803                 
       
 10804             }
       
 10805             
       
 10806             ERROR;
       
 10807         }
       
 10808         
       
 10809     }/*function_dword_to_int*/
       
 10810     break;
       
 10811 
       
 10812 /****
       
 10813  *DWORD_TO_DINT
       
 10814  */
       
 10815     case function_dword_to_dint :
       
 10816     {
       
 10817         symbol_c *last_type_symbol = NULL;
       
 10818 
       
 10819         {
       
 10820             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10821             symbol_c *IN_param_value = &this->default_variable_name;
       
 10822         
       
 10823             symbol_c *IN_type_symbol = param_data_type;
       
 10824             last_type_symbol = param_data_type;
       
 10825             
       
 10826             if (typeid(*last_type_symbol) == typeid(dword_type_name_c))
       
 10827             {
       
 10828         
       
 10829                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
       
 10830                 s4o.print("(");
       
 10831                 return_type_symbol->accept(*this);
       
 10832                 s4o.print(")");
       
 10833                 IN_param_value->accept(*this);
       
 10834                 return NULL;
       
 10835                 
       
 10836             }
       
 10837             
       
 10838             ERROR;
       
 10839         }
       
 10840         
       
 10841     }/*function_dword_to_dint*/
       
 10842     break;
       
 10843 
       
 10844 /****
       
 10845  *DWORD_TO_LINT
       
 10846  */
       
 10847     case function_dword_to_lint :
       
 10848     {
       
 10849         symbol_c *last_type_symbol = NULL;
       
 10850 
       
 10851         {
       
 10852             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10853             symbol_c *IN_param_value = &this->default_variable_name;
       
 10854         
       
 10855             symbol_c *IN_type_symbol = param_data_type;
       
 10856             last_type_symbol = param_data_type;
       
 10857             
       
 10858             if (typeid(*last_type_symbol) == typeid(dword_type_name_c))
       
 10859             {
       
 10860         
       
 10861                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
       
 10862                 s4o.print("(");
       
 10863                 return_type_symbol->accept(*this);
       
 10864                 s4o.print(")");
       
 10865                 IN_param_value->accept(*this);
       
 10866                 return NULL;
       
 10867                 
       
 10868             }
       
 10869             
       
 10870             ERROR;
       
 10871         }
       
 10872         
       
 10873     }/*function_dword_to_lint*/
       
 10874     break;
       
 10875 
       
 10876 /****
       
 10877  *DWORD_TO_USINT
       
 10878  */
       
 10879     case function_dword_to_usint :
       
 10880     {
       
 10881         symbol_c *last_type_symbol = NULL;
       
 10882 
       
 10883         {
       
 10884             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10885             symbol_c *IN_param_value = &this->default_variable_name;
       
 10886         
       
 10887             symbol_c *IN_type_symbol = param_data_type;
       
 10888             last_type_symbol = param_data_type;
       
 10889             
       
 10890             if (typeid(*last_type_symbol) == typeid(dword_type_name_c))
       
 10891             {
       
 10892         
       
 10893                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
       
 10894                 s4o.print("(");
       
 10895                 return_type_symbol->accept(*this);
       
 10896                 s4o.print(")");
       
 10897                 IN_param_value->accept(*this);
       
 10898                 return NULL;
       
 10899                 
       
 10900             }
       
 10901             
       
 10902             ERROR;
       
 10903         }
       
 10904         
       
 10905     }/*function_dword_to_usint*/
       
 10906     break;
       
 10907 
       
 10908 /****
       
 10909  *DWORD_TO_UINT
       
 10910  */
       
 10911     case function_dword_to_uint :
       
 10912     {
       
 10913         symbol_c *last_type_symbol = NULL;
       
 10914 
       
 10915         {
       
 10916             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10917             symbol_c *IN_param_value = &this->default_variable_name;
       
 10918         
       
 10919             symbol_c *IN_type_symbol = param_data_type;
       
 10920             last_type_symbol = param_data_type;
       
 10921             
       
 10922             if (typeid(*last_type_symbol) == typeid(dword_type_name_c))
       
 10923             {
       
 10924         
       
 10925                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
       
 10926                 s4o.print("(");
       
 10927                 return_type_symbol->accept(*this);
       
 10928                 s4o.print(")");
       
 10929                 IN_param_value->accept(*this);
       
 10930                 return NULL;
       
 10931                 
       
 10932             }
       
 10933             
       
 10934             ERROR;
       
 10935         }
       
 10936         
       
 10937     }/*function_dword_to_uint*/
       
 10938     break;
       
 10939 
       
 10940 /****
       
 10941  *DWORD_TO_UDINT
       
 10942  */
       
 10943     case function_dword_to_udint :
       
 10944     {
       
 10945         symbol_c *last_type_symbol = NULL;
       
 10946 
       
 10947         {
       
 10948             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10949             symbol_c *IN_param_value = &this->default_variable_name;
       
 10950         
       
 10951             symbol_c *IN_type_symbol = param_data_type;
       
 10952             last_type_symbol = param_data_type;
       
 10953             
       
 10954             if (typeid(*last_type_symbol) == typeid(dword_type_name_c))
       
 10955             {
       
 10956         
       
 10957                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
       
 10958                 s4o.print("(");
       
 10959                 return_type_symbol->accept(*this);
       
 10960                 s4o.print(")");
       
 10961                 IN_param_value->accept(*this);
       
 10962                 return NULL;
       
 10963                 
       
 10964             }
       
 10965             
       
 10966             ERROR;
       
 10967         }
       
 10968         
       
 10969     }/*function_dword_to_udint*/
       
 10970     break;
       
 10971 
       
 10972 /****
       
 10973  *DWORD_TO_ULINT
       
 10974  */
       
 10975     case function_dword_to_ulint :
       
 10976     {
       
 10977         symbol_c *last_type_symbol = NULL;
       
 10978 
       
 10979         {
       
 10980             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 10981             symbol_c *IN_param_value = &this->default_variable_name;
       
 10982         
       
 10983             symbol_c *IN_type_symbol = param_data_type;
       
 10984             last_type_symbol = param_data_type;
       
 10985             
       
 10986             if (typeid(*last_type_symbol) == typeid(dword_type_name_c))
       
 10987             {
       
 10988         
       
 10989                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
       
 10990                 s4o.print("(");
       
 10991                 return_type_symbol->accept(*this);
       
 10992                 s4o.print(")");
       
 10993                 IN_param_value->accept(*this);
       
 10994                 return NULL;
       
 10995                 
       
 10996             }
       
 10997             
       
 10998             ERROR;
       
 10999         }
       
 11000         
       
 11001     }/*function_dword_to_ulint*/
       
 11002     break;
       
 11003 
       
 11004 /****
       
 11005  *DWORD_TO_REAL
       
 11006  */
       
 11007     case function_dword_to_real :
       
 11008     {
       
 11009         symbol_c *last_type_symbol = NULL;
       
 11010 
       
 11011         {
       
 11012             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 11013             symbol_c *IN_param_value = &this->default_variable_name;
       
 11014         
       
 11015             symbol_c *IN_type_symbol = param_data_type;
       
 11016             last_type_symbol = param_data_type;
       
 11017             
       
 11018             if (typeid(*last_type_symbol) == typeid(dword_type_name_c))
       
 11019             {
       
 11020         
       
 11021                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
       
 11022                 s4o.print("(");
       
 11023                 return_type_symbol->accept(*this);
       
 11024                 s4o.print(")");
       
 11025                 IN_param_value->accept(*this);
       
 11026                 return NULL;
       
 11027                 
       
 11028             }
       
 11029             
       
 11030             ERROR;
       
 11031         }
       
 11032         
       
 11033     }/*function_dword_to_real*/
       
 11034     break;
       
 11035 
       
 11036 /****
       
 11037  *DWORD_TO_LREAL
       
 11038  */
       
 11039     case function_dword_to_lreal :
       
 11040     {
       
 11041         symbol_c *last_type_symbol = NULL;
       
 11042 
       
 11043         {
       
 11044             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 11045             symbol_c *IN_param_value = &this->default_variable_name;
       
 11046         
       
 11047             symbol_c *IN_type_symbol = param_data_type;
       
 11048             last_type_symbol = param_data_type;
       
 11049             
       
 11050             if (typeid(*last_type_symbol) == typeid(dword_type_name_c))
       
 11051             {
       
 11052         
       
 11053                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
       
 11054                 s4o.print("(");
       
 11055                 return_type_symbol->accept(*this);
       
 11056                 s4o.print(")");
       
 11057                 IN_param_value->accept(*this);
       
 11058                 return NULL;
       
 11059                 
       
 11060             }
       
 11061             
       
 11062             ERROR;
       
 11063         }
       
 11064         
       
 11065     }/*function_dword_to_lreal*/
       
 11066     break;
       
 11067 
       
 11068 /****
       
 11069  *DWORD_TO_TIME
       
 11070  */
       
 11071     case function_dword_to_time :
       
 11072     {
       
 11073         symbol_c *last_type_symbol = NULL;
       
 11074 
       
 11075         {
       
 11076             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 11077             symbol_c *IN_param_value = &this->default_variable_name;
       
 11078         
       
 11079             symbol_c *IN_type_symbol = param_data_type;
       
 11080             last_type_symbol = param_data_type;
       
 11081             
       
 11082             if (typeid(*last_type_symbol) == typeid(dword_type_name_c))
       
 11083             {
       
 11084         
       
 11085                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
       
 11086                 s4o.print("(");
       
 11087                 return_type_symbol->accept(*this);
       
 11088                 s4o.print(")__int_to_time(");
       
 11089                 IN_param_value->accept(*this);
       
 11090                 s4o.print(")");
       
 11091                 return NULL;
       
 11092                 
       
 11093             }
       
 11094             
       
 11095             ERROR;
       
 11096         }
       
 11097         
       
 11098     }/*function_dword_to_time*/
       
 11099     break;
       
 11100 
       
 11101 /****
       
 11102  *DWORD_TO_DATE
       
 11103  */
       
 11104     case function_dword_to_date :
       
 11105     {
       
 11106         symbol_c *last_type_symbol = NULL;
       
 11107 
       
 11108         {
       
 11109             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 11110             symbol_c *IN_param_value = &this->default_variable_name;
       
 11111         
       
 11112             symbol_c *IN_type_symbol = param_data_type;
       
 11113             last_type_symbol = param_data_type;
       
 11114             
       
 11115             if (typeid(*last_type_symbol) == typeid(dword_type_name_c))
       
 11116             {
       
 11117         
       
 11118                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
       
 11119                 s4o.print("(");
       
 11120                 return_type_symbol->accept(*this);
       
 11121                 s4o.print(")__int_to_time(");
       
 11122                 IN_param_value->accept(*this);
       
 11123                 s4o.print(")");
       
 11124                 return NULL;
       
 11125                 
       
 11126             }
       
 11127             
       
 11128             ERROR;
       
 11129         }
       
 11130         
       
 11131     }/*function_dword_to_date*/
       
 11132     break;
       
 11133 
       
 11134 /****
       
 11135  *DWORD_TO_TOD
       
 11136  */
       
 11137     case function_dword_to_tod :
       
 11138     {
       
 11139         symbol_c *last_type_symbol = NULL;
       
 11140 
       
 11141         {
       
 11142             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 11143             symbol_c *IN_param_value = &this->default_variable_name;
       
 11144         
       
 11145             symbol_c *IN_type_symbol = param_data_type;
       
 11146             last_type_symbol = param_data_type;
       
 11147             
       
 11148             if (typeid(*last_type_symbol) == typeid(dword_type_name_c))
       
 11149             {
       
 11150         
       
 11151                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
       
 11152                 s4o.print("(");
       
 11153                 return_type_symbol->accept(*this);
       
 11154                 s4o.print(")__int_to_time(");
       
 11155                 IN_param_value->accept(*this);
       
 11156                 s4o.print(")");
       
 11157                 return NULL;
       
 11158                 
       
 11159             }
       
 11160             
       
 11161             ERROR;
       
 11162         }
       
 11163         
       
 11164     }/*function_dword_to_tod*/
       
 11165     break;
       
 11166 
       
 11167 /****
       
 11168  *DWORD_TO_DT
       
 11169  */
       
 11170     case function_dword_to_dt :
       
 11171     {
       
 11172         symbol_c *last_type_symbol = NULL;
       
 11173 
       
 11174         {
       
 11175             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 11176             symbol_c *IN_param_value = &this->default_variable_name;
       
 11177         
       
 11178             symbol_c *IN_type_symbol = param_data_type;
       
 11179             last_type_symbol = param_data_type;
       
 11180             
       
 11181             if (typeid(*last_type_symbol) == typeid(dword_type_name_c))
       
 11182             {
       
 11183         
       
 11184                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
       
 11185                 s4o.print("(");
       
 11186                 return_type_symbol->accept(*this);
       
 11187                 s4o.print(")__int_to_time(");
       
 11188                 IN_param_value->accept(*this);
       
 11189                 s4o.print(")");
       
 11190                 return NULL;
       
 11191                 
       
 11192             }
       
 11193             
       
 11194             ERROR;
       
 11195         }
       
 11196         
       
 11197     }/*function_dword_to_dt*/
       
 11198     break;
       
 11199 
       
 11200 /****
       
 11201  *DWORD_TO_STRING
       
 11202  */
       
 11203     case function_dword_to_string :
       
 11204     {
       
 11205         symbol_c *last_type_symbol = NULL;
       
 11206 
       
 11207         {
       
 11208             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 11209             symbol_c *IN_param_value = &this->default_variable_name;
       
 11210         
       
 11211             symbol_c *IN_type_symbol = param_data_type;
       
 11212             last_type_symbol = param_data_type;
       
 11213             
       
 11214             if (typeid(*last_type_symbol) == typeid(dword_type_name_c))
       
 11215             {
       
 11216         
       
 11217                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
       
 11218                 s4o.print("(");
       
 11219                 return_type_symbol->accept(*this);
       
 11220                 s4o.print(")__bit_to_string(");
       
 11221                 IN_param_value->accept(*this);
       
 11222                 s4o.print(")");
       
 11223                 return NULL;
       
 11224                 
       
 11225             }
       
 11226             
       
 11227             ERROR;
       
 11228         }
       
 11229         
       
 11230     }/*function_dword_to_string*/
       
 11231     break;
       
 11232 
       
 11233 /****
       
 11234  *DWORD_TO_BYTE
       
 11235  */
       
 11236     case function_dword_to_byte :
       
 11237     {
       
 11238         symbol_c *last_type_symbol = NULL;
       
 11239 
       
 11240         {
       
 11241             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 11242             symbol_c *IN_param_value = &this->default_variable_name;
       
 11243         
       
 11244             symbol_c *IN_type_symbol = param_data_type;
       
 11245             last_type_symbol = param_data_type;
       
 11246             
       
 11247             if (typeid(*last_type_symbol) == typeid(dword_type_name_c))
       
 11248             {
       
 11249         
       
 11250                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
       
 11251                 s4o.print("(");
       
 11252                 return_type_symbol->accept(*this);
       
 11253                 s4o.print(")");
       
 11254                 IN_param_value->accept(*this);
       
 11255                 return NULL;
       
 11256                 
       
 11257             }
       
 11258             
       
 11259             ERROR;
       
 11260         }
       
 11261         
       
 11262     }/*function_dword_to_byte*/
       
 11263     break;
       
 11264 
       
 11265 /****
       
 11266  *DWORD_TO_WORD
       
 11267  */
       
 11268     case function_dword_to_word :
       
 11269     {
       
 11270         symbol_c *last_type_symbol = NULL;
       
 11271 
       
 11272         {
       
 11273             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 11274             symbol_c *IN_param_value = &this->default_variable_name;
       
 11275         
       
 11276             symbol_c *IN_type_symbol = param_data_type;
       
 11277             last_type_symbol = param_data_type;
       
 11278             
       
 11279             if (typeid(*last_type_symbol) == typeid(dword_type_name_c))
       
 11280             {
       
 11281         
       
 11282                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
       
 11283                 s4o.print("(");
       
 11284                 return_type_symbol->accept(*this);
       
 11285                 s4o.print(")");
       
 11286                 IN_param_value->accept(*this);
       
 11287                 return NULL;
       
 11288                 
       
 11289             }
       
 11290             
       
 11291             ERROR;
       
 11292         }
       
 11293         
       
 11294     }/*function_dword_to_word*/
       
 11295     break;
       
 11296 
       
 11297 /****
       
 11298  *DWORD_TO_LWORD
       
 11299  */
       
 11300     case function_dword_to_lword :
       
 11301     {
       
 11302         symbol_c *last_type_symbol = NULL;
       
 11303 
       
 11304         {
       
 11305             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 11306             symbol_c *IN_param_value = &this->default_variable_name;
       
 11307         
       
 11308             symbol_c *IN_type_symbol = param_data_type;
       
 11309             last_type_symbol = param_data_type;
       
 11310             
       
 11311             if (typeid(*last_type_symbol) == typeid(dword_type_name_c))
       
 11312             {
       
 11313         
       
 11314                 symbol_c * return_type_symbol = &search_constant_type_c::lword_type_name;
       
 11315                 s4o.print("(");
       
 11316                 return_type_symbol->accept(*this);
       
 11317                 s4o.print(")");
       
 11318                 IN_param_value->accept(*this);
       
 11319                 return NULL;
       
 11320                 
       
 11321             }
       
 11322             
       
 11323             ERROR;
       
 11324         }
       
 11325         
       
 11326     }/*function_dword_to_lword*/
       
 11327     break;
       
 11328 
       
 11329 /****
       
 11330  *LWORD_TO_BOOL
       
 11331  */
       
 11332     case function_lword_to_bool :
       
 11333     {
       
 11334         symbol_c *last_type_symbol = NULL;
       
 11335 
       
 11336         {
       
 11337             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 11338             symbol_c *IN_param_value = &this->default_variable_name;
       
 11339         
       
 11340             symbol_c *IN_type_symbol = param_data_type;
       
 11341             last_type_symbol = param_data_type;
       
 11342             
       
 11343             if (typeid(*last_type_symbol) == typeid(lword_type_name_c))
       
 11344             {
       
 11345         
       
 11346                 symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
       
 11347                 s4o.print("(");
       
 11348                 return_type_symbol->accept(*this);
       
 11349                 s4o.print(")");
       
 11350                 IN_param_value->accept(*this);
       
 11351                 return NULL;
       
 11352                 
       
 11353             }
       
 11354             
       
 11355             ERROR;
       
 11356         }
       
 11357         
       
 11358     }/*function_lword_to_bool*/
       
 11359     break;
       
 11360 
       
 11361 /****
       
 11362  *LWORD_TO_SINT
       
 11363  */
       
 11364     case function_lword_to_sint :
       
 11365     {
       
 11366         symbol_c *last_type_symbol = NULL;
       
 11367 
       
 11368         {
       
 11369             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 11370             symbol_c *IN_param_value = &this->default_variable_name;
       
 11371         
       
 11372             symbol_c *IN_type_symbol = param_data_type;
       
 11373             last_type_symbol = param_data_type;
       
 11374             
       
 11375             if (typeid(*last_type_symbol) == typeid(lword_type_name_c))
       
 11376             {
       
 11377         
       
 11378                 symbol_c * return_type_symbol = &search_constant_type_c::sint_type_name;
       
 11379                 s4o.print("(");
       
 11380                 return_type_symbol->accept(*this);
       
 11381                 s4o.print(")");
       
 11382                 IN_param_value->accept(*this);
       
 11383                 return NULL;
       
 11384                 
       
 11385             }
       
 11386             
       
 11387             ERROR;
       
 11388         }
       
 11389         
       
 11390     }/*function_lword_to_sint*/
       
 11391     break;
       
 11392 
       
 11393 /****
       
 11394  *LWORD_TO_INT
       
 11395  */
       
 11396     case function_lword_to_int :
       
 11397     {
       
 11398         symbol_c *last_type_symbol = NULL;
       
 11399 
       
 11400         {
       
 11401             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 11402             symbol_c *IN_param_value = &this->default_variable_name;
       
 11403         
       
 11404             symbol_c *IN_type_symbol = param_data_type;
       
 11405             last_type_symbol = param_data_type;
       
 11406             
       
 11407             if (typeid(*last_type_symbol) == typeid(lword_type_name_c))
       
 11408             {
       
 11409         
       
 11410                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
       
 11411                 s4o.print("(");
       
 11412                 return_type_symbol->accept(*this);
       
 11413                 s4o.print(")");
       
 11414                 IN_param_value->accept(*this);
       
 11415                 return NULL;
       
 11416                 
       
 11417             }
       
 11418             
       
 11419             ERROR;
       
 11420         }
       
 11421         
       
 11422     }/*function_lword_to_int*/
       
 11423     break;
       
 11424 
       
 11425 /****
       
 11426  *LWORD_TO_DINT
       
 11427  */
       
 11428     case function_lword_to_dint :
       
 11429     {
       
 11430         symbol_c *last_type_symbol = NULL;
       
 11431 
       
 11432         {
       
 11433             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 11434             symbol_c *IN_param_value = &this->default_variable_name;
       
 11435         
       
 11436             symbol_c *IN_type_symbol = param_data_type;
       
 11437             last_type_symbol = param_data_type;
       
 11438             
       
 11439             if (typeid(*last_type_symbol) == typeid(lword_type_name_c))
       
 11440             {
       
 11441         
       
 11442                 symbol_c * return_type_symbol = &search_constant_type_c::dint_type_name;
       
 11443                 s4o.print("(");
       
 11444                 return_type_symbol->accept(*this);
       
 11445                 s4o.print(")");
       
 11446                 IN_param_value->accept(*this);
       
 11447                 return NULL;
       
 11448                 
       
 11449             }
       
 11450             
       
 11451             ERROR;
       
 11452         }
       
 11453         
       
 11454     }/*function_lword_to_dint*/
       
 11455     break;
       
 11456 
       
 11457 /****
       
 11458  *LWORD_TO_LINT
       
 11459  */
       
 11460     case function_lword_to_lint :
       
 11461     {
       
 11462         symbol_c *last_type_symbol = NULL;
       
 11463 
       
 11464         {
       
 11465             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 11466             symbol_c *IN_param_value = &this->default_variable_name;
       
 11467         
       
 11468             symbol_c *IN_type_symbol = param_data_type;
       
 11469             last_type_symbol = param_data_type;
       
 11470             
       
 11471             if (typeid(*last_type_symbol) == typeid(lword_type_name_c))
       
 11472             {
       
 11473         
       
 11474                 symbol_c * return_type_symbol = &search_constant_type_c::lint_type_name;
       
 11475                 s4o.print("(");
       
 11476                 return_type_symbol->accept(*this);
       
 11477                 s4o.print(")");
       
 11478                 IN_param_value->accept(*this);
       
 11479                 return NULL;
       
 11480                 
       
 11481             }
       
 11482             
       
 11483             ERROR;
       
 11484         }
       
 11485         
       
 11486     }/*function_lword_to_lint*/
       
 11487     break;
       
 11488 
       
 11489 /****
       
 11490  *LWORD_TO_USINT
       
 11491  */
       
 11492     case function_lword_to_usint :
       
 11493     {
       
 11494         symbol_c *last_type_symbol = NULL;
       
 11495 
       
 11496         {
       
 11497             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 11498             symbol_c *IN_param_value = &this->default_variable_name;
       
 11499         
       
 11500             symbol_c *IN_type_symbol = param_data_type;
       
 11501             last_type_symbol = param_data_type;
       
 11502             
       
 11503             if (typeid(*last_type_symbol) == typeid(lword_type_name_c))
       
 11504             {
       
 11505         
       
 11506                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
       
 11507                 s4o.print("(");
       
 11508                 return_type_symbol->accept(*this);
       
 11509                 s4o.print(")");
       
 11510                 IN_param_value->accept(*this);
       
 11511                 return NULL;
       
 11512                 
       
 11513             }
       
 11514             
       
 11515             ERROR;
       
 11516         }
       
 11517         
       
 11518     }/*function_lword_to_usint*/
       
 11519     break;
       
 11520 
       
 11521 /****
       
 11522  *LWORD_TO_UINT
       
 11523  */
       
 11524     case function_lword_to_uint :
       
 11525     {
       
 11526         symbol_c *last_type_symbol = NULL;
       
 11527 
       
 11528         {
       
 11529             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 11530             symbol_c *IN_param_value = &this->default_variable_name;
       
 11531         
       
 11532             symbol_c *IN_type_symbol = param_data_type;
       
 11533             last_type_symbol = param_data_type;
       
 11534             
       
 11535             if (typeid(*last_type_symbol) == typeid(lword_type_name_c))
       
 11536             {
       
 11537         
       
 11538                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
       
 11539                 s4o.print("(");
       
 11540                 return_type_symbol->accept(*this);
       
 11541                 s4o.print(")");
       
 11542                 IN_param_value->accept(*this);
       
 11543                 return NULL;
       
 11544                 
       
 11545             }
       
 11546             
       
 11547             ERROR;
       
 11548         }
       
 11549         
       
 11550     }/*function_lword_to_uint*/
       
 11551     break;
       
 11552 
       
 11553 /****
       
 11554  *LWORD_TO_UDINT
       
 11555  */
       
 11556     case function_lword_to_udint :
       
 11557     {
       
 11558         symbol_c *last_type_symbol = NULL;
       
 11559 
       
 11560         {
       
 11561             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 11562             symbol_c *IN_param_value = &this->default_variable_name;
       
 11563         
       
 11564             symbol_c *IN_type_symbol = param_data_type;
       
 11565             last_type_symbol = param_data_type;
       
 11566             
       
 11567             if (typeid(*last_type_symbol) == typeid(lword_type_name_c))
       
 11568             {
       
 11569         
       
 11570                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
       
 11571                 s4o.print("(");
       
 11572                 return_type_symbol->accept(*this);
       
 11573                 s4o.print(")");
       
 11574                 IN_param_value->accept(*this);
       
 11575                 return NULL;
       
 11576                 
       
 11577             }
       
 11578             
       
 11579             ERROR;
       
 11580         }
       
 11581         
       
 11582     }/*function_lword_to_udint*/
       
 11583     break;
       
 11584 
       
 11585 /****
       
 11586  *LWORD_TO_ULINT
       
 11587  */
       
 11588     case function_lword_to_ulint :
       
 11589     {
       
 11590         symbol_c *last_type_symbol = NULL;
       
 11591 
       
 11592         {
       
 11593             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 11594             symbol_c *IN_param_value = &this->default_variable_name;
       
 11595         
       
 11596             symbol_c *IN_type_symbol = param_data_type;
       
 11597             last_type_symbol = param_data_type;
       
 11598             
       
 11599             if (typeid(*last_type_symbol) == typeid(lword_type_name_c))
       
 11600             {
       
 11601         
       
 11602                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
       
 11603                 s4o.print("(");
       
 11604                 return_type_symbol->accept(*this);
       
 11605                 s4o.print(")");
       
 11606                 IN_param_value->accept(*this);
       
 11607                 return NULL;
       
 11608                 
       
 11609             }
       
 11610             
       
 11611             ERROR;
       
 11612         }
       
 11613         
       
 11614     }/*function_lword_to_ulint*/
       
 11615     break;
       
 11616 
       
 11617 /****
       
 11618  *LWORD_TO_REAL
       
 11619  */
       
 11620     case function_lword_to_real :
       
 11621     {
       
 11622         symbol_c *last_type_symbol = NULL;
       
 11623 
       
 11624         {
       
 11625             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 11626             symbol_c *IN_param_value = &this->default_variable_name;
       
 11627         
       
 11628             symbol_c *IN_type_symbol = param_data_type;
       
 11629             last_type_symbol = param_data_type;
       
 11630             
       
 11631             if (typeid(*last_type_symbol) == typeid(lword_type_name_c))
       
 11632             {
       
 11633         
       
 11634                 symbol_c * return_type_symbol = &search_constant_type_c::real_type_name;
       
 11635                 s4o.print("(");
       
 11636                 return_type_symbol->accept(*this);
       
 11637                 s4o.print(")");
       
 11638                 IN_param_value->accept(*this);
       
 11639                 return NULL;
       
 11640                 
       
 11641             }
       
 11642             
       
 11643             ERROR;
       
 11644         }
       
 11645         
       
 11646     }/*function_lword_to_real*/
       
 11647     break;
       
 11648 
       
 11649 /****
       
 11650  *LWORD_TO_LREAL
       
 11651  */
       
 11652     case function_lword_to_lreal :
       
 11653     {
       
 11654         symbol_c *last_type_symbol = NULL;
       
 11655 
       
 11656         {
       
 11657             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 11658             symbol_c *IN_param_value = &this->default_variable_name;
       
 11659         
       
 11660             symbol_c *IN_type_symbol = param_data_type;
       
 11661             last_type_symbol = param_data_type;
       
 11662             
       
 11663             if (typeid(*last_type_symbol) == typeid(lword_type_name_c))
       
 11664             {
       
 11665         
       
 11666                 symbol_c * return_type_symbol = &search_constant_type_c::lreal_type_name;
       
 11667                 s4o.print("(");
       
 11668                 return_type_symbol->accept(*this);
       
 11669                 s4o.print(")");
       
 11670                 IN_param_value->accept(*this);
       
 11671                 return NULL;
       
 11672                 
       
 11673             }
       
 11674             
       
 11675             ERROR;
       
 11676         }
       
 11677         
       
 11678     }/*function_lword_to_lreal*/
       
 11679     break;
       
 11680 
       
 11681 /****
       
 11682  *LWORD_TO_TIME
       
 11683  */
       
 11684     case function_lword_to_time :
       
 11685     {
       
 11686         symbol_c *last_type_symbol = NULL;
       
 11687 
       
 11688         {
       
 11689             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 11690             symbol_c *IN_param_value = &this->default_variable_name;
       
 11691         
       
 11692             symbol_c *IN_type_symbol = param_data_type;
       
 11693             last_type_symbol = param_data_type;
       
 11694             
       
 11695             if (typeid(*last_type_symbol) == typeid(lword_type_name_c))
       
 11696             {
       
 11697         
       
 11698                 symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
       
 11699                 s4o.print("(");
       
 11700                 return_type_symbol->accept(*this);
       
 11701                 s4o.print(")__int_to_time(");
       
 11702                 IN_param_value->accept(*this);
       
 11703                 s4o.print(")");
       
 11704                 return NULL;
       
 11705                 
       
 11706             }
       
 11707             
       
 11708             ERROR;
       
 11709         }
       
 11710         
       
 11711     }/*function_lword_to_time*/
       
 11712     break;
       
 11713 
       
 11714 /****
       
 11715  *LWORD_TO_DATE
       
 11716  */
       
 11717     case function_lword_to_date :
       
 11718     {
       
 11719         symbol_c *last_type_symbol = NULL;
       
 11720 
       
 11721         {
       
 11722             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 11723             symbol_c *IN_param_value = &this->default_variable_name;
       
 11724         
       
 11725             symbol_c *IN_type_symbol = param_data_type;
       
 11726             last_type_symbol = param_data_type;
       
 11727             
       
 11728             if (typeid(*last_type_symbol) == typeid(lword_type_name_c))
       
 11729             {
       
 11730         
       
 11731                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
       
 11732                 s4o.print("(");
       
 11733                 return_type_symbol->accept(*this);
       
 11734                 s4o.print(")__int_to_time(");
       
 11735                 IN_param_value->accept(*this);
       
 11736                 s4o.print(")");
       
 11737                 return NULL;
       
 11738                 
       
 11739             }
       
 11740             
       
 11741             ERROR;
       
 11742         }
       
 11743         
       
 11744     }/*function_lword_to_date*/
       
 11745     break;
       
 11746 
       
 11747 /****
       
 11748  *LWORD_TO_TOD
       
 11749  */
       
 11750     case function_lword_to_tod :
       
 11751     {
       
 11752         symbol_c *last_type_symbol = NULL;
       
 11753 
       
 11754         {
       
 11755             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 11756             symbol_c *IN_param_value = &this->default_variable_name;
       
 11757         
       
 11758             symbol_c *IN_type_symbol = param_data_type;
       
 11759             last_type_symbol = param_data_type;
       
 11760             
       
 11761             if (typeid(*last_type_symbol) == typeid(lword_type_name_c))
       
 11762             {
       
 11763         
       
 11764                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
       
 11765                 s4o.print("(");
       
 11766                 return_type_symbol->accept(*this);
       
 11767                 s4o.print(")__int_to_time(");
       
 11768                 IN_param_value->accept(*this);
       
 11769                 s4o.print(")");
       
 11770                 return NULL;
       
 11771                 
       
 11772             }
       
 11773             
       
 11774             ERROR;
       
 11775         }
       
 11776         
       
 11777     }/*function_lword_to_tod*/
       
 11778     break;
       
 11779 
       
 11780 /****
       
 11781  *LWORD_TO_DT
       
 11782  */
       
 11783     case function_lword_to_dt :
       
 11784     {
       
 11785         symbol_c *last_type_symbol = NULL;
       
 11786 
       
 11787         {
       
 11788             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 11789             symbol_c *IN_param_value = &this->default_variable_name;
       
 11790         
       
 11791             symbol_c *IN_type_symbol = param_data_type;
       
 11792             last_type_symbol = param_data_type;
       
 11793             
       
 11794             if (typeid(*last_type_symbol) == typeid(lword_type_name_c))
       
 11795             {
       
 11796         
       
 11797                 symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
       
 11798                 s4o.print("(");
       
 11799                 return_type_symbol->accept(*this);
       
 11800                 s4o.print(")__int_to_time(");
       
 11801                 IN_param_value->accept(*this);
       
 11802                 s4o.print(")");
       
 11803                 return NULL;
       
 11804                 
       
 11805             }
       
 11806             
       
 11807             ERROR;
       
 11808         }
       
 11809         
       
 11810     }/*function_lword_to_dt*/
       
 11811     break;
       
 11812 
       
 11813 /****
       
 11814  *LWORD_TO_STRING
       
 11815  */
       
 11816     case function_lword_to_string :
       
 11817     {
       
 11818         symbol_c *last_type_symbol = NULL;
       
 11819 
       
 11820         {
       
 11821             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 11822             symbol_c *IN_param_value = &this->default_variable_name;
       
 11823         
       
 11824             symbol_c *IN_type_symbol = param_data_type;
       
 11825             last_type_symbol = param_data_type;
       
 11826             
       
 11827             if (typeid(*last_type_symbol) == typeid(lword_type_name_c))
       
 11828             {
       
 11829         
       
 11830                 symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
       
 11831                 s4o.print("(");
       
 11832                 return_type_symbol->accept(*this);
       
 11833                 s4o.print(")__bit_to_string(");
       
 11834                 IN_param_value->accept(*this);
       
 11835                 s4o.print(")");
       
 11836                 return NULL;
       
 11837                 
       
 11838             }
       
 11839             
       
 11840             ERROR;
       
 11841         }
       
 11842         
       
 11843     }/*function_lword_to_string*/
       
 11844     break;
       
 11845 
       
 11846 /****
       
 11847  *LWORD_TO_BYTE
       
 11848  */
       
 11849     case function_lword_to_byte :
       
 11850     {
       
 11851         symbol_c *last_type_symbol = NULL;
       
 11852 
       
 11853         {
       
 11854             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 11855             symbol_c *IN_param_value = &this->default_variable_name;
       
 11856         
       
 11857             symbol_c *IN_type_symbol = param_data_type;
       
 11858             last_type_symbol = param_data_type;
       
 11859             
       
 11860             if (typeid(*last_type_symbol) == typeid(lword_type_name_c))
       
 11861             {
       
 11862         
       
 11863                 symbol_c * return_type_symbol = &search_constant_type_c::byte_type_name;
       
 11864                 s4o.print("(");
       
 11865                 return_type_symbol->accept(*this);
       
 11866                 s4o.print(")");
       
 11867                 IN_param_value->accept(*this);
       
 11868                 return NULL;
       
 11869                 
       
 11870             }
       
 11871             
       
 11872             ERROR;
       
 11873         }
       
 11874         
       
 11875     }/*function_lword_to_byte*/
       
 11876     break;
       
 11877 
       
 11878 /****
       
 11879  *LWORD_TO_WORD
       
 11880  */
       
 11881     case function_lword_to_word :
       
 11882     {
       
 11883         symbol_c *last_type_symbol = NULL;
       
 11884 
       
 11885         {
       
 11886             /* Get the value from a foo(<param_name> = <param_value>) style call */
       
 11887             symbol_c *IN_param_value = &this->default_variable_name;
       
 11888         
       
 11889             symbol_c *IN_type_symbol = param_data_type;
       
 11890             last_type_symbol = param_data_type;
       
 11891             
       
 11892             if (typeid(*last_type_symbol) == typeid(lword_type_name_c))
       
 11893             {
       
 11894         
       
 11895                 symbol_c * return_type_symbol = &search_constant_type_c::word_type_name;
       
 11896                 s4o.print("(");
       
 11897                 return_type_symbol->accept(*this);
       
 11898                 s4o.print(")");
 11766                 s4o.print(")");
 11899                 IN_param_value->accept(*this);
 11767                 IN_param_value->accept(*this);
 11900                 return NULL;
 11768                 return NULL;
 11901                 
 11769                 
 11902             }
 11770             }
 11919             symbol_c *IN_param_value = &this->default_variable_name;
 11787             symbol_c *IN_param_value = &this->default_variable_name;
 11920         
 11788         
 11921             symbol_c *IN_type_symbol = param_data_type;
 11789             symbol_c *IN_type_symbol = param_data_type;
 11922             last_type_symbol = param_data_type;
 11790             last_type_symbol = param_data_type;
 11923             
 11791             
 11924             if (typeid(*last_type_symbol) == typeid(lword_type_name_c))
 11792             if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
 11925             {
 11793             {
 11926         
 11794         
 11927                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
 11795                 symbol_c * return_type_symbol = &search_constant_type_c::dword_type_name;
 11928                 s4o.print("(");
 11796                 s4o.print("(");
 11929                 return_type_symbol->accept(*this);
 11797                 return_type_symbol->accept(*this);
 11981             symbol_c *IN_param_value = &this->default_variable_name;
 11849             symbol_c *IN_param_value = &this->default_variable_name;
 11982         
 11850         
 11983             symbol_c *IN_type_symbol = param_data_type;
 11851             symbol_c *IN_type_symbol = param_data_type;
 11984             last_type_symbol = param_data_type;
 11852             last_type_symbol = param_data_type;
 11985             
 11853             
 11986             if (typeid(*last_type_symbol) == typeid(byte_type_name_c))
 11854             if(search_expression_type->is_same_type(&search_constant_type_c::byte_type_name, last_type_symbol))
 11987             {
 11855             {
 11988         
 11856         
 11989                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
 11857                 symbol_c * return_type_symbol = &search_constant_type_c::usint_type_name;
 11990                 s4o.print("(");
 11858                 s4o.print("(");
 11991                 return_type_symbol->accept(*this);
 11859                 return_type_symbol->accept(*this);
 12014             symbol_c *IN_param_value = &this->default_variable_name;
 11882             symbol_c *IN_param_value = &this->default_variable_name;
 12015         
 11883         
 12016             symbol_c *IN_type_symbol = param_data_type;
 11884             symbol_c *IN_type_symbol = param_data_type;
 12017             last_type_symbol = param_data_type;
 11885             last_type_symbol = param_data_type;
 12018             
 11886             
 12019             if (typeid(*last_type_symbol) == typeid(word_type_name_c))
 11887             if(search_expression_type->is_same_type(&search_constant_type_c::word_type_name, last_type_symbol))
 12020             {
 11888             {
 12021         
 11889         
 12022                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
 11890                 symbol_c * return_type_symbol = &search_constant_type_c::uint_type_name;
 12023                 s4o.print("(");
 11891                 s4o.print("(");
 12024                 return_type_symbol->accept(*this);
 11892                 return_type_symbol->accept(*this);
 12047             symbol_c *IN_param_value = &this->default_variable_name;
 11915             symbol_c *IN_param_value = &this->default_variable_name;
 12048         
 11916         
 12049             symbol_c *IN_type_symbol = param_data_type;
 11917             symbol_c *IN_type_symbol = param_data_type;
 12050             last_type_symbol = param_data_type;
 11918             last_type_symbol = param_data_type;
 12051             
 11919             
 12052             if (typeid(*last_type_symbol) == typeid(dword_type_name_c))
 11920             if(search_expression_type->is_same_type(&search_constant_type_c::dword_type_name, last_type_symbol))
 12053             {
 11921             {
 12054         
 11922         
 12055                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
 11923                 symbol_c * return_type_symbol = &search_constant_type_c::udint_type_name;
 12056                 s4o.print("(");
 11924                 s4o.print("(");
 12057                 return_type_symbol->accept(*this);
 11925                 return_type_symbol->accept(*this);
 12080             symbol_c *IN_param_value = &this->default_variable_name;
 11948             symbol_c *IN_param_value = &this->default_variable_name;
 12081         
 11949         
 12082             symbol_c *IN_type_symbol = param_data_type;
 11950             symbol_c *IN_type_symbol = param_data_type;
 12083             last_type_symbol = param_data_type;
 11951             last_type_symbol = param_data_type;
 12084             
 11952             
 12085             if (typeid(*last_type_symbol) == typeid(lword_type_name_c))
 11953             if(search_expression_type->is_same_type(&search_constant_type_c::lword_type_name, last_type_symbol))
 12086             {
 11954             {
 12087         
 11955         
 12088                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
 11956                 symbol_c * return_type_symbol = &search_constant_type_c::ulint_type_name;
 12089                 s4o.print("(");
 11957                 s4o.print("(");
 12090                 return_type_symbol->accept(*this);
 11958                 return_type_symbol->accept(*this);
 12113             symbol_c *IN_param_value = &this->default_variable_name;
 11981             symbol_c *IN_param_value = &this->default_variable_name;
 12114         
 11982         
 12115             symbol_c *IN_type_symbol = param_data_type;
 11983             symbol_c *IN_type_symbol = param_data_type;
 12116             last_type_symbol = param_data_type;
 11984             last_type_symbol = param_data_type;
 12117             
 11985             
 12118             if (typeid(*last_type_symbol) == typeid(usint_type_name_c))
 11986             if(search_expression_type->is_same_type(&search_constant_type_c::usint_type_name, last_type_symbol))
 12119             {
 11987             {
 12120         
 11988         
 12121                 symbol_c * return_type_symbol = &search_constant_type_c::constant_int_type_name;
 11989                 symbol_c * return_type_symbol = &search_constant_type_c::constant_int_type_name;
 12122                 s4o.print("(");
 11990                 s4o.print("(");
 12123                 return_type_symbol->accept(*this);
 11991                 return_type_symbol->accept(*this);
 12146             symbol_c *IN_param_value = &this->default_variable_name;
 12014             symbol_c *IN_param_value = &this->default_variable_name;
 12147         
 12015         
 12148             symbol_c *IN_type_symbol = param_data_type;
 12016             symbol_c *IN_type_symbol = param_data_type;
 12149             last_type_symbol = param_data_type;
 12017             last_type_symbol = param_data_type;
 12150             
 12018             
 12151             if (typeid(*last_type_symbol) == typeid(uint_type_name_c))
 12019             if(search_expression_type->is_same_type(&search_constant_type_c::uint_type_name, last_type_symbol))
 12152             {
 12020             {
 12153         
 12021         
 12154                 symbol_c * return_type_symbol = &search_constant_type_c::constant_int_type_name;
 12022                 symbol_c * return_type_symbol = &search_constant_type_c::constant_int_type_name;
 12155                 s4o.print("(");
 12023                 s4o.print("(");
 12156                 return_type_symbol->accept(*this);
 12024                 return_type_symbol->accept(*this);
 12179             symbol_c *IN_param_value = &this->default_variable_name;
 12047             symbol_c *IN_param_value = &this->default_variable_name;
 12180         
 12048         
 12181             symbol_c *IN_type_symbol = param_data_type;
 12049             symbol_c *IN_type_symbol = param_data_type;
 12182             last_type_symbol = param_data_type;
 12050             last_type_symbol = param_data_type;
 12183             
 12051             
 12184             if (typeid(*last_type_symbol) == typeid(udint_type_name_c))
 12052             if(search_expression_type->is_same_type(&search_constant_type_c::udint_type_name, last_type_symbol))
 12185             {
 12053             {
 12186         
 12054         
 12187                 symbol_c * return_type_symbol = &search_constant_type_c::constant_int_type_name;
 12055                 symbol_c * return_type_symbol = &search_constant_type_c::constant_int_type_name;
 12188                 s4o.print("(");
 12056                 s4o.print("(");
 12189                 return_type_symbol->accept(*this);
 12057                 return_type_symbol->accept(*this);
 12212             symbol_c *IN_param_value = &this->default_variable_name;
 12080             symbol_c *IN_param_value = &this->default_variable_name;
 12213         
 12081         
 12214             symbol_c *IN_type_symbol = param_data_type;
 12082             symbol_c *IN_type_symbol = param_data_type;
 12215             last_type_symbol = param_data_type;
 12083             last_type_symbol = param_data_type;
 12216             
 12084             
 12217             if (typeid(*last_type_symbol) == typeid(ulint_type_name_c))
 12085             if(search_expression_type->is_same_type(&search_constant_type_c::ulint_type_name, last_type_symbol))
 12218             {
 12086             {
 12219         
 12087         
 12220                 symbol_c * return_type_symbol = &search_constant_type_c::constant_int_type_name;
 12088                 symbol_c * return_type_symbol = &search_constant_type_c::constant_int_type_name;
 12221                 s4o.print("(");
 12089                 s4o.print("(");
 12222                 return_type_symbol->accept(*this);
 12090                 return_type_symbol->accept(*this);
 12245             symbol_c *IN_param_value = &this->default_variable_name;
 12113             symbol_c *IN_param_value = &this->default_variable_name;
 12246         
 12114         
 12247             symbol_c *IN_type_symbol = param_data_type;
 12115             symbol_c *IN_type_symbol = param_data_type;
 12248             last_type_symbol = param_data_type;
 12116             last_type_symbol = param_data_type;
 12249             
 12117             
 12250             if (typeid(*last_type_symbol) == typeid(dt_type_name_c))
 12118             if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
 12251             {
 12119             {
 12252         
 12120         
 12253                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
 12121                 symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
 12254                 s4o.print("__date_and_time_to_time_of_day(");
 12122                 s4o.print("__date_and_time_to_time_of_day(");
 12255                 IN_param_value->accept(*this);
 12123                 IN_param_value->accept(*this);
 12276             symbol_c *IN_param_value = &this->default_variable_name;
 12144             symbol_c *IN_param_value = &this->default_variable_name;
 12277         
 12145         
 12278             symbol_c *IN_type_symbol = param_data_type;
 12146             symbol_c *IN_type_symbol = param_data_type;
 12279             last_type_symbol = param_data_type;
 12147             last_type_symbol = param_data_type;
 12280             
 12148             
 12281             if (typeid(*last_type_symbol) == typeid(dt_type_name_c))
 12149             if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
 12282             {
 12150             {
 12283         
 12151         
 12284                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
 12152                 symbol_c * return_type_symbol = &search_constant_type_c::date_type_name;
 12285                 s4o.print("__date_and_time_to_date(");
 12153                 s4o.print("__date_and_time_to_date(");
 12286                 IN_param_value->accept(*this);
 12154                 IN_param_value->accept(*this);
 12668                     
 12536                     
 12669                     if(search_expression_type->is_num_type(IN2_type_symbol))
 12537                     if(search_expression_type->is_num_type(IN2_type_symbol))
 12670                     {
 12538                     {
 12671                 
 12539                 
 12672                         symbol_c * return_type_symbol = last_type_symbol;
 12540                         symbol_c * return_type_symbol = last_type_symbol;
 12673                         s4o.print("(");
 12541                         s4o.indent_right();
       
 12542                         s4o.print("(\n" + s4o.indent_spaces);
 12674                         IN1_param_value->accept(*this);
 12543                         IN1_param_value->accept(*this);
 12675                         s4o.print("+");
 12544                         s4o.print("+\n" + s4o.indent_spaces);
 12676                         IN2_param_value->accept(*this);
 12545                         IN2_param_value->accept(*this);
 12677                         
 12546                         
 12678                         int base_num = 3;
 12547                         int base_num = 3;
 12679                         symbol_c *param_value = NULL;
 12548                         symbol_c *param_value = NULL;
 12680                         do{
 12549                         do{
 12691                             if (param_value != NULL){
 12560                             if (param_value != NULL){
 12692                                 symbol_c *current_type_symbol = search_expression_type->get_type(param_value);
 12561                                 symbol_c *current_type_symbol = search_expression_type->get_type(param_value);
 12693                                 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(current_type_symbol, last_type_symbol) ? search_expression_type->common_type(current_type_symbol, last_type_symbol) : current_type_symbol ;
 12562                                 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(current_type_symbol, last_type_symbol) ? search_expression_type->common_type(current_type_symbol, last_type_symbol) : current_type_symbol ;
 12694                             
 12563                             
 12695                                 /*Function specific CODE */
 12564                                 /*Function specific CODE */
 12696                                 s4o.print("+");
 12565                                 s4o.print("+\n" + s4o.indent_spaces);
 12697                                 param_value->accept(*this);
 12566                                 param_value->accept(*this);
 12698                                 
 12567                                 
 12699                             }
 12568                             }
 12700                             
 12569                             
 12701                         }while(param_value != NULL);
 12570                         }while(param_value != NULL);
 12702                         s4o.print(")");
 12571                         s4o.print(")");
       
 12572                         s4o.indent_left();
 12703                         return NULL;
 12573                         return NULL;
 12704                         
 12574                         
 12705                         
 12575                         
 12706                     }
 12576                     }
 12707                     
 12577                     
 12708                     ERROR;
 12578                     ERROR;
 12709                 }
 12579                 }
 12710                 
 12580                 
 12711             }
 12581             }
 12712             
 12582             
 12713             if (typeid(*last_type_symbol) == typeid(dt_type_name_c))
 12583             if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
 12714             {
 12584             {
 12715         
 12585         
 12716                 {
 12586                 {
 12717                     identifier_c param_name("IN2");
 12587                     identifier_c param_name("IN2");
 12718                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 12588                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 12722                     if (IN2_param_value == NULL)
 12592                     if (IN2_param_value == NULL)
 12723                       IN2_param_value = function_call_param_iterator.next();
 12593                       IN2_param_value = function_call_param_iterator.next();
 12724                     symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 12594                     symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 12725                     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 ;
 12595                     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 ;
 12726                     
 12596                     
 12727                     if (typeid(*last_type_symbol) == typeid(time_type_name_c))
 12597                     if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 12728                     {
 12598                     {
 12729                 
 12599                 
 12730                         symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
 12600                         symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
 12731                         s4o.print("__time_add(");
 12601                         s4o.print("__time_add(");
 12732                         IN1_param_value->accept(*this);
 12602                         IN1_param_value->accept(*this);
 12740                     ERROR;
 12610                     ERROR;
 12741                 }
 12611                 }
 12742                 
 12612                 
 12743             }
 12613             }
 12744             
 12614             
 12745             if (typeid(*last_type_symbol) == typeid(tod_type_name_c))
 12615             if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol))
 12746             {
 12616             {
 12747         
 12617         
 12748                 {
 12618                 {
 12749                     identifier_c param_name("IN2");
 12619                     identifier_c param_name("IN2");
 12750                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 12620                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 12754                     if (IN2_param_value == NULL)
 12624                     if (IN2_param_value == NULL)
 12755                       IN2_param_value = function_call_param_iterator.next();
 12625                       IN2_param_value = function_call_param_iterator.next();
 12756                     symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 12626                     symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 12757                     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 ;
 12627                     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 ;
 12758                     
 12628                     
 12759                     if (typeid(*last_type_symbol) == typeid(time_type_name_c))
 12629                     if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 12760                     {
 12630                     {
 12761                 
 12631                 
 12762                         symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
 12632                         symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
 12763                         s4o.print("__time_add(");
 12633                         s4o.print("__time_add(");
 12764                         IN1_param_value->accept(*this);
 12634                         IN1_param_value->accept(*this);
 12772                     ERROR;
 12642                     ERROR;
 12773                 }
 12643                 }
 12774                 
 12644                 
 12775             }
 12645             }
 12776             
 12646             
 12777             if (typeid(*last_type_symbol) == typeid(time_type_name_c))
 12647             if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 12778             {
 12648             {
 12779         
 12649         
 12780                 {
 12650                 {
 12781                     identifier_c param_name("IN2");
 12651                     identifier_c param_name("IN2");
 12782                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 12652                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 12786                     if (IN2_param_value == NULL)
 12656                     if (IN2_param_value == NULL)
 12787                       IN2_param_value = function_call_param_iterator.next();
 12657                       IN2_param_value = function_call_param_iterator.next();
 12788                     symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 12658                     symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 12789                     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 ;
 12659                     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 ;
 12790                     
 12660                     
 12791                     if (typeid(*last_type_symbol) == typeid(time_type_name_c))
 12661                     if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 12792                     {
 12662                     {
 12793                 
 12663                 
 12794                         symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
 12664                         symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
 12795                         s4o.print("__time_add(");
 12665                         s4o.print("__time_add(");
 12796                         IN1_param_value->accept(*this);
 12666                         IN1_param_value->accept(*this);
 12842                     
 12712                     
 12843                     if(search_expression_type->is_num_type(IN2_type_symbol))
 12713                     if(search_expression_type->is_num_type(IN2_type_symbol))
 12844                     {
 12714                     {
 12845                 
 12715                 
 12846                         symbol_c * return_type_symbol = last_type_symbol;
 12716                         symbol_c * return_type_symbol = last_type_symbol;
 12847                         s4o.print("(");
 12717                         s4o.indent_right();
       
 12718                         s4o.print("(\n" + s4o.indent_spaces);
 12848                         IN1_param_value->accept(*this);
 12719                         IN1_param_value->accept(*this);
 12849                         s4o.print("*");
 12720                         s4o.print("*\n" + s4o.indent_spaces);
 12850                         IN2_param_value->accept(*this);
 12721                         IN2_param_value->accept(*this);
 12851                         
 12722                         
 12852                         int base_num = 3;
 12723                         int base_num = 3;
 12853                         symbol_c *param_value = NULL;
 12724                         symbol_c *param_value = NULL;
 12854                         do{
 12725                         do{
 12865                             if (param_value != NULL){
 12736                             if (param_value != NULL){
 12866                                 symbol_c *current_type_symbol = search_expression_type->get_type(param_value);
 12737                                 symbol_c *current_type_symbol = search_expression_type->get_type(param_value);
 12867                                 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(current_type_symbol, last_type_symbol) ? search_expression_type->common_type(current_type_symbol, last_type_symbol) : current_type_symbol ;
 12738                                 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(current_type_symbol, last_type_symbol) ? search_expression_type->common_type(current_type_symbol, last_type_symbol) : current_type_symbol ;
 12868                             
 12739                             
 12869                                 /*Function specific CODE */
 12740                                 /*Function specific CODE */
 12870                                 s4o.print("*");
 12741                                 s4o.print("*\n" + s4o.indent_spaces);
 12871                                 param_value->accept(*this);
 12742                                 param_value->accept(*this);
 12872                                 
 12743                                 
 12873                             }
 12744                             }
 12874                             
 12745                             
 12875                         }while(param_value != NULL);
 12746                         }while(param_value != NULL);
 12876                         s4o.print(")");
 12747                         s4o.print(")");
       
 12748                         s4o.indent_left();
 12877                         return NULL;
 12749                         return NULL;
 12878                         
 12750                         
 12879                         
 12751                         
 12880                     }
 12752                     }
 12881                     
 12753                     
 12882                     ERROR;
 12754                     ERROR;
 12883                 }
 12755                 }
 12884                 
 12756                 
 12885             }
 12757             }
 12886             
 12758             
 12887             if (typeid(*last_type_symbol) == typeid(time_type_name_c))
 12759             if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 12888             {
 12760             {
 12889         
 12761         
 12890                 {
 12762                 {
 12891                     identifier_c param_name("IN2");
 12763                     identifier_c param_name("IN2");
 12892                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 12764                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 12952                     
 12824                     
 12953                     if(search_expression_type->is_num_type(IN2_type_symbol))
 12825                     if(search_expression_type->is_num_type(IN2_type_symbol))
 12954                     {
 12826                     {
 12955                 
 12827                 
 12956                         symbol_c * return_type_symbol = last_type_symbol;
 12828                         symbol_c * return_type_symbol = last_type_symbol;
 12957                         s4o.print("(");
 12829                         s4o.indent_right();
       
 12830                         s4o.print("(\n" + s4o.indent_spaces);
 12958                         IN1_param_value->accept(*this);
 12831                         IN1_param_value->accept(*this);
 12959                         s4o.print("-");
 12832                         s4o.print("-\n" + s4o.indent_spaces);
 12960                         IN2_param_value->accept(*this);
 12833                         IN2_param_value->accept(*this);
 12961                         s4o.print(")");
 12834                         s4o.print(")");
       
 12835                         s4o.indent_left();
 12962                         return NULL;
 12836                         return NULL;
 12963                         
 12837                         
 12964                     }
 12838                     }
 12965                     
 12839                     
 12966                     ERROR;
 12840                     ERROR;
 12967                 }
 12841                 }
 12968                 
 12842                 
 12969             }
 12843             }
 12970             
 12844             
 12971             if (typeid(*last_type_symbol) == typeid(date_type_name_c))
 12845             if(search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol))
 12972             {
 12846             {
 12973         
 12847         
 12974                 {
 12848                 {
 12975                     identifier_c param_name("IN2");
 12849                     identifier_c param_name("IN2");
 12976                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 12850                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 12980                     if (IN2_param_value == NULL)
 12854                     if (IN2_param_value == NULL)
 12981                       IN2_param_value = function_call_param_iterator.next();
 12855                       IN2_param_value = function_call_param_iterator.next();
 12982                     symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 12856                     symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 12983                     last_type_symbol = last_type_symbol && search_expression_type->is_same_type(IN2_type_symbol, last_type_symbol) ? search_expression_type->common_type(IN2_type_symbol, last_type_symbol) : IN2_type_symbol ;
 12857                     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 ;
 12984                     
 12858                     
 12985                     if (typeid(*last_type_symbol) == typeid(date_type_name_c))
 12859                     if(search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol))
 12986                     {
 12860                     {
 12987                 
 12861                 
 12988                         symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
 12862                         symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
 12989                         s4o.print("__time_sub(");
 12863                         s4o.print("__time_sub(");
 12990                         IN1_param_value->accept(*this);
 12864                         IN1_param_value->accept(*this);
 12998                     ERROR;
 12872                     ERROR;
 12999                 }
 12873                 }
 13000                 
 12874                 
 13001             }
 12875             }
 13002             
 12876             
 13003             if (typeid(*last_type_symbol) == typeid(dt_type_name_c))
 12877             if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
 13004             {
 12878             {
 13005         
 12879         
 13006                 {
 12880                 {
 13007                     identifier_c param_name("IN2");
 12881                     identifier_c param_name("IN2");
 13008                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 12882                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 13012                     if (IN2_param_value == NULL)
 12886                     if (IN2_param_value == NULL)
 13013                       IN2_param_value = function_call_param_iterator.next();
 12887                       IN2_param_value = function_call_param_iterator.next();
 13014                     symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 12888                     symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 13015                     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 ;
 12889                     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 ;
 13016                     
 12890                     
 13017                     if (typeid(*last_type_symbol) == typeid(dt_type_name_c))
 12891                     if(search_expression_type->is_same_type(&search_constant_type_c::dt_type_name, last_type_symbol))
 13018                     {
 12892                     {
 13019                 
 12893                 
 13020                         symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
 12894                         symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
 13021                         s4o.print("__time_sub(");
 12895                         s4o.print("__time_sub(");
 13022                         IN1_param_value->accept(*this);
 12896                         IN1_param_value->accept(*this);
 13025                         s4o.print(")");
 12899                         s4o.print(")");
 13026                         return NULL;
 12900                         return NULL;
 13027                         
 12901                         
 13028                     }
 12902                     }
 13029                     
 12903                     
 13030                     if (typeid(*last_type_symbol) == typeid(time_type_name_c))
 12904                     if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 13031                     {
 12905                     {
 13032                 
 12906                 
 13033                         symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
 12907                         symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
 13034                         s4o.print("__time_sub(");
 12908                         s4o.print("__time_sub(");
 13035                         IN1_param_value->accept(*this);
 12909                         IN1_param_value->accept(*this);
 13043                     ERROR;
 12917                     ERROR;
 13044                 }
 12918                 }
 13045                 
 12919                 
 13046             }
 12920             }
 13047             
 12921             
 13048             if (typeid(*last_type_symbol) == typeid(tod_type_name_c))
 12922             if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol))
 13049             {
 12923             {
 13050         
 12924         
 13051                 {
 12925                 {
 13052                     identifier_c param_name("IN2");
 12926                     identifier_c param_name("IN2");
 13053                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 12927                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 13057                     if (IN2_param_value == NULL)
 12931                     if (IN2_param_value == NULL)
 13058                       IN2_param_value = function_call_param_iterator.next();
 12932                       IN2_param_value = function_call_param_iterator.next();
 13059                     symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 12933                     symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 13060                     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 ;
 12934                     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 ;
 13061                     
 12935                     
 13062                     if (typeid(*last_type_symbol) == typeid(tod_type_name_c))
 12936                     if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol))
 13063                     {
 12937                     {
 13064                 
 12938                 
 13065                         symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
 12939                         symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
 13066                         s4o.print("__time_sub(");
 12940                         s4o.print("__time_sub(");
 13067                         IN1_param_value->accept(*this);
 12941                         IN1_param_value->accept(*this);
 13070                         s4o.print(")");
 12944                         s4o.print(")");
 13071                         return NULL;
 12945                         return NULL;
 13072                         
 12946                         
 13073                     }
 12947                     }
 13074                     
 12948                     
 13075                     if (typeid(*last_type_symbol) == typeid(time_type_name_c))
 12949                     if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 13076                     {
 12950                     {
 13077                 
 12951                 
 13078                         symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
 12952                         symbol_c * return_type_symbol = &search_constant_type_c::tod_type_name;
 13079                         s4o.print("__time_sub(");
 12953                         s4o.print("__time_sub(");
 13080                         IN1_param_value->accept(*this);
 12954                         IN1_param_value->accept(*this);
 13088                     ERROR;
 12962                     ERROR;
 13089                 }
 12963                 }
 13090                 
 12964                 
 13091             }
 12965             }
 13092             
 12966             
 13093             if (typeid(*last_type_symbol) == typeid(time_type_name_c))
 12967             if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 13094             {
 12968             {
 13095         
 12969         
 13096                 {
 12970                 {
 13097                     identifier_c param_name("IN2");
 12971                     identifier_c param_name("IN2");
 13098                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 12972                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 13102                     if (IN2_param_value == NULL)
 12976                     if (IN2_param_value == NULL)
 13103                       IN2_param_value = function_call_param_iterator.next();
 12977                       IN2_param_value = function_call_param_iterator.next();
 13104                     symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 12978                     symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 13105                     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 ;
 12979                     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 ;
 13106                     
 12980                     
 13107                     if (typeid(*last_type_symbol) == typeid(time_type_name_c))
 12981                     if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 13108                     {
 12982                     {
 13109                 
 12983                 
 13110                         symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
 12984                         symbol_c * return_type_symbol = &search_constant_type_c::time_type_name;
 13111                         s4o.print("__time_sub(");
 12985                         s4o.print("__time_sub(");
 13112                         IN1_param_value->accept(*this);
 12986                         IN1_param_value->accept(*this);
 13158                     
 13032                     
 13159                     if(search_expression_type->is_num_type(IN2_type_symbol))
 13033                     if(search_expression_type->is_num_type(IN2_type_symbol))
 13160                     {
 13034                     {
 13161                 
 13035                 
 13162                         symbol_c * return_type_symbol = last_type_symbol;
 13036                         symbol_c * return_type_symbol = last_type_symbol;
 13163                         s4o.print("(");
 13037                         s4o.indent_right();
       
 13038                         s4o.print("(\n" + s4o.indent_spaces);
 13164                         IN1_param_value->accept(*this);
 13039                         IN1_param_value->accept(*this);
 13165                         s4o.print("/");
 13040                         s4o.print("/\n" + s4o.indent_spaces);
 13166                         IN2_param_value->accept(*this);
 13041                         IN2_param_value->accept(*this);
 13167                         s4o.print(")");
 13042                         s4o.print(")");
       
 13043                         s4o.indent_left();
 13168                         return NULL;
 13044                         return NULL;
 13169                         
 13045                         
 13170                     }
 13046                     }
 13171                     
 13047                     
 13172                     ERROR;
 13048                     ERROR;
 13173                 }
 13049                 }
 13174                 
 13050                 
 13175             }
 13051             }
 13176             
 13052             
 13177             if (typeid(*last_type_symbol) == typeid(time_type_name_c))
 13053             if(search_expression_type->is_same_type(&search_constant_type_c::time_type_name, last_type_symbol))
 13178             {
 13054             {
 13179         
 13055         
 13180                 {
 13056                 {
 13181                     identifier_c param_name("IN2");
 13057                     identifier_c param_name("IN2");
 13182                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 13058                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 13242                     
 13118                     
 13243                     if(search_expression_type->is_num_type(IN2_type_symbol))
 13119                     if(search_expression_type->is_num_type(IN2_type_symbol))
 13244                     {
 13120                     {
 13245                 
 13121                 
 13246                         symbol_c * return_type_symbol = last_type_symbol;
 13122                         symbol_c * return_type_symbol = last_type_symbol;
 13247                         s4o.print("(");
 13123                         s4o.indent_right();
       
 13124                         s4o.print("(\n" + s4o.indent_spaces);
 13248                         IN1_param_value->accept(*this);
 13125                         IN1_param_value->accept(*this);
 13249                         s4o.print("%");
 13126                         s4o.print("%\n" + s4o.indent_spaces);
 13250                         IN2_param_value->accept(*this);
 13127                         IN2_param_value->accept(*this);
 13251                         s4o.print(")");
 13128                         s4o.print(")");
       
 13129                         s4o.indent_left();
 13252                         return NULL;
 13130                         return NULL;
 13253                         
 13131                         
 13254                     }
 13132                     }
 13255                     
 13133                     
 13256                     ERROR;
 13134                     ERROR;
 13583                     
 13461                     
 13584                     if(search_expression_type->is_binary_type(IN2_type_symbol))
 13462                     if(search_expression_type->is_binary_type(IN2_type_symbol))
 13585                     {
 13463                     {
 13586                 
 13464                 
 13587                         symbol_c * return_type_symbol = last_type_symbol;
 13465                         symbol_c * return_type_symbol = last_type_symbol;
       
 13466                         s4o.indent_right();
 13588                         s4o.print("(");
 13467                         s4o.print("(");
 13589                         if (search_expression_type->is_bool_type(last_type_symbol))
 13468                         if (search_expression_type->is_bool_type(last_type_symbol))
 13590                           s4o.print("(");
 13469                           s4o.print("(\n" + s4o.indent_spaces);
 13591                         IN1_param_value->accept(*this);
 13470                         IN1_param_value->accept(*this);
 13592                         s4o.print("&");
 13471                         s4o.print("&\n" + s4o.indent_spaces);
 13593                         IN2_param_value->accept(*this);
 13472                         IN2_param_value->accept(*this);
 13594                         
 13473                         
 13595                         int base_num = 3;
 13474                         int base_num = 3;
 13596                         symbol_c *param_value = NULL;
 13475                         symbol_c *param_value = NULL;
 13597                         do{
 13476                         do{
 13608                             if (param_value != NULL){
 13487                             if (param_value != NULL){
 13609                                 symbol_c *current_type_symbol = search_expression_type->get_type(param_value);
 13488                                 symbol_c *current_type_symbol = search_expression_type->get_type(param_value);
 13610                                 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(current_type_symbol, last_type_symbol) ? search_expression_type->common_type(current_type_symbol, last_type_symbol) : current_type_symbol ;
 13489                                 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(current_type_symbol, last_type_symbol) ? search_expression_type->common_type(current_type_symbol, last_type_symbol) : current_type_symbol ;
 13611                             
 13490                             
 13612                                 /*Function specific CODE */
 13491                                 /*Function specific CODE */
 13613                                 s4o.print("&");
 13492                                 s4o.print("&\n" + s4o.indent_spaces);
 13614                                 param_value->accept(*this);
 13493                                 param_value->accept(*this);
 13615                                 
 13494                                 
 13616                             }
 13495                             }
 13617                             
 13496                             
 13618                         }while(param_value != NULL);
 13497                         }while(param_value != NULL);
 13620                         if (search_expression_type->is_bool_type(last_type_symbol)) {
 13499                         if (search_expression_type->is_bool_type(last_type_symbol)) {
 13621                           s4o.print("&1");
 13500                           s4o.print("&1");
 13622                           s4o.print(")");
 13501                           s4o.print(")");
 13623                         }
 13502                         }
 13624                         s4o.print("");
 13503                         s4o.print("");
       
 13504                         s4o.indent_left();
 13625                         return NULL;
 13505                         return NULL;
 13626                         
 13506                         
 13627                         
 13507                         
 13628                     }
 13508                     }
 13629                     
 13509                     
 13668                     
 13548                     
 13669                     if(search_expression_type->is_binary_type(IN2_type_symbol))
 13549                     if(search_expression_type->is_binary_type(IN2_type_symbol))
 13670                     {
 13550                     {
 13671                 
 13551                 
 13672                         symbol_c * return_type_symbol = last_type_symbol;
 13552                         symbol_c * return_type_symbol = last_type_symbol;
       
 13553                         s4o.indent_right();
 13673                         s4o.print("(");
 13554                         s4o.print("(");
 13674                         if (search_expression_type->is_bool_type(last_type_symbol))
 13555                         if (search_expression_type->is_bool_type(last_type_symbol))
 13675                           s4o.print("(");
 13556                           s4o.print("(\n" + s4o.indent_spaces);
 13676                         IN1_param_value->accept(*this);
 13557                         IN1_param_value->accept(*this);
 13677                         s4o.print("|");
 13558                         s4o.print("|\n" + s4o.indent_spaces);
 13678                         IN2_param_value->accept(*this);
 13559                         IN2_param_value->accept(*this);
 13679                         
 13560                         
 13680                         int base_num = 3;
 13561                         int base_num = 3;
 13681                         symbol_c *param_value = NULL;
 13562                         symbol_c *param_value = NULL;
 13682                         do{
 13563                         do{
 13693                             if (param_value != NULL){
 13574                             if (param_value != NULL){
 13694                                 symbol_c *current_type_symbol = search_expression_type->get_type(param_value);
 13575                                 symbol_c *current_type_symbol = search_expression_type->get_type(param_value);
 13695                                 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(current_type_symbol, last_type_symbol) ? search_expression_type->common_type(current_type_symbol, last_type_symbol) : current_type_symbol ;
 13576                                 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(current_type_symbol, last_type_symbol) ? search_expression_type->common_type(current_type_symbol, last_type_symbol) : current_type_symbol ;
 13696                             
 13577                             
 13697                                 /*Function specific CODE */
 13578                                 /*Function specific CODE */
 13698                                 s4o.print("|");
 13579                                 s4o.print("|\n" + s4o.indent_spaces);
 13699                                 param_value->accept(*this);
 13580                                 param_value->accept(*this);
 13700                                 
 13581                                 
 13701                             }
 13582                             }
 13702                             
 13583                             
 13703                         }while(param_value != NULL);
 13584                         }while(param_value != NULL);
 13705                         if (search_expression_type->is_bool_type(last_type_symbol)) {
 13586                         if (search_expression_type->is_bool_type(last_type_symbol)) {
 13706                           s4o.print("&1");
 13587                           s4o.print("&1");
 13707                           s4o.print(")");
 13588                           s4o.print(")");
 13708                         }
 13589                         }
 13709                         s4o.print("");
 13590                         s4o.print("");
       
 13591                         s4o.indent_left();
 13710                         return NULL;
 13592                         return NULL;
 13711                         
 13593                         
 13712                         
 13594                         
 13713                     }
 13595                     }
 13714                     
 13596                     
 13753                     
 13635                     
 13754                     if(search_expression_type->is_binary_type(IN2_type_symbol))
 13636                     if(search_expression_type->is_binary_type(IN2_type_symbol))
 13755                     {
 13637                     {
 13756                 
 13638                 
 13757                         symbol_c * return_type_symbol = last_type_symbol;
 13639                         symbol_c * return_type_symbol = last_type_symbol;
       
 13640                         s4o.indent_right();
 13758                         s4o.print("(");
 13641                         s4o.print("(");
 13759                         if (search_expression_type->is_bool_type(last_type_symbol))
 13642                         if (search_expression_type->is_bool_type(last_type_symbol))
 13760                           s4o.print("(");
 13643                           s4o.print("(\n" + s4o.indent_spaces);
 13761                         IN1_param_value->accept(*this);
 13644                         IN1_param_value->accept(*this);
 13762                         s4o.print("^");
 13645                         s4o.print("^\n" + s4o.indent_spaces);
 13763                         IN2_param_value->accept(*this);
 13646                         IN2_param_value->accept(*this);
 13764                         
 13647                         
 13765                         int base_num = 3;
 13648                         int base_num = 3;
 13766                         symbol_c *param_value = NULL;
 13649                         symbol_c *param_value = NULL;
 13767                         do{
 13650                         do{
 13778                             if (param_value != NULL){
 13661                             if (param_value != NULL){
 13779                                 symbol_c *current_type_symbol = search_expression_type->get_type(param_value);
 13662                                 symbol_c *current_type_symbol = search_expression_type->get_type(param_value);
 13780                                 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(current_type_symbol, last_type_symbol) ? search_expression_type->common_type(current_type_symbol, last_type_symbol) : current_type_symbol ;
 13663                                 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(current_type_symbol, last_type_symbol) ? search_expression_type->common_type(current_type_symbol, last_type_symbol) : current_type_symbol ;
 13781                             
 13664                             
 13782                                 /*Function specific CODE */
 13665                                 /*Function specific CODE */
 13783                                 s4o.print("^");
 13666                                 s4o.print("^\n" + s4o.indent_spaces);
 13784                                 param_value->accept(*this);
 13667                                 param_value->accept(*this);
 13785                                 
 13668                                 
 13786                             }
 13669                             }
 13787                             
 13670                             
 13788                         }while(param_value != NULL);
 13671                         }while(param_value != NULL);
 13790                         if (search_expression_type->is_bool_type(last_type_symbol)) {
 13673                         if (search_expression_type->is_bool_type(last_type_symbol)) {
 13791                           s4o.print("&1");
 13674                           s4o.print("&1");
 13792                           s4o.print(")");
 13675                           s4o.print(")");
 13793                         }
 13676                         }
 13794                         s4o.print("");
 13677                         s4o.print("");
       
 13678                         s4o.indent_left();
 13795                         return NULL;
 13679                         return NULL;
 13796                         
 13680                         
 13797                         
 13681                         
 13798                     }
 13682                     }
 13799                     
 13683                     
 13850             symbol_c *G_param_value = &this->default_variable_name;
 13734             symbol_c *G_param_value = &this->default_variable_name;
 13851         
 13735         
 13852             symbol_c *G_type_symbol = param_data_type;
 13736             symbol_c *G_type_symbol = param_data_type;
 13853             last_type_symbol = param_data_type;
 13737             last_type_symbol = param_data_type;
 13854             
 13738             
 13855             if (typeid(*last_type_symbol) == typeid(bool_type_name_c))
 13739             if(search_expression_type->is_same_type(&search_constant_type_c::bool_type_name, last_type_symbol))
 13856             {
 13740             {
 13857         
 13741         
 13858                 {
 13742                 {
 13859                     identifier_c param_name("IN0");
 13743                     identifier_c param_name("IN0");
 13860                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 13744                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 13939                     
 13823                     
 13940                     
 13824                     
 13941                     {
 13825                     {
 13942                 
 13826                 
 13943                         symbol_c * return_type_symbol = last_type_symbol;
 13827                         symbol_c * return_type_symbol = last_type_symbol;
       
 13828                         s4o.indent_right();
 13944                         s4o.print("__max_");
 13829                         s4o.print("__max_");
 13945                         return_type_symbol->accept(*this);
 13830                         return_type_symbol->accept(*this);
 13946                         s4o.print("(");
 13831                         s4o.print("(");
 13947                         s4o.print_integer(nb_param);
 13832                         s4o.print_integer(nb_param);
 13948                         s4o.print(",");
 13833                         s4o.print(",\n" + s4o.indent_spaces);
 13949                         IN1_param_value->accept(*this);
 13834                         IN1_param_value->accept(*this);
 13950                         s4o.print(",");
 13835                         s4o.print(",\n" + s4o.indent_spaces);
 13951                         IN2_param_value->accept(*this);
 13836                         IN2_param_value->accept(*this);
 13952                         
 13837                         
 13953                         int base_num = 3;
 13838                         int base_num = 3;
 13954                         symbol_c *param_value = NULL;
 13839                         symbol_c *param_value = NULL;
 13955                         do{
 13840                         do{
 13966                             if (param_value != NULL){
 13851                             if (param_value != NULL){
 13967                                 symbol_c *current_type_symbol = search_expression_type->get_type(param_value);
 13852                                 symbol_c *current_type_symbol = search_expression_type->get_type(param_value);
 13968                                 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(current_type_symbol, last_type_symbol) ? search_expression_type->common_type(current_type_symbol, last_type_symbol) : current_type_symbol ;
 13853                                 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(current_type_symbol, last_type_symbol) ? search_expression_type->common_type(current_type_symbol, last_type_symbol) : current_type_symbol ;
 13969                             
 13854                             
 13970                                 /*Function specific CODE */
 13855                                 /*Function specific CODE */
 13971                                 s4o.print(",");
 13856                                 s4o.print(",\n" + s4o.indent_spaces);
 13972                                 param_value->accept(*this);
 13857                                 param_value->accept(*this);
 13973                                 
 13858                                 
 13974                             }
 13859                             }
 13975                             
 13860                             
 13976                         }while(param_value != NULL);
 13861                         }while(param_value != NULL);
 13977                         s4o.print(")");
 13862                         s4o.print(")");
       
 13863                         s4o.indent_left();
 13978                         return NULL;
 13864                         return NULL;
 13979                         
 13865                         
 13980                         
 13866                         
 13981                     }
 13867                     }
 13982                     
 13868                     
 14021                     
 13907                     
 14022                     
 13908                     
 14023                     {
 13909                     {
 14024                 
 13910                 
 14025                         symbol_c * return_type_symbol = last_type_symbol;
 13911                         symbol_c * return_type_symbol = last_type_symbol;
       
 13912                         s4o.indent_right();
 14026                         s4o.print("__min_");
 13913                         s4o.print("__min_");
 14027                         return_type_symbol->accept(*this);
 13914                         return_type_symbol->accept(*this);
 14028                         s4o.print("(");
 13915                         s4o.print("(");
 14029                         s4o.print_integer(nb_param);
 13916                         s4o.print_integer(nb_param);
 14030                         s4o.print(",");
 13917                         s4o.print(",\n" + s4o.indent_spaces);
 14031                         IN1_param_value->accept(*this);
 13918                         IN1_param_value->accept(*this);
 14032                         s4o.print(",");
 13919                         s4o.print(",\n" + s4o.indent_spaces);
 14033                         IN2_param_value->accept(*this);
 13920                         IN2_param_value->accept(*this);
 14034                         
 13921                         
 14035                         int base_num = 3;
 13922                         int base_num = 3;
 14036                         symbol_c *param_value = NULL;
 13923                         symbol_c *param_value = NULL;
 14037                         do{
 13924                         do{
 14048                             if (param_value != NULL){
 13935                             if (param_value != NULL){
 14049                                 symbol_c *current_type_symbol = search_expression_type->get_type(param_value);
 13936                                 symbol_c *current_type_symbol = search_expression_type->get_type(param_value);
 14050                                 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(current_type_symbol, last_type_symbol) ? search_expression_type->common_type(current_type_symbol, last_type_symbol) : current_type_symbol ;
 13937                                 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(current_type_symbol, last_type_symbol) ? search_expression_type->common_type(current_type_symbol, last_type_symbol) : current_type_symbol ;
 14051                             
 13938                             
 14052                                 /*Function specific CODE */
 13939                                 /*Function specific CODE */
 14053                                 s4o.print(",");
 13940                                 s4o.print(",\n" + s4o.indent_spaces);
 14054                                 param_value->accept(*this);
 13941                                 param_value->accept(*this);
 14055                                 
 13942                                 
 14056                             }
 13943                             }
 14057                             
 13944                             
 14058                         }while(param_value != NULL);
 13945                         }while(param_value != NULL);
 14059                         s4o.print(")");
 13946                         s4o.print(")");
       
 13947                         s4o.indent_left();
 14060                         return NULL;
 13948                         return NULL;
 14061                         
 13949                         
 14062                         
 13950                         
 14063                     }
 13951                     }
 14064                     
 13952                     
 14192                             
 14080                             
 14193                             
 14081                             
 14194                             {
 14082                             {
 14195                         
 14083                         
 14196                                 symbol_c * return_type_symbol = last_type_symbol;
 14084                                 symbol_c * return_type_symbol = last_type_symbol;
       
 14085                                 s4o.indent_right();
 14197                                 s4o.print("__mux_");
 14086                                 s4o.print("__mux_");
 14198                                 return_type_symbol->accept(*this);
 14087                                 return_type_symbol->accept(*this);
 14199                                 s4o.print("(");
 14088                                 s4o.print("(");
 14200                                 s4o.print_integer(nb_param);
 14089                                 s4o.print_integer(nb_param);
 14201                                 s4o.print(",");
 14090                                 s4o.print(",\n" + s4o.indent_spaces);
 14202                                 K_param_value->accept(*this);
 14091                                 K_param_value->accept(*this);
 14203                                 s4o.print(",");
 14092                                 s4o.print(",\n" + s4o.indent_spaces);
 14204                                 IN0_param_value->accept(*this);
 14093                                 IN0_param_value->accept(*this);
 14205                                 s4o.print(",");
 14094                                 s4o.print(",\n" + s4o.indent_spaces);
 14206                                 IN1_param_value->accept(*this);
 14095                                 IN1_param_value->accept(*this);
 14207                                 
 14096                                 
 14208                                 int base_num = 2;
 14097                                 int base_num = 2;
 14209                                 symbol_c *param_value = NULL;
 14098                                 symbol_c *param_value = NULL;
 14210                                 do{
 14099                                 do{
 14221                                     if (param_value != NULL){
 14110                                     if (param_value != NULL){
 14222                                         symbol_c *current_type_symbol = search_expression_type->get_type(param_value);
 14111                                         symbol_c *current_type_symbol = search_expression_type->get_type(param_value);
 14223                                         last_type_symbol = last_type_symbol && search_expression_type->is_same_type(current_type_symbol, last_type_symbol) ? search_expression_type->common_type(current_type_symbol, last_type_symbol) : current_type_symbol ;
 14112                                         last_type_symbol = last_type_symbol && search_expression_type->is_same_type(current_type_symbol, last_type_symbol) ? search_expression_type->common_type(current_type_symbol, last_type_symbol) : current_type_symbol ;
 14224                                     
 14113                                     
 14225                                         /*Function specific CODE */
 14114                                         /*Function specific CODE */
 14226                                         s4o.print(",");
 14115                                         s4o.print(",\n" + s4o.indent_spaces);
 14227                                         param_value->accept(*this);
 14116                                         param_value->accept(*this);
 14228                                         
 14117                                         
 14229                                     }
 14118                                     }
 14230                                     
 14119                                     
 14231                                 }while(param_value != NULL);
 14120                                 }while(param_value != NULL);
 14232                                 s4o.print(")");
 14121                                 s4o.print(")");
       
 14122                                 s4o.indent_left();
 14233                                 return NULL;
 14123                                 return NULL;
 14234                                 
 14124                                 
 14235                                 
 14125                                 
 14236                             }
 14126                             }
 14237                             
 14127                             
 14281                     
 14171                     
 14282                     
 14172                     
 14283                     {
 14173                     {
 14284                 
 14174                 
 14285                         symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
 14175                         symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
       
 14176                         s4o.indent_right();
 14286                         s4o.print("__gt_");
 14177                         s4o.print("__gt_");
 14287                         return_type_symbol->accept(*this);
 14178                         return_type_symbol->accept(*this);
 14288                         s4o.print("(");
 14179                         s4o.print("(");
 14289                         s4o.print_integer(nb_param);
 14180                         s4o.print_integer(nb_param);
 14290                         s4o.print(",");
 14181                         s4o.print(",\n" + s4o.indent_spaces);
 14291                         IN1_param_value->accept(*this);
 14182                         IN1_param_value->accept(*this);
 14292                         s4o.print(",");
 14183                         s4o.print(",\n" + s4o.indent_spaces);
 14293                         IN2_param_value->accept(*this);
 14184                         IN2_param_value->accept(*this);
 14294                         
 14185                         
 14295                         int base_num = 3;
 14186                         int base_num = 3;
 14296                         symbol_c *param_value = NULL;
 14187                         symbol_c *param_value = NULL;
 14297                         do{
 14188                         do{
 14308                             if (param_value != NULL){
 14199                             if (param_value != NULL){
 14309                                 symbol_c *current_type_symbol = search_expression_type->get_type(param_value);
 14200                                 symbol_c *current_type_symbol = search_expression_type->get_type(param_value);
 14310                                 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(current_type_symbol, last_type_symbol) ? search_expression_type->common_type(current_type_symbol, last_type_symbol) : current_type_symbol ;
 14201                                 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(current_type_symbol, last_type_symbol) ? search_expression_type->common_type(current_type_symbol, last_type_symbol) : current_type_symbol ;
 14311                             
 14202                             
 14312                                 /*Function specific CODE */
 14203                                 /*Function specific CODE */
 14313                                 s4o.print(",");
 14204                                 s4o.print(",\n" + s4o.indent_spaces);
 14314                                 param_value->accept(*this);
 14205                                 param_value->accept(*this);
 14315                                 
 14206                                 
 14316                             }
 14207                             }
 14317                             
 14208                             
 14318                         }while(param_value != NULL);
 14209                         }while(param_value != NULL);
 14319                         s4o.print(")");
 14210                         s4o.print(")");
       
 14211                         s4o.indent_left();
 14320                         return NULL;
 14212                         return NULL;
 14321                         
 14213                         
 14322                         
 14214                         
 14323                     }
 14215                     }
 14324                     
 14216                     
 14363                     
 14255                     
 14364                     
 14256                     
 14365                     {
 14257                     {
 14366                 
 14258                 
 14367                         symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
 14259                         symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
       
 14260                         s4o.indent_right();
 14368                         s4o.print("__ge_");
 14261                         s4o.print("__ge_");
 14369                         return_type_symbol->accept(*this);
 14262                         return_type_symbol->accept(*this);
 14370                         s4o.print("(");
 14263                         s4o.print("(");
 14371                         s4o.print_integer(nb_param);
 14264                         s4o.print_integer(nb_param);
 14372                         s4o.print(",");
 14265                         s4o.print(",\n" + s4o.indent_spaces);
 14373                         IN1_param_value->accept(*this);
 14266                         IN1_param_value->accept(*this);
 14374                         s4o.print(",");
 14267                         s4o.print(",\n" + s4o.indent_spaces);
 14375                         IN2_param_value->accept(*this);
 14268                         IN2_param_value->accept(*this);
 14376                         
 14269                         
 14377                         int base_num = 3;
 14270                         int base_num = 3;
 14378                         symbol_c *param_value = NULL;
 14271                         symbol_c *param_value = NULL;
 14379                         do{
 14272                         do{
 14390                             if (param_value != NULL){
 14283                             if (param_value != NULL){
 14391                                 symbol_c *current_type_symbol = search_expression_type->get_type(param_value);
 14284                                 symbol_c *current_type_symbol = search_expression_type->get_type(param_value);
 14392                                 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(current_type_symbol, last_type_symbol) ? search_expression_type->common_type(current_type_symbol, last_type_symbol) : current_type_symbol ;
 14285                                 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(current_type_symbol, last_type_symbol) ? search_expression_type->common_type(current_type_symbol, last_type_symbol) : current_type_symbol ;
 14393                             
 14286                             
 14394                                 /*Function specific CODE */
 14287                                 /*Function specific CODE */
 14395                                 s4o.print(",");
 14288                                 s4o.print(",\n" + s4o.indent_spaces);
 14396                                 param_value->accept(*this);
 14289                                 param_value->accept(*this);
 14397                                 
 14290                                 
 14398                             }
 14291                             }
 14399                             
 14292                             
 14400                         }while(param_value != NULL);
 14293                         }while(param_value != NULL);
 14401                         s4o.print(")");
 14294                         s4o.print(")");
       
 14295                         s4o.indent_left();
 14402                         return NULL;
 14296                         return NULL;
 14403                         
 14297                         
 14404                         
 14298                         
 14405                     }
 14299                     }
 14406                     
 14300                     
 14445                     
 14339                     
 14446                     
 14340                     
 14447                     {
 14341                     {
 14448                 
 14342                 
 14449                         symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
 14343                         symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
       
 14344                         s4o.indent_right();
 14450                         s4o.print("__eq_");
 14345                         s4o.print("__eq_");
 14451                         return_type_symbol->accept(*this);
 14346                         return_type_symbol->accept(*this);
 14452                         s4o.print("(");
 14347                         s4o.print("(");
 14453                         s4o.print_integer(nb_param);
 14348                         s4o.print_integer(nb_param);
 14454                         s4o.print(",");
 14349                         s4o.print(",\n" + s4o.indent_spaces);
 14455                         IN1_param_value->accept(*this);
 14350                         IN1_param_value->accept(*this);
 14456                         s4o.print(",");
 14351                         s4o.print(",\n" + s4o.indent_spaces);
 14457                         IN2_param_value->accept(*this);
 14352                         IN2_param_value->accept(*this);
 14458                         
 14353                         
 14459                         int base_num = 3;
 14354                         int base_num = 3;
 14460                         symbol_c *param_value = NULL;
 14355                         symbol_c *param_value = NULL;
 14461                         do{
 14356                         do{
 14472                             if (param_value != NULL){
 14367                             if (param_value != NULL){
 14473                                 symbol_c *current_type_symbol = search_expression_type->get_type(param_value);
 14368                                 symbol_c *current_type_symbol = search_expression_type->get_type(param_value);
 14474                                 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(current_type_symbol, last_type_symbol) ? search_expression_type->common_type(current_type_symbol, last_type_symbol) : current_type_symbol ;
 14369                                 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(current_type_symbol, last_type_symbol) ? search_expression_type->common_type(current_type_symbol, last_type_symbol) : current_type_symbol ;
 14475                             
 14370                             
 14476                                 /*Function specific CODE */
 14371                                 /*Function specific CODE */
 14477                                 s4o.print(",");
 14372                                 s4o.print(",\n" + s4o.indent_spaces);
 14478                                 param_value->accept(*this);
 14373                                 param_value->accept(*this);
 14479                                 
 14374                                 
 14480                             }
 14375                             }
 14481                             
 14376                             
 14482                         }while(param_value != NULL);
 14377                         }while(param_value != NULL);
 14483                         s4o.print(")");
 14378                         s4o.print(")");
       
 14379                         s4o.indent_left();
 14484                         return NULL;
 14380                         return NULL;
 14485                         
 14381                         
 14486                         
 14382                         
 14487                     }
 14383                     }
 14488                     
 14384                     
 14527                     
 14423                     
 14528                     
 14424                     
 14529                     {
 14425                     {
 14530                 
 14426                 
 14531                         symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
 14427                         symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
       
 14428                         s4o.indent_right();
 14532                         s4o.print("__lt_");
 14429                         s4o.print("__lt_");
 14533                         return_type_symbol->accept(*this);
 14430                         return_type_symbol->accept(*this);
 14534                         s4o.print("(");
 14431                         s4o.print("(");
 14535                         s4o.print_integer(nb_param);
 14432                         s4o.print_integer(nb_param);
 14536                         s4o.print(",");
 14433                         s4o.print(",\n" + s4o.indent_spaces);
 14537                         IN1_param_value->accept(*this);
 14434                         IN1_param_value->accept(*this);
 14538                         s4o.print(",");
 14435                         s4o.print(",\n" + s4o.indent_spaces);
 14539                         IN2_param_value->accept(*this);
 14436                         IN2_param_value->accept(*this);
 14540                         
 14437                         
 14541                         int base_num = 3;
 14438                         int base_num = 3;
 14542                         symbol_c *param_value = NULL;
 14439                         symbol_c *param_value = NULL;
 14543                         do{
 14440                         do{
 14554                             if (param_value != NULL){
 14451                             if (param_value != NULL){
 14555                                 symbol_c *current_type_symbol = search_expression_type->get_type(param_value);
 14452                                 symbol_c *current_type_symbol = search_expression_type->get_type(param_value);
 14556                                 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(current_type_symbol, last_type_symbol) ? search_expression_type->common_type(current_type_symbol, last_type_symbol) : current_type_symbol ;
 14453                                 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(current_type_symbol, last_type_symbol) ? search_expression_type->common_type(current_type_symbol, last_type_symbol) : current_type_symbol ;
 14557                             
 14454                             
 14558                                 /*Function specific CODE */
 14455                                 /*Function specific CODE */
 14559                                 s4o.print(",");
 14456                                 s4o.print(",\n" + s4o.indent_spaces);
 14560                                 param_value->accept(*this);
 14457                                 param_value->accept(*this);
 14561                                 
 14458                                 
 14562                             }
 14459                             }
 14563                             
 14460                             
 14564                         }while(param_value != NULL);
 14461                         }while(param_value != NULL);
 14565                         s4o.print(")");
 14462                         s4o.print(")");
       
 14463                         s4o.indent_left();
 14566                         return NULL;
 14464                         return NULL;
 14567                         
 14465                         
 14568                         
 14466                         
 14569                     }
 14467                     }
 14570                     
 14468                     
 14609                     
 14507                     
 14610                     
 14508                     
 14611                     {
 14509                     {
 14612                 
 14510                 
 14613                         symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
 14511                         symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
       
 14512                         s4o.indent_right();
 14614                         s4o.print("__le_");
 14513                         s4o.print("__le_");
 14615                         return_type_symbol->accept(*this);
 14514                         return_type_symbol->accept(*this);
 14616                         s4o.print("(");
 14515                         s4o.print("(");
 14617                         s4o.print_integer(nb_param);
 14516                         s4o.print_integer(nb_param);
 14618                         s4o.print(",");
 14517                         s4o.print(",\n" + s4o.indent_spaces);
 14619                         IN1_param_value->accept(*this);
 14518                         IN1_param_value->accept(*this);
 14620                         s4o.print(",");
 14519                         s4o.print(",\n" + s4o.indent_spaces);
 14621                         IN2_param_value->accept(*this);
 14520                         IN2_param_value->accept(*this);
 14622                         
 14521                         
 14623                         int base_num = 3;
 14522                         int base_num = 3;
 14624                         symbol_c *param_value = NULL;
 14523                         symbol_c *param_value = NULL;
 14625                         do{
 14524                         do{
 14636                             if (param_value != NULL){
 14535                             if (param_value != NULL){
 14637                                 symbol_c *current_type_symbol = search_expression_type->get_type(param_value);
 14536                                 symbol_c *current_type_symbol = search_expression_type->get_type(param_value);
 14638                                 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(current_type_symbol, last_type_symbol) ? search_expression_type->common_type(current_type_symbol, last_type_symbol) : current_type_symbol ;
 14537                                 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(current_type_symbol, last_type_symbol) ? search_expression_type->common_type(current_type_symbol, last_type_symbol) : current_type_symbol ;
 14639                             
 14538                             
 14640                                 /*Function specific CODE */
 14539                                 /*Function specific CODE */
 14641                                 s4o.print(",");
 14540                                 s4o.print(",\n" + s4o.indent_spaces);
 14642                                 param_value->accept(*this);
 14541                                 param_value->accept(*this);
 14643                                 
 14542                                 
 14644                             }
 14543                             }
 14645                             
 14544                             
 14646                         }while(param_value != NULL);
 14545                         }while(param_value != NULL);
 14647                         s4o.print(")");
 14546                         s4o.print(")");
       
 14547                         s4o.indent_left();
 14648                         return NULL;
 14548                         return NULL;
 14649                         
 14549                         
 14650                         
 14550                         
 14651                     }
 14551                     }
 14652                     
 14552                     
 14691                     
 14591                     
 14692                     
 14592                     
 14693                     {
 14593                     {
 14694                 
 14594                 
 14695                         symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
 14595                         symbol_c * return_type_symbol = &search_constant_type_c::bool_type_name;
       
 14596                         s4o.indent_right();
 14696                         s4o.print("__ne_");
 14597                         s4o.print("__ne_");
 14697                         return_type_symbol->accept(*this);
 14598                         return_type_symbol->accept(*this);
 14698                         s4o.print("(");
 14599                         s4o.print("(");
 14699                         s4o.print_integer(nb_param);
 14600                         s4o.print_integer(nb_param);
 14700                         s4o.print(",");
 14601                         s4o.print(",\n" + s4o.indent_spaces);
 14701                         IN1_param_value->accept(*this);
 14602                         IN1_param_value->accept(*this);
 14702                         s4o.print(",");
 14603                         s4o.print(",\n" + s4o.indent_spaces);
 14703                         IN2_param_value->accept(*this);
 14604                         IN2_param_value->accept(*this);
 14704                         
 14605                         
 14705                         int base_num = 3;
 14606                         int base_num = 3;
 14706                         symbol_c *param_value = NULL;
 14607                         symbol_c *param_value = NULL;
 14707                         do{
 14608                         do{
 14718                             if (param_value != NULL){
 14619                             if (param_value != NULL){
 14719                                 symbol_c *current_type_symbol = search_expression_type->get_type(param_value);
 14620                                 symbol_c *current_type_symbol = search_expression_type->get_type(param_value);
 14720                                 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(current_type_symbol, last_type_symbol) ? search_expression_type->common_type(current_type_symbol, last_type_symbol) : current_type_symbol ;
 14621                                 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(current_type_symbol, last_type_symbol) ? search_expression_type->common_type(current_type_symbol, last_type_symbol) : current_type_symbol ;
 14721                             
 14622                             
 14722                                 /*Function specific CODE */
 14623                                 /*Function specific CODE */
 14723                                 s4o.print(",");
 14624                                 s4o.print(",\n" + s4o.indent_spaces);
 14724                                 param_value->accept(*this);
 14625                                 param_value->accept(*this);
 14725                                 
 14626                                 
 14726                             }
 14627                             }
 14727                             
 14628                             
 14728                         }while(param_value != NULL);
 14629                         }while(param_value != NULL);
 14729                         s4o.print(")");
 14630                         s4o.print(")");
       
 14631                         s4o.indent_left();
 14730                         return NULL;
 14632                         return NULL;
 14731                         
 14633                         
 14732                         
 14634                         
 14733                     }
 14635                     }
 14734                     
 14636                     
 14755             symbol_c *IN_param_value = &this->default_variable_name;
 14657             symbol_c *IN_param_value = &this->default_variable_name;
 14756         
 14658         
 14757             symbol_c *IN_type_symbol = param_data_type;
 14659             symbol_c *IN_type_symbol = param_data_type;
 14758             last_type_symbol = param_data_type;
 14660             last_type_symbol = param_data_type;
 14759             
 14661             
 14760             if (typeid(*last_type_symbol) == typeid(string_type_name_c))
 14662             if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
 14761             {
 14663             {
 14762         
 14664         
 14763                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
 14665                 symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
 14764                 s4o.print("__len(");
 14666                 s4o.print("__len(");
 14765                 IN_param_value->accept(*this);
 14667                 IN_param_value->accept(*this);
 14786             symbol_c *IN_param_value = &this->default_variable_name;
 14688             symbol_c *IN_param_value = &this->default_variable_name;
 14787         
 14689         
 14788             symbol_c *IN_type_symbol = param_data_type;
 14690             symbol_c *IN_type_symbol = param_data_type;
 14789             last_type_symbol = param_data_type;
 14691             last_type_symbol = param_data_type;
 14790             
 14692             
 14791             if (typeid(*last_type_symbol) == typeid(string_type_name_c))
 14693             if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
 14792             {
 14694             {
 14793         
 14695         
 14794                 {
 14696                 {
 14795                     identifier_c param_name("L");
 14697                     identifier_c param_name("L");
 14796                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 14698                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 14838             symbol_c *IN_param_value = &this->default_variable_name;
 14740             symbol_c *IN_param_value = &this->default_variable_name;
 14839         
 14741         
 14840             symbol_c *IN_type_symbol = param_data_type;
 14742             symbol_c *IN_type_symbol = param_data_type;
 14841             last_type_symbol = param_data_type;
 14743             last_type_symbol = param_data_type;
 14842             
 14744             
 14843             if (typeid(*last_type_symbol) == typeid(string_type_name_c))
 14745             if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
 14844             {
 14746             {
 14845         
 14747         
 14846                 {
 14748                 {
 14847                     identifier_c param_name("L");
 14749                     identifier_c param_name("L");
 14848                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 14750                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 14890             symbol_c *IN_param_value = &this->default_variable_name;
 14792             symbol_c *IN_param_value = &this->default_variable_name;
 14891         
 14793         
 14892             symbol_c *IN_type_symbol = param_data_type;
 14794             symbol_c *IN_type_symbol = param_data_type;
 14893             last_type_symbol = param_data_type;
 14795             last_type_symbol = param_data_type;
 14894             
 14796             
 14895             if (typeid(*last_type_symbol) == typeid(string_type_name_c))
 14797             if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
 14896             {
 14798             {
 14897         
 14799         
 14898                 {
 14800                 {
 14899                     identifier_c param_name("L");
 14801                     identifier_c param_name("L");
 14900                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 14802                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 14963             symbol_c *IN1_param_value = &this->default_variable_name;
 14865             symbol_c *IN1_param_value = &this->default_variable_name;
 14964         
 14866         
 14965             symbol_c *IN1_type_symbol = param_data_type;
 14867             symbol_c *IN1_type_symbol = param_data_type;
 14966             last_type_symbol = param_data_type;
 14868             last_type_symbol = param_data_type;
 14967             
 14869             
 14968             if (typeid(*last_type_symbol) == typeid(date_type_name_c))
 14870             if(search_expression_type->is_same_type(&search_constant_type_c::date_type_name, last_type_symbol))
 14969             {
 14871             {
 14970         
 14872         
 14971                 {
 14873                 {
 14972                     identifier_c param_name("IN2");
 14874                     identifier_c param_name("IN2");
 14973                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 14875                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 14977                     if (IN2_param_value == NULL)
 14879                     if (IN2_param_value == NULL)
 14978                       IN2_param_value = function_call_param_iterator.next();
 14880                       IN2_param_value = function_call_param_iterator.next();
 14979                     symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 14881                     symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 14980                     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 ;
 14882                     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 ;
 14981                     
 14883                     
 14982                     if (typeid(*last_type_symbol) == typeid(tod_type_name_c))
 14884                     if(search_expression_type->is_same_type(&search_constant_type_c::tod_type_name, last_type_symbol))
 14983                     {
 14885                     {
 14984                 
 14886                 
 14985                         symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
 14887                         symbol_c * return_type_symbol = &search_constant_type_c::dt_type_name;
 14986                         s4o.print("__time_add(");
 14888                         s4o.print("__time_add(");
 14987                         IN1_param_value->accept(*this);
 14889                         IN1_param_value->accept(*this);
 14995                     ERROR;
 14897                     ERROR;
 14996                 }
 14898                 }
 14997                 
 14899                 
 14998             }
 14900             }
 14999             
 14901             
 15000             if (typeid(*last_type_symbol) == typeid(string_type_name_c))
 14902             if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
 15001             {
 14903             {
 15002         
 14904         
 15003                 {
 14905                 {
 15004                     identifier_c param_name("IN2");
 14906                     identifier_c param_name("IN2");
 15005                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 14907                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 15009                     if (IN2_param_value == NULL)
 14911                     if (IN2_param_value == NULL)
 15010                       IN2_param_value = function_call_param_iterator.next();
 14912                       IN2_param_value = function_call_param_iterator.next();
 15011                     symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 14913                     symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 15012                     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 ;
 14914                     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 ;
 15013                     
 14915                     
 15014                     if (typeid(*last_type_symbol) == typeid(string_type_name_c))
 14916                     if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
 15015                     {
 14917                     {
 15016                 
 14918                 
 15017                         symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
 14919                         symbol_c * return_type_symbol = &search_constant_type_c::string_type_name;
       
 14920                         s4o.indent_right();
 15018                         s4o.print("__concat(");
 14921                         s4o.print("__concat(");
 15019                         s4o.print_integer(nb_param);
 14922                         s4o.print_integer(nb_param);
 15020                         s4o.print(",");
 14923                         s4o.print(",\n" + s4o.indent_spaces);
 15021                         IN1_param_value->accept(*this);
 14924                         IN1_param_value->accept(*this);
 15022                         s4o.print(",");
 14925                         s4o.print(",\n" + s4o.indent_spaces);
 15023                         IN2_param_value->accept(*this);
 14926                         IN2_param_value->accept(*this);
 15024                         
 14927                         
 15025                         int base_num = 3;
 14928                         int base_num = 3;
 15026                         symbol_c *param_value = NULL;
 14929                         symbol_c *param_value = NULL;
 15027                         do{
 14930                         do{
 15038                             if (param_value != NULL){
 14941                             if (param_value != NULL){
 15039                                 symbol_c *current_type_symbol = search_expression_type->get_type(param_value);
 14942                                 symbol_c *current_type_symbol = search_expression_type->get_type(param_value);
 15040                                 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(current_type_symbol, last_type_symbol) ? search_expression_type->common_type(current_type_symbol, last_type_symbol) : current_type_symbol ;
 14943                                 last_type_symbol = last_type_symbol && search_expression_type->is_same_type(current_type_symbol, last_type_symbol) ? search_expression_type->common_type(current_type_symbol, last_type_symbol) : current_type_symbol ;
 15041                             
 14944                             
 15042                                 /*Function specific CODE */
 14945                                 /*Function specific CODE */
 15043                                 s4o.print(",");
 14946                                 s4o.print(",\n" + s4o.indent_spaces);
 15044                                 param_value->accept(*this);
 14947                                 param_value->accept(*this);
 15045                                 
 14948                                 
 15046                             }
 14949                             }
 15047                             
 14950                             
 15048                         }while(param_value != NULL);
 14951                         }while(param_value != NULL);
 15049                         s4o.print(")");
 14952                         s4o.print(")");
       
 14953                         s4o.indent_left();
 15050                         return NULL;
 14954                         return NULL;
 15051                         
 14955                         
 15052                         
 14956                         
 15053                     }
 14957                     }
 15054                     
 14958                     
 15075             symbol_c *IN1_param_value = &this->default_variable_name;
 14979             symbol_c *IN1_param_value = &this->default_variable_name;
 15076         
 14980         
 15077             symbol_c *IN1_type_symbol = param_data_type;
 14981             symbol_c *IN1_type_symbol = param_data_type;
 15078             last_type_symbol = param_data_type;
 14982             last_type_symbol = param_data_type;
 15079             
 14983             
 15080             if (typeid(*last_type_symbol) == typeid(string_type_name_c))
 14984             if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
 15081             {
 14985             {
 15082         
 14986         
 15083                 {
 14987                 {
 15084                     identifier_c param_name("IN2");
 14988                     identifier_c param_name("IN2");
 15085                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 14989                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 15089                     if (IN2_param_value == NULL)
 14993                     if (IN2_param_value == NULL)
 15090                       IN2_param_value = function_call_param_iterator.next();
 14994                       IN2_param_value = function_call_param_iterator.next();
 15091                     symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 14995                     symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 15092                     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 ;
 14996                     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 ;
 15093                     
 14997                     
 15094                     if (typeid(*last_type_symbol) == typeid(string_type_name_c))
 14998                     if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
 15095                     {
 14999                     {
 15096                 
 15000                 
 15097                         {
 15001                         {
 15098                             identifier_c param_name("P");
 15002                             identifier_c param_name("P");
 15099                             /* Get the value from a foo(<param_name> = <param_value>) style call */
 15003                             /* Get the value from a foo(<param_name> = <param_value>) style call */
 15148             symbol_c *IN_param_value = &this->default_variable_name;
 15052             symbol_c *IN_param_value = &this->default_variable_name;
 15149         
 15053         
 15150             symbol_c *IN_type_symbol = param_data_type;
 15054             symbol_c *IN_type_symbol = param_data_type;
 15151             last_type_symbol = param_data_type;
 15055             last_type_symbol = param_data_type;
 15152             
 15056             
 15153             if (typeid(*last_type_symbol) == typeid(string_type_name_c))
 15057             if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
 15154             {
 15058             {
 15155         
 15059         
 15156                 {
 15060                 {
 15157                     identifier_c param_name("L");
 15061                     identifier_c param_name("L");
 15158                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 15062                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 15221             symbol_c *IN1_param_value = &this->default_variable_name;
 15125             symbol_c *IN1_param_value = &this->default_variable_name;
 15222         
 15126         
 15223             symbol_c *IN1_type_symbol = param_data_type;
 15127             symbol_c *IN1_type_symbol = param_data_type;
 15224             last_type_symbol = param_data_type;
 15128             last_type_symbol = param_data_type;
 15225             
 15129             
 15226             if (typeid(*last_type_symbol) == typeid(string_type_name_c))
 15130             if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
 15227             {
 15131             {
 15228         
 15132         
 15229                 {
 15133                 {
 15230                     identifier_c param_name("IN2");
 15134                     identifier_c param_name("IN2");
 15231                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 15135                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 15235                     if (IN2_param_value == NULL)
 15139                     if (IN2_param_value == NULL)
 15236                       IN2_param_value = function_call_param_iterator.next();
 15140                       IN2_param_value = function_call_param_iterator.next();
 15237                     symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 15141                     symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 15238                     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 ;
 15142                     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 ;
 15239                     
 15143                     
 15240                     if (typeid(*last_type_symbol) == typeid(string_type_name_c))
 15144                     if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
 15241                     {
 15145                     {
 15242                 
 15146                 
 15243                         {
 15147                         {
 15244                             identifier_c param_name("L");
 15148                             identifier_c param_name("L");
 15245                             /* Get the value from a foo(<param_name> = <param_value>) style call */
 15149                             /* Get the value from a foo(<param_name> = <param_value>) style call */
 15315             symbol_c *IN1_param_value = &this->default_variable_name;
 15219             symbol_c *IN1_param_value = &this->default_variable_name;
 15316         
 15220         
 15317             symbol_c *IN1_type_symbol = param_data_type;
 15221             symbol_c *IN1_type_symbol = param_data_type;
 15318             last_type_symbol = param_data_type;
 15222             last_type_symbol = param_data_type;
 15319             
 15223             
 15320             if (typeid(*last_type_symbol) == typeid(string_type_name_c))
 15224             if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
 15321             {
 15225             {
 15322         
 15226         
 15323                 {
 15227                 {
 15324                     identifier_c param_name("IN2");
 15228                     identifier_c param_name("IN2");
 15325                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 15229                     /* Get the value from a foo(<param_name> = <param_value>) style call */
 15329                     if (IN2_param_value == NULL)
 15233                     if (IN2_param_value == NULL)
 15330                       IN2_param_value = function_call_param_iterator.next();
 15234                       IN2_param_value = function_call_param_iterator.next();
 15331                     symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 15235                     symbol_c *IN2_type_symbol = search_expression_type->get_type(IN2_param_value);
 15332                     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 ;
 15236                     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 ;
 15333                     
 15237                     
 15334                     if (typeid(*last_type_symbol) == typeid(string_type_name_c))
 15238                     if(search_expression_type->is_same_type(&search_constant_type_c::string_type_name, last_type_symbol))
 15335                     {
 15239                     {
 15336                 
 15240                 
 15337                         symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
 15241                         symbol_c * return_type_symbol = &search_constant_type_c::int_type_name;
 15338                         s4o.print("__find(");
 15242                         s4o.print("__find(");
 15339                         IN1_param_value->accept(*this);
 15243                         IN1_param_value->accept(*this);