Como resolver o aviso de Bison "… não tem tipo declarado”
Correndo Bison neste arquivo:
<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>
Leva a avisos do tipo de:
aviso: $ de 'exp' não tem tipo declarado.
O que significa e como resolvo isso?