So lösen Sie die Bison-Warnung „… hat keinen deklarierten Typ“
Bison für diese Datei ausführen:
<code>%{ #include <iostream> int yylex(); void yyerror(const char*); %} %union { char name[100]; int val; } %token NUM ID %right '=' %left '+' '-' %left '*' %% exp : NUM {$$.val = $1.val;} | ID {$$.val = vars[$1.name];} | exp '+' exp {$$.val = $1.val + $3.val;} | ID '=' exp {$$.val = vars[$1.name] = $3.val;} ; %% </code>
Führt zu Warnungen vor der Art von:
Warnung: $ von 'exp' hat keinen deklarierten Typ.
Was bedeutet es und wie löse ich es?