如何让Bison在输入文件中出现错误?
我尝试使用'错误'动作,但它似乎没有帮助。
即使遇到错误,解析器也会处理整个输入文件。
rules:
rules rule
| rules error { declaration_context = false; YYABORT; }
| rule
;
答案 0 :(得分:1)
语法中没有error
个动作的解析器将在发生第一个语法错误后退出yyparse
函数。只有在您有错误生成规则时,才能在语法错误后继续解析。如果那些没有成功恢复解析,那么将会出现更多错误,这会迟早发生终止。
参考:http://www.gnu.org/software/bison/manual/bison.html(2.1.5)