je reçois l'avertissementBison construire avertissement: « option -s donnée, mais la règle par défaut peut être adaptée »
warning, -s option given but default rule can be matched
si vous « option donnée, mais la règle par défaut peut être adaptée » google, vous trouverez the Flex manual's chapter on Diagnostics et cette entrée dans un old Flex manpage dans la section Diagnostics:
avertissement, « option -s donnée, mais par défaut règle peut être adaptée » signifie qu'il est possible (peut-être seulement dans un état de démarrage particulier) que le défaut règle (correspondre à un seul caractère) est le seul qui correspond à une entrée particulière . Puisque
-s
a été donné, probablement ceci n'est pas prévu.
Mon fichier de construction n'a pas d'option -s
. J'ai écrit
bison -y -d calc1.y
flex calc1.l
gcc code...
Comment réparer cet avertissement?
Voici une petite version de mon fichier lex. Ce fichier déclenche également l'avertissement
%{
#include "y.tab.h"
%}
%option noyywrap nodefault yylineno
%%
[0-9]+ {
return INTEGER;
}
[-+()=/*{},;\n] { return *yytext; }
[ \t] /* skip whitespace */
[a-zA-Z0-9_]* { printf("lex Unknown character = '%s'", yytext); yyerror("lex Unknown character"); }
%%
Pouvez-vous inclure votre fichier d'entrée de flex dans la question? – UncleO