table : row*
;
-row : C_INSTR { set_outfile( yytext); header( yytext);}
+row : C_INSTR { set_outfile( yytext); header( yytext);
+ set_segment(segment);
+ }
[ special | simple] { out( "}\n\n");}
| DEF_C_INSTR { init_defaults( yytext);}
simple { out( "}\n");}
;
-simple : ARROW { set_segment( segment); save_output();}
+simple : ARROW { save_output();}
actionlist { back_patch();}
;
;
-def_row : [ special | simple] { out( "}\n\n");}
+def_row : { set_segment(segment);}
+ [ special | simple] { out( "}\n\n");}
;
;
c_row : %if ( to_change && strcmp( yytext, to_change) == 0)
- C_INSTR { set_outfile( yytext); header( yytext);}
+ C_INSTR { set_outfile( yytext); header( yytext);
+ set_segment(segment);
+ }
[ special | simple] { out( "}\n\n"); to_change = 0; }
| C_INSTR