4 #include "automatonparse_promela.h"
7 void yyerror(const char *s);
15 xbt_exp_label_t label;
34 %token <integer> LITT_ENT
35 %token <string> LITT_CHAINE
36 %token <real> LITT_REEL
48 automaton : NEVER LEFT_BRACE stateseq RIGHT_BRACE
52 | ID COLON { new_state($1, 1);} IF option FI SEMI_COLON stateseq
56 | CASE exp IMPLIES GOTO ID option { new_transition($5, $2);}
59 exp : LEFT_PAR exp RIGHT_PAR { $$ = $2; }
60 | exp OR exp { $$ = new_label(0, $1, $3); }
61 | exp AND exp { $$ = new_label(1, $1, $3); }
62 | NOT exp { $$ = new_label(2, $2); }
63 | CASE_TRUE { $$ = new_label(4); }
64 | ID { $$ = new_label(3, $1); }
71 void yyerror(const char *s){
72 fprintf (stderr, "%s\n", s);