run_cmd : KW_RUN atline fgl_expr_c { set_cmdlineno($2); $$=new_run_cmd(chk_expr($3),EB_TRUE, ERM_NOT_SET, NULL); map_run($3); add_feature("RUN");} | KW_RUN atline fgl_expr_c run_mode { set_cmdlineno($2); map_run($3); $$=new_run_cmd(chk_expr($3),EB_TRUE, $4, NULL); add_feature("RUN");} | KW_RUN atline fgl_expr_c RETURNING ensured_variable_usage_expression { map_run($3); set_cmdlineno($2); $$=new_run_cmd(chk_expr($3),EB_TRUE, ERM_NOT_SET, $5); add_feature("RUN");} | KW_RUN atline fgl_expr_c WITHOUT_WAITING { map_run($3); set_cmdlineno($2); $$=new_run_cmd(chk_expr($3),EB_FALSE, ERM_NOT_SET, NULL); add_feature("RUN");} | KW_RUN atline fgl_expr_c run_mode RETURNING ensured_variable_usage_expression { set_cmdlineno($2); map_run($3); $$=new_run_cmd(chk_expr($3),EB_TRUE, $4, $6); add_feature("RUN");} | KW_RUN atline fgl_expr_c run_mode WITHOUT_WAITING { set_cmdlineno($2); map_run($3); $$=new_run_cmd(chk_expr($3),EB_FALSE, $4, NULL); add_feature("RUN"); } | KW_RUN atline fgl_expr_c WAIT { set_cmdlineno($2); map_run($3); $$=new_run_cmd(chk_expr($3),EB_FALSE,ERM_NOT_SET, NULL); add_feature("RUN"); } | KW_RUN atline fgl_expr_c EXIT { set_cmdlineno($2); map_run($3); $$=new_run_cmd(chk_expr($3),EB_FALSE,ERM_NOT_SET, NULL); add_feature("RUN"); } | KW_RUN atline fgl_expr_c WAITING KW_FOR fgl_expr_c op_by WITH run_saying fgl_expr_c { set_cmdlineno($2); map_run($3); $$=new_run_waiting_for_cmd(chk_expr($3), $6, $7, $9,$10); add_feature("RUN"); } | KW_RUN_CLIENT atline fgl_expr_c { set_cmdlineno($2); struct expr_str_list *plist; plist=A4GL_new_ptr_list($3); $$=A4GL_new_expr_fcall("aclfgl_client_execute",plist,A4GL_compiling_module_basename(),lastlineno,get_namespace("aclfgl_client_execute")); $$=new_call_cmd(chk_expr($$),NULL); } ; op_by: {$$=NULL;} | KW_BY fgl_expr_c {$$=$2;} ; run_saying: KWMESSAGE {$$=0;} | KW_ERROR {$$=1;} ; run_mode : IN_FORM_MODE { $$=ERM_FORM_MODE; } | IN_LINE_MODE { $$=ERM_LINE_MODE; } ;