@@ -19,7 +19,7 @@ BLANC [ \n\t]
[0-9]+ yylval = atoi(yytext); return nombre; /* atoi = ascii to integer; yylval est la
valeur sémantique (par défaut un int)
associée au token */
-[-+()=] return yytext[0]; /* caracteres unites lexicales */
+[*-+()=] return yytext[0]; /* caracteres unites lexicales */
{BLANC}+ ;
. fprintf(stderr, "Caractere (%c) non reconnu\n", yytext[0]); /* tout le reste (les règles sont évaluées de haut en bas */
@@ -34,6 +34,7 @@ EXPR_CALC : EXPR '=' { printf("%d\n", $1); }
EXPR : FACTEUR
| EXPR '+' FACTEUR {$$ = $1 + $3;}
| EXPR '-' FACTEUR {$$ = $1 - $3;}
+ | EXPR '*' FACTEUR {$$ = $1 * $3;}
;
FACTEUR : nombre {$$ = $1;}