[英]How do i check the ambiguity in this grammar:-
E-> EE + / E(E)/ ID
检查给定的语法是否模棱两可。 另外,如果您能告诉我消除歧义的过程,那将对您有很大的帮助。
我尝试为其创建解析树,但无法弄清楚如何实际使用它来查找模棱两可的案例
Bison会为该语法生成一个LALR(1)解析器,而没有任何解析器冲突。 没有解析冲突的LALR(1)语法不能是模棱两可的,因此您似乎不太可能发现歧义。
作为参考,我使用的野牛输入为:
%%
E: E E '+'
| E '(' E ')'
| 'i'
如果使用-v
标志进行处理,则bison将生成一个报告文件,其中包含完整的状态机。 (有八个状态加上初始状态。)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.