stage4/generate_iec/generate_iec.cc
changeset 143 73372bdeeffb
parent 118 d4cf7ea933a4
child 144 0ee0055a8ffe
equal deleted inserted replaced
142:120772c527f3 143:73372bdeeffb
   118 
   118 
   119 
   119 
   120 
   120 
   121 
   121 
   122   public:
   122   public:
       
   123 
       
   124 /*  EN/ENO */
       
   125 void *visit(en_param_c *symbol) {
       
   126   s4o.print("EN");
       
   127   return NULL;
       
   128 }
       
   129 
       
   130 void *visit(eno_param_c *symbol) {
       
   131   s4o.print("ENO");
       
   132   return NULL;
       
   133 }
       
   134 
   123 /***************************/
   135 /***************************/
   124 /* 2.1.6 Pragmas */
   136 /* 2.1.6 Pragmas */
   125 /***************************/
   137 /***************************/
   126 void *visit(pragma_c *symbol) {return print_token(symbol);}
   138 void *visit(pragma_c *symbol) {return print_token(symbol);}
   127 
   139 
  1615 void *visit(RETCN_operator_c *symbol) {s4o.print("RETCN "); return NULL;}
  1627 void *visit(RETCN_operator_c *symbol) {s4o.print("RETCN "); return NULL;}
  1616 void *visit(JMP_operator_c *symbol) {s4o.print("JMP "); return NULL;}
  1628 void *visit(JMP_operator_c *symbol) {s4o.print("JMP "); return NULL;}
  1617 void *visit(JMPC_operator_c *symbol) {s4o.print("JMPC "); return NULL;}
  1629 void *visit(JMPC_operator_c *symbol) {s4o.print("JMPC "); return NULL;}
  1618 void *visit(JMPCN_operator_c *symbol) {s4o.print("JMPCN "); return NULL;}
  1630 void *visit(JMPCN_operator_c *symbol) {s4o.print("JMPCN "); return NULL;}
  1619 
  1631 
       
  1632 /*| any_identifier ASSIGN */
       
  1633 void *visit(il_assign_operator_c *symbol) {
       
  1634   symbol->variable_name->accept(*this);
       
  1635   s4o.print(" := ");
       
  1636   return NULL;
       
  1637 }
       
  1638 
  1620 /*| [NOT] any_identifier SENDTO */
  1639 /*| [NOT] any_identifier SENDTO */
  1621 void *visit(il_assign_out_operator_c *symbol) {
  1640 void *visit(il_assign_out_operator_c *symbol) {
  1622   if (symbol->option != NULL)
  1641   if (symbol->option != NULL)
  1623     symbol->option->accept(*this);
  1642     symbol->option->accept(*this);
  1624   symbol->variable_name->accept(*this);
  1643   symbol->variable_name->accept(*this);
  1674 }
  1693 }
  1675 
  1694 
  1676 /*****************************************/
  1695 /*****************************************/
  1677 /* B 3.2.2 Subprogram Control Statements */
  1696 /* B 3.2.2 Subprogram Control Statements */
  1678 /*****************************************/
  1697 /*****************************************/
       
  1698 
  1679 /*  RETURN */
  1699 /*  RETURN */
  1680 void *visit(return_statement_c *symbol) {
  1700 void *visit(return_statement_c *symbol) {
  1681   s4o.print("RETURN");
  1701   s4o.print("RETURN");
  1682   return NULL;
  1702   return NULL;
  1683 }
  1703 }