stage1_2/iec_flex.ll
changeset 737 f6bc5230aadd
parent 686 9b87606d4c07
child 756 634f476cb60f
equal deleted inserted replaced
736:a591ed23c370 737:f6bc5230aadd
   414 %s task_init_state
   414 %s task_init_state
   415 
   415 
   416 /* we are parsing a function, program or function block declaration */
   416 /* we are parsing a function, program or function block declaration */
   417 %s decl_state
   417 %s decl_state
   418 
   418 
   419 /* we will be parsing a function body. Whether il/st is remains unknown */
   419 /* we will be parsing a function body. Whether il/st/sfc remains to be determined */
   420 %x body_state
   420 %x body_state
   421 
   421 
   422 /* we are parsing il code -> flex must return the EOL tokens!       */
   422 /* we are parsing il code -> flex must return the EOL tokens!       */
   423 %s il_state
   423 %s il_state
   424 
   424 
   922 			       * END_OF_INPUT associated to the value 0, so even though
   922 			       * END_OF_INPUT associated to the value 0, so even though
   923 			       * we don't explicitly return the token END_OF_INPUT
   923 			       * we don't explicitly return the token END_OF_INPUT
   924 			       * calling yyterminate() is equivalent to doing that. 
   924 			       * calling yyterminate() is equivalent to doing that. 
   925 			       */ 	
   925 			       */ 	
   926 			    yyterminate();
   926 			    yyterminate();
   927 			  }      
   927 			  } else {
   928  else {
       
   929 			    --include_stack_ptr;
   928 			    --include_stack_ptr;
   930 			    yy_delete_buffer(YY_CURRENT_BUFFER);
   929 			    yy_delete_buffer(YY_CURRENT_BUFFER);
   931 			    yy_switch_to_buffer((include_stack[include_stack_ptr]).buffer_state);
   930 			    yy_switch_to_buffer((include_stack[include_stack_ptr]).buffer_state);
   932 			    current_tracking = include_stack[include_stack_ptr].env;
   931 			    current_tracking = include_stack[include_stack_ptr].env;
   933 			      /* removing constness of char *. This is safe actually,
   932 			      /* removing constness of char *. This is safe actually,
  1733   /* If so:
  1732   /* If so:
  1734    *   open the new file...
  1733    *   open the new file...
  1735    *   return 0;
  1734    *   return 0;
  1736    */
  1735    */
  1737 
  1736 
  1738   /* to we stop processing...
  1737   /* to stop processing...
  1739    *
       
  1740    *   return 1;
  1738    *   return 1;
  1741    */
  1739    */
  1742 
       
  1743 
  1740 
  1744   return 1;  /* Stop scanning at end of input file. */
  1741   return 1;  /* Stop scanning at end of input file. */
  1745 }
  1742 }
  1746 
  1743 
  1747 
  1744