所以我写了我想要的所有语法,一切顺利。 当遇到语法时,我绝对不会采取行动。
这是我的yyerror函数的定义
int yyerror (const char *s)
{
printf("parser error %s \n ",s);
return 0;
}
好吧,如果我想获得有关我的解析器遇到的错误的更多信息,我已经阅读了我需要添加%error-verbose的地方;当我尝试添加它时,我收到此错误消息
错误:无法识别:%error_verbose
考虑到我使用Flex,Bison并将它们与VS2010连接起来
编辑:即使错误提到error_verbose,我也确保我传递的是错误详细信息,而不是使用短划线。
答案 0 :(得分:1)
它是%error-verbose
,带有短划线,但您的错误消息却显示为下划线。
答案 1 :(得分:0)
奇怪的是,当我在Linux上的最新野牛版本上尝试%error-verbose时,它运行得很好但不适用于Windows版本。
不确定这是我在Windows上使用的版本中的错误,还是不支持的功能。