Problème de récursion à droite [YACC] - Divers - Programmation
MarshPosté le 01-03-2003 à 16:43:44
Dans le cadre de la création d'un compilateur pour un langage quelconque, je dois utiliser lex et yacc, et donc définir la grammaire du langage, en voici un morceau :
| Id_statement ',' IDENTIFICATEUR { printf("reconnait plusieurs id" ); }
;
Comme décrit, une déclaration est définie par le mot clé DECLARE (le token étant défini plus haut) puis suivi d'un ou plusieurs identificateurs (identificateur = [A-Z]) séparés par une virgule. Cela implique donc de faire une récursion à droite en ce qui concerne la déclaration.
Le problème est que quoique je fasse, aucun DECLARE avec plus d'un identificateur à la suite n'est "compris". Alors où est le problème ?
Marsh Posté le 01-03-2003 à 16:43:44
Dans le cadre de la création d'un compilateur pour un langage quelconque, je dois utiliser lex et yacc, et donc définir la grammaire du langage, en voici un morceau :
Comme décrit, une déclaration est définie par le mot clé DECLARE (le token étant défini plus haut) puis suivi d'un ou plusieurs identificateurs (identificateur = [A-Z]) séparés par une virgule. Cela implique donc de faire une récursion à droite en ce qui concerne la déclaration.
Le problème est que quoique je fasse, aucun DECLARE avec plus d'un identificateur à la suite n'est "compris". Alors où est le problème ?
Merci d'avance
---------------
Wigga with Attitude.