3 //#include "../../../include/xbt/automatonparse_promela.h"
4 //#include "../../../include/xbt/automaton.h"
5 #include "automaton_parse.yy.c"
6 #include <xbt/automaton.h>
7 #include <xbt/automatonparse_promela.h>
9 void yyerror(const char *s);
17 xbt_exp_label_t label;
36 %token <integer> LITT_ENT
37 %token <string> LITT_CHAINE
38 %token <real> LITT_REEL
50 automaton : NEVER LEFT_BRACE stateseq RIGHT_BRACE
54 | ID COLON { new_state($1, 1);} IF option FI SEMI_COLON stateseq
58 | CASE exp IMPLIES GOTO ID option { new_transition($5, $2);}
61 exp : LEFT_PAR exp RIGHT_PAR { $$ = $2; }
62 | exp OR exp { $$ = new_label(0, $1, $3); }
63 | exp AND exp { $$ = new_label(1, $1, $3); }
64 | NOT exp { $$ = new_label(2, $2); }
65 | CASE_TRUE { $$ = new_label(4); }
66 | ID { $$ = new_label(3, $1); }
73 void yyerror(const char *s){
74 fprintf (stderr, "%s\n", s);