私はYacc/Flexを使用してプログラムを作成しており、次のコードを使用しています(他のファイルのコードを混合しているため、まったく同じではありません)。
DataType datat;
%union {
int integer;
char *string;
DataType type;
}
Integer { yylval.type = INTEGER; return INT; }
%type <type> INT
data : INTNUM { yylval.type = INTEGER; }
次に、このようなものを書くと:
foo : data { bar(yylval.type); }
barはデータ型INTEGERを正しく取得しますが、これがある場合:
foo : data data { ??? }
1番目と2番目のメンバーのyylval.typeを個別に取得するにはどうすればよいですか?
どうもありがとう!