yacc 返回相同的值

yacc same value returned

我有这样的语法:


S : value1 ':' value2 ';' {printf("%s %s",,);};


输入:你好:世界;
输出:你好你好
value1 和 value2 都是字符串。
问题是 $3 返回的值与 $1 相同,我找不到原因。

我找到了解决方案,我只是忘记更新 value2 中的 yylval。